Build full-stack apps
with one framework.
Crescent.js unifies frontend rendering, backend logic, database operations, and authentication into a single JavaScript framework. Build faster, ship with confidence.
const crescent = require('crescent-js');
// Create a page
const page = crescent.page({
page_id: 'home',
page_title: 'My App'
});
// Create an object with a text layer
const hero = crescent.object({
object_id: 'hero',
size: { height: 200, width: 600 }
});
hero.add_layer(
crescent.layer({
layer_type: 'text',
layer_id: 'heading',
text: 'Hello, World!',
size: 32,
colour: '0,0,0',
bold: true
})
);
page.add_object(hero);
page.render();Everything you need to ship faster.
No more juggling between libraries. Crescent handles frontend, backend, database, and auth out of the box.
Declarative UI
Build interfaces with pages, objects, and layers using a cartesian coordinate system. No CSS required.
Backend Logic
Write server-side functions, conditionals, loops, and create REST APIs all from one place.
Built-in Database
Zero-config CRUD database with collections, querying, sorting, and pagination out of the box.
Authentication
Complete auth system with signup, login, OAuth providers, session management, and account security.
Responsive by Default
Ratio-based scaling ensures your application works across mobile, tablet, and desktop seamlessly.
Zero Config
One framework, no setup. Install and start building immediately with sensible defaults.