BCMS Documentation

website·Indexed 34 days ago

https://docs.thebcms.com

Documentation for BCMS, a flexible content management system. Includes guides on creating projects, managing templates, entries, widgets, and media. Covers integration with frameworks like Next.js, Gatsby.js, Nuxt.js, Astro, Svelte, and Vite, as well as using the @thebcms/client SDK, webhooks, custom functions, and deployment on Vercel, DigitalOcean, and Docker.

Tokens
15.9K
Snippets
74
Records
156
Agent score
50%

What's inside BCMS

  1. Overview of BCMS Properties

    Properties (also known as inputs) are the fundamental building blocks used to define content structure in BCMS. They are combined into Groups, Widgets, and Templates to create structured content types. Every property can be configured as either Single or Array (one or many values) and as Required or Optional.
  2. Overview of BCMS Functions

    Functions in BCMS are serverless Node.js code snippets that execute on-demand to perform custom logic, data processing, or integrations. They allow developers to extend their BCMS instance without managing infrastructure. Functions run in isolated environments with no file system access and are subject to memory, execution time, and rate limits.
  3. Manage project settings in BCMS

    The Settings menu allows you to perform administrative tasks including renaming your project, setting default languages, configuring permissions, inviting team members, managing API keys, setting up Webhooks and Dependencies, and managing environment variables.
  4. Understand and use Groups in BCMS

    Groups in BCMS are reusable building blocks composed of multiple properties. They act as mini-templates that can be defined once and reused across Templates, Widgets, and other Groups (nesting). Groups are ideal for repeating or nested content structures such as FAQs, social links, or testimonials. Groups can be configured as repeatable (arrays) to handle lists of structured data.
  5. Manage external dependencies for BCMS Functions

    Dependencies in BCMS are external npm packages (e.g., axios, lodash) that can be used within BCMS Functions. These are managed per instance via the dashboard. Only users with Admin permissions can create, edit, or delete dependencies.
  6. Manage BCMS instances using Model Context Protocol (MCP)

    BCMS MCP allows AI assistants (such as Cursor, Claude, and VS Code) to connect to a BCMS instance to manage both the content model and the actual content. Unlike standard CMS integrations that only fill fields, BCMS MCP enables the AI to design the CMS structure—including creating templates, groups, and widgets—and populate them with formatted, internally linked, and multilingual content. All actions are scoped to a user-controlled key.

    Key capabilities include:

    • Querying and exploring the content structure.
    • Creating new content entries with AI-generated content.
    • Updating existing entries.
    • Managing the media library.
    • Receiving intelligent suggestions based on the specific content model.
  7. Implement advanced content modeling in BCMS

    For scalable and maintainable content, BCMS provides advanced modeling features:

    • Groups: Create reusable field structures for use in templates' meta and widgets.
    • Validation Rules: Define fields as required or as arrays.
    • Entry References: Use entry pointers to link entries (e.g., linking a blog post to an author).
  8. Create and manage BCMS API keys

    API keys connect your application to your content and define access levels (read-only or mutation) for specific templates. You can create multiple keys for different environments (e.g., public website, internal dashboard, or upload tools).

    To create a new key:

    1. Navigate to Settings → API Keys.
    2. Click Add New Key.
    3. Provide a required name and an optional description.
    4. Configure permissions for each template, specifying if the key can read or write/update resources.
  9. Create a new project in the BCMS dashboard

    To start using BCMS, you must create a project, which serves as your workspace for templates, entries, users, media, and settings.

    1. Sign in at app.thebcms.com using a GitHub or Google account.
    2. Click the 'New Project' button.
    3. Enter a project name (e.g., 'My Marketing Site').
    4. Click 'Create Project'.