Skip to content

ornate-source/controllerSets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Express Controller Sets

A unified toolkit for Express.js that provides pre-built CRUD logic, robust S3 file upload handling, and dynamic routing helpers.

Node Version Mongoose Version Express Version License

Full Documentation & Live Demo

Designed to help you build APIs faster by automating repetitive controller logic and middleware configuration while maintaining type safety and flexibility.


🚀 Installation

Install the package using your favorite package manager:

npm install express-controller-sets mongoose express multer multer-s3 dotenv @aws-sdk/client-s3

⚡ Quick Start

Build a full-featured API for your model in just a few lines of code.

import express from 'express';
import { createRouter } from 'express-controller-sets';
import Product from './models/Product.js';

const app = express();
app.use(express.json());

// Create all CRUD routes automatically
const productRouter = createRouter({
    model: Product,
    orderBy: '-createdAt', // Sort by newest
    search: ['name', 'category.name'], // Enable ?search= or ?s= for multi-field search, including relational fields
    query: ['category']    // Enable ?category= filtering
});

app.use('/api/products', productRouter);

Tip

View the Full Documentation & Live Demo for a complete list of endpoints, filtering options, and S3 configuration.

Released under the MIT License. © 2024 Sabbir Mahmud

About

The npm package controllersets accelerates backend development by providing ready-made APIs for common operations: get all, get by ID, create, update, and delete. Boost your API creation process effortlessly.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors