Stencil is an opinionated backend framework based on NestJS with a lot of required tooling setup right out of the box or possible to setup with just one CLI command so that you can dive directly into writing business logic.
- Prisma ORM
- Don't deal with the hassle of setting up a prisma instance, start writing schemas directly.
- User-Service
- User Management is just as simple as calling a decorator over your API Controller.
- Monitoring
- Get Prometheus and Grafana dashboards setup right out of the box with beautifully a programatically generated dashboard monitoring your API response times.
- Temporal
- Focus on implementing the activity and workflow we have got the setup covered.
- [Response formatting]
- Enfore response format standards throughout the app with a single interceptor
- [File Uploads]
- Require handling file uploads and downloads via your service? Get a service setup right out of the box.
If you have request for a specific tool to be setup automatically, please open a issue ticket and we'll try to get it added at the earliest.
- Install the stencil-cli
npm i -g @samagra-x/stencil-cli
- To scaffold a new project run this:
stencil new <PROJECT_NAME>
During the setup the CLI help you setup all the toolings you want by letting you pick and choose between what you want to have in your service.
A demo video depicting how to use stencil-cli can be found here
- Clone the repository locally
git clone https://github.com/SamagraX-Stencil/stencil
- Install root level dependencies
yarn
- Navigate to the required directory where you want to hack around and refer directory level READMEs to understand more about the code stored there.