Getting Started
ExRest is a lightweight JavaScript package that simplifies the process of generating RESTful APIs using Express. With ExRest, you can quickly create API endpoints and their corresponding controllers based on a simple configuration or schema, reducing boilerplate code and speeding up API development.
Features
- Simple Configuration: Define your API endpoints and their handlers using a straightforward schema format.
- Automatic Route Generation: ExRest dynamically generates Express routes based on your configuration, eliminating the need for manual route setup.
- Efficient Controller Handling: Easily create controller functions to handle incoming requests for each endpoint, keeping your code organized and maintainable.
- Customizable: ExRest provides flexibility for customizing route behaviors, input validation, error handling, and more.
- Framework Agnostic: While designed to work seamlessly with Express, ExRest can potentially be adapted for use with other Node.js web frameworks.
Installation
To install ExRest, simply run:
npm install exrest
Usage
Here's a basic example of how to use ExRest to create a simple API:
const express = require('express');
const generateAPI = require('exrest');
// Define your API schema
const schema = {
endpoints: [
{
method: 'GET',
path: '/api/users',
controller: (req, res) => {
// Controller logic to handle GET /api/users
res.json({ message: 'Get all users' });
}
},
// Add more endpoints here
]
};
// Generate Express app with API routes
const app = generateAPI(schema);
// Start the server
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
Contributing
Contributions are welcome! If you encounter any bugs, have feature requests, or want to contribute code improvements, please open an issue or submit a pull request on the GitHub repository).
License
ExRest is licensed under the MIT License.
Table of Contents