Basic Blog

Headless blog CMS as a Convex component with bundled TipTap admin UI, Next.js helpers, RSS/sitemap generation, and file uploads.

Installation

npm install basic-blog-convex-blog-cms

About Basic Blog

Basic Blog provides a complete headless CMS solution as a Convex component, including schema for posts, blocks, and site settings with file upload support. It bundles a TipTap-based admin interface accessible via `blog-admin-serve`, plus Next.js helpers for RSS feeds, sitemaps, and JSON-LD structured data. The component handles both content management through mutations/queries and provides ready-to-use SEO tooling for public-facing blog implementations.

Benefits

Use cases

how to add blog CMS to Convex app

Install basic-blog-convex-blog-cms and register it as a Convex component. The package provides posts, blocks, and site settings schemas along with queries and mutations. You get a complete headless CMS with admin UI accessible via npx blog-admin-serve.

Convex blog with admin interface

Basic Blog includes a bundled TipTap admin UI that runs locally or deploys to Railway. After installing the component and setting up makeBlogAdminAPI, run npx blog-admin-serve to access the admin at localhost:3847/admin with full content editing capabilities.

Next.js blog with Convex backend

The component includes Next.js helpers for RSS feeds, sitemaps, and JSON-LD generation. You can build custom frontend components using the provided DTOs and public queries while the Convex component handles all backend operations and content management.

Frequently asked questions

What does the Basic Blog component include out of the box?

Basic Blog provides Convex schemas for posts, blocks, and site settings, along with queries and mutations for content management. It includes a bundled TipTap admin UI, file upload handling, and helpers for RSS feeds, sitemaps, and JSON-LD generation in Next.js applications.

How do I run the admin interface for Basic Blog?

After installing and configuring the component with makeBlogAdminAPI, run 'CONVEX_URL=https://your-deployment.convex.cloud npx blog-admin-serve' and open http://127.0.0.1:3847/admin. The admin uses the blog.generateUploadUrl endpoint for file uploads and stores images in Convex storage.

Does Basic Blog include frontend components?

No, Basic Blog is a headless CMS component that provides backend functionality and admin UI only. You build your own frontend using the provided DTOs and public queries, or copy reference implementations from the examples/blog-ui and examples/next-app directories in the repository.

Can I deploy the Basic Blog admin interface separately?

Yes, the admin UI can be deployed independently using the included Dockerfile.admin or Railway templates. The admin connects to your Convex deployment via CONVEX_URL environment variable and optionally uses BLOG_ADMIN_API_KEY for authentication.

Links