StudioCMS is an SSR Headless CMS built for the Astro Ecosystem.
To see how to get started with StudioCMS, check out the StudioCMS Docs.
Packages in this repository
Astro Integrations
| Package | Test Coverage |
|---|---|
| studiocms | |
| @studiocms/devapps |
StudioCMS Plugins
| Package | Category | Test Coverage |
|---|---|---|
| @studiocms/auth0 | Authentication | |
| @studiocms/discord | Authentication | |
| @studiocms/github | Authentication | |
| @studiocms/google | Authentication | |
| @studiocms/html | Renderer | |
| @studiocms/markdoc | Renderer | |
| @studiocms/md | Renderer | |
| @studiocms/mdx | Renderer | |
| @studiocms/wysiwyg | Renderer | |
| @studiocms/cloudinary-image-service | Image Service | |
| @studiocms/blog | Front-End |
Tools and Utilities
Getting Started with our Development Playground
The StudioCMS Playground is intended for usage when developing StudioCMS within the monorepo and should not be used to directly test or host StudioCMS. If your goal is to test our CMS, please use our latest release from npm.
Steps to get a running playground should be the following:
- Clone the GitHub repository
- Run
pnpm i --frozen-lockfile - Change
dbStartPagein the Node playground's StudioCMS config totrue.- If working with a non-libsql DB ensure the
db.dialectoption in the StudioCMS config matches your desired DB type!
- If working with a non-libsql DB ensure the
- Ensure
.envvariables are configured (see.env.demofor an example of available environment variables). - Run the following in this order:
pnpm build:studiocms- Build the StudioCMS packages (required to get the current table schema for the StudioCMS integration).pnpm playground:migrate --latest- Update your Database schema to align with the latest migration version.pnpm dev- Starts the Dev server connected to the linked database (as well as builds all repo packages).
Once that process completes successfully you are ready to navigate to http://localhost:4321/start and follow the instructions to get your database initialized.
Once complete, you will be redirected and asked to shut down and change the config option dbStartPage to false. This enables full functionality of the CMS. You can now restart the dev server with pnpm dev to continue working with our development playground.
That will give you the dev environment we work with daily.
To start the playground again, use the command pnpm dev.
Our ToolSet
For an up-to-date list of our main tools check out our .prototools file
For more information about Proto, check out Proto's website.
Contributing
We welcome contributions from the community! Whether it's bug reports, feature requests, or code contributions, we appreciate your help in making this project better.
Bug Reports and Feature Requests
If you encounter any bugs or have ideas for new features, please open an issue on our GitHub repository. When creating a new issue, please provide as much detail as possible, including steps to reproduce the issue (for bugs) and a clear description of the proposed feature.
Code Contributions
We welcome contributions from the community! Whether it's bug reports, feature requests, or code contributions, we appreciate your help in making this project better. To get started read our Contributing Guide
Please note that by contributing to this project, you agree to our Code of Conduct.
Chat with Us
We have an active community of developers on the StudioCMS Discord Server. Feel free to join and connect with other contributors, ask questions, or discuss ideas related to this project or other StudioCMS projects.
