Skip to content

An experimental CMS toolkit taking advantage of React Server Components

Notifications You must be signed in to change notification settings

rogermparent/content-engine

Repository files navigation

Content Engine Workspace

This monorepo hosts a group of packages that establish and re-use patterns to create content-driven websites with custom graphical editors.

The projects in packages are libraries that could be published as reusable packages, and the ones in websites are examples of concrete implementations using those packages.

Generally, a website made with these packages will span two projects: an editor and a website. The editor is a dynamic app that has serves as a custom-built CMS, and that CMS calls the website project to build a deployable static website with that content. Having this editor/website pattern combines the accessibility of a dynamic graphical CMS with the effortless hosting of a static website.

Reusable packages in this repo aim to be composable, allowing any implementation full control over the process of creating content. For example, a website can check in with any authentication service that's compatible with NextJS before calling the functions from content-engine to persist content to LMDB and the filesystem.

One standout in this monorepo is next-static-image, which enables build-time optimization of dynamic images in a NextJS static export project with minimal API changes. This package may graduate into its own repo eventually, but the websites in this repo serve as its best test target currently.

The Recipe Website project is the most complete implementation of a real-world project using the code in this monorepo, but more are planned in the future.

About

An experimental CMS toolkit taking advantage of React Server Components

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published