Inspired by ActiveRecord and Eloquent, Esix is a great way to work with your database in TypeScript. š„§
Esix uses a Convention over Configuration approach where you define your models as normal TypeScript classes and minimal boilerplate.
yarn add esix mongodb
Define a model.
import { BaseModel } from 'esix';
class Post extends BaseModel {
public title = '';
public text = '';
}
Then you can query the database for your models.
async function postsHandler(request: Request, response: Response): Promise<void> {
const posts = await Post.all();
response.json({ posts });
}
async function postHandler(request: Request, response: Response): Promise<void> {
const post = await Post.find(request.params.id);
response.json({ post });
}
You can read more about how to use Esix at the docuementation site https://esix.netlify.app/.