Node.js ORM — v1.0

One class.
SQLite ready.

Classo is a multi-database ORM that lets you define your data model, validation, and relations in a single class — then use it across SQLite, PostgreSQL, MySQL, and MongoDB without rewriting anything.

Get Started →Read the docs
$npm install classo
dataclass.js

Works with

SQLitePostgreSQLMySQLMongoDB

Everything in one place

No more juggling validation libraries, ORM configs, and migration tools.

One Class, Every Database

Define your model once. Classo works with SQLite, PostgreSQL, MySQL, and MongoDB without changing a line.

Built-in Validation

Fields carry their own validators. Required, min length, unique checks — validation lives where your data is defined.

Smart Migration

Add fields, drop columns, change constraints. Classo diffs your DataClass against the database and handles the rest.

Relations Done Right

hasMany, hasOne, belongsTo, manyToMany. Define once, query with preload, and get nested data back automatically.

Query Builder

Chain filters, sorting, pagination, and preloads. No raw SQL needed for the common case — but it's there when you need it.

Before & After Hooks

Transform data before saving. Hash passwords, normalize strings, run async operations — all baked into the field definition.