Content As Code

A CMS library where content is type-safe code

Check out our visual editing by clicking the button below

Docs

Code Management System

Through working with a myriads of different CMS over the years we crafted the simplest possible fully type-safe CMS.

Your code, your content, your data.

We do not require any signup to get started.

npm install @valbuild/next

When you are ready, sign up and let editors edit your code directly.

Move fast with what you already know. Focus on creating value, not fighting your CMS.

These types don't lie

Content in Val is type-safe. That means less errors and less time wasted on finding them.

Our core principle: everything that can be type-checked is type-checked, if not we cannot type-check we lint or validate on runtime.

Types in Val do not require any code-gen reducing the amount of headaches, and build steps, to a minimum.

Stupid simple

Keep it simple and stay sane. No query language, thin abstraction.

Stop wondering how data from your CMS looks like. You get exactly what you see in your code.

99.999... Uptime

What do you show on your page if you can't load your content. Your content is your code, as long as you can serve your code, it works.

Like... instant fast

When your content is part of your app, a complete category of problems cease to exist. Is my CMS up? Why is it slow? When do I fetch? What do I cache? Oh, and there's that SEO thing also.

When content is code, you do not need to consider any of these

Use YOUR tools!

We do not know what the best tool for modifying data is for you. By storing content in code, you can chose what your want to do. And if you want an easy editor experience we got you covered HAHAHA.

Git good

Content in code means that all changes ends up as commits. You can branch, work locally, merge or revert just as you are used to.

Integrated visual editing experience

Editors can edit directly inside your app.

Content from Val is automatically tagged as content. That means you won't forget to add this, and it means that your app remains editable even after a heavy refactor.

Library or Service? Both!

Content is stored in code, which means you can use it as a library: no external runtime dependencies to bother about.

When your app and your content grows too large to be comfortably represented in code, our upcoming remote content allows you to easily move data up and down from the cloud.