Codapult
料金プラグインドキュメント
Codapult

開発者のためのSaaSボイラープレート

プロダクト

  • 料金
  • プラグイン
  • ドキュメント

会社情報

  • お問い合わせ
  • GitHub

法的情報

  • プライバシーポリシー
  • 利用規約

© 2026 Codapult. All rights reserved.

全記事

Getting Started

  • Introduction
  • Quick Start
  • Project Structure

Configuration

  • Environment Variables
  • App Configuration

Authentication

  • Authentication
  • OAuth Providers
  • Two-Factor & Passwordless
  • Enterprise SSO (SAML)

Database

  • Database
  • Migrations

Teams

  • Teams & Organizations
  • Permissions & RBAC

Payments

  • Payments & Billing
  • Stripe Setup
  • LemonSqueezy Setup
  • Polar Setup
  • Payment Webhooks

Api

  • API Layer
  • tRPC
  • GraphQL

Ai

  • AI Features

Email

  • Email
  • Email Templates

Infrastructure

  • Infrastructure
  • File Storage
  • Background Jobs

Ui

  • UI & Theming

I18n

  • Internationalization

Content Management

  • Content Management

Admin

  • Admin Panel

Security

  • Security

Monitoring

  • Analytics & Monitoring

Modules

  • Module Architecture

Plugins

  • Plugin System
  • AI Kit Plugin
  • CRM Plugin
  • Helpdesk Plugin
  • Email Marketing Plugin

Deployment

  • Deployment
  • Troubleshooting

Upgrading

  • Upgrading Codapult

Developer Tools

  • MCP Server
  • Testing
Content Management

Content Management

Manage your blog and help center documentation with MDX, full-text search, and i18n support.

Codapult includes two content systems — a blog and a help center — both powered by MDX files on disk. No CMS or database required; just write Markdown with optional JSX components.

After purchase, replace all content/blog/ and content/docs/ files with your own product's content.


MDX Blog

File Location

Blog posts live in content/blog/ as .mdx files.

Frontmatter

Every post starts with YAML frontmatter:

---
title: Launching Our API v2
description: A faster, more reliable API with breaking change migration guide.
date: 2026-03-15
author: Jane Doe
tags: [api, release]
image: /images/blog/api-v2.png
published: true
---

Your markdown content here...
FieldRequiredDescription
titleYesPost title
descriptionYesShort summary for SEO and listing cards
dateYesPublication date (YYYY-MM-DD)
authorYesAuthor name
tagsNoArray of tags for filtering
imageNoCover image path
publishedNoSet to false to hide from listings

Internationalization

Blog posts support per-locale translations using a filename convention:

FileLocale
my-post.mdxDefault (English)
my-post.ru.mdxRussian
my-post.de.mdxGerman
my-post.fr.mdxFrench
my-post.ja.mdxJapanese

If a translation is unavailable for the current locale, the default-locale version is shown.

Utilities

The src/lib/blog/ module provides server-side functions:

FunctionDescription
getAllPosts(locale?)List all published posts (newest first)
getPostBySlug(slug, locale?)Get a single post with full MDX content
getAllTags(locale?)Get all unique tags
getPostsByTag(tag, locale?)Filter posts by tag
getPostsByAuthor(author, locale?)Filter posts by author
getAllAuthors(locale?)List all authors with post counts
getAllSlugs()Get all post slugs (for static generation)

Components

ComponentDescription
BlogSearchClient-side search across post titles and descriptions
TagCloudTag list with post counts, links to filtered views
LocaleSwitchLanguage switcher for translated posts
MdxContentRenders MDX content with custom component mappings

RSS Feed

An RSS feed is automatically generated at /rss.xml from published blog posts.


Help Center / Documentation

File Location

Documentation articles live in content/docs/<category>/<slug>.mdx, organized into category folders.

Frontmatter

---
title: Getting Started
description: Install and configure the app in under 5 minutes.
category: getting-started
order: 1
published: true
---

Your documentation content here...
FieldRequiredDescription
titleYesArticle title
descriptionYesShort summary for SEO and navigation
categoryYesFolder name (e.g. getting-started, billing)
orderYesSort position within the category
publishedNoSet to false to hide from navigation

Auto-Generated Navigation

The help center builds its sidebar navigation automatically from the file structure:

  • Categories are derived from folder names
  • Articles are sorted by order within each category
  • Category order is determined by the lowest order value among its articles

No configuration file is needed — add a folder and an MDX file, and it appears in the sidebar.

Full-Text Search

The searchDocs(query) function searches across article titles, descriptions, and content:

import { searchDocs } from '@/lib/docs';

const results = searchDocs('authentication');
// [{ title, description, category, slug, order, published }, ...]

The HelpDocSearch component provides a ready-made search UI with instant results.

Utilities

FunctionDescription
getDocCategories()List all categories with their articles
getDocArticle(category, slug)Get a single article with MDX content
getAllDocSlugs()Get all { category, slug } pairs (for static generation)
searchDocs(query)Full-text search across all articles

Adding Content

New Blog Post

Create a file in content/blog/:

touch content/blog/my-new-post.mdx

Add frontmatter and content. The post appears on the blog page after a dev server reload (or production rebuild).

New Documentation Article

Create a file in content/docs/<category>/:

mkdir -p content/docs/integrations
touch content/docs/integrations/webhooks.mdx

Add frontmatter with the category matching the folder name and an order value. The article appears in the help center sidebar automatically.

New Documentation Category

Simply create a new folder under content/docs/ and add at least one .mdx file. The category name in the sidebar is derived from the folder name (e.g. getting-started → "Getting Started").


MDX Components

Both blog and docs content is rendered with MdxContent, which provides standard Markdown elements plus GFM (tables, strikethrough, task lists) via remark-gfm. You can use:

  • Headings (# H1 through #### H4) — auto-generate anchor links for the table of contents
  • Code blocks with syntax highlighting — use triple backticks with a language tag
  • Tables — standard GitHub-flavored Markdown tables
  • Images — reference files from public/images/ (e.g. ![alt](/images/screenshot.png))
  • Links — internal links use relative paths (e.g. [Auth docs](/docs/authentication/overview))

To add custom JSX components to MDX, extend the components prop in the MdxContent usage within src/app/(marketing)/docs/[category]/[slug]/page.tsx or the blog page.

InternationalizationAdmin Panel