{"id":15104841,"url":"https://github.com/abidmaqbool20/nestjs-sql-backend","last_synced_at":"2026-02-14T03:34:41.533Z","repository":{"id":256206200,"uuid":"851701467","full_name":"abidmaqbool20/nestjs-sql-backend","owner":"abidmaqbool20","description":"Nest JS Jump Start - API Development - Backend Development - Postgres or MySQL","archived":false,"fork":false,"pushed_at":"2025-03-03T15:55:11.000Z","size":734,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-11T14:05:04.880Z","etag":null,"topics":["api-development","migrations","mysql","nestsjs","postgres","starter-kit","typeorm","typescript","web-application"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/abidmaqbool20.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-09-03T15:09:24.000Z","updated_at":"2025-03-03T15:55:15.000Z","dependencies_parsed_at":"2024-09-16T11:53:01.712Z","dependency_job_id":"5ffd7134-cf40-4d81-a710-72c1218a8e6f","html_url":"https://github.com/abidmaqbool20/nestjs-sql-backend","commit_stats":{"total_commits":15,"total_committers":2,"mean_commits":7.5,"dds":0.06666666666666665,"last_synced_commit":"acf59173b5f0ebe22cf38131f1ffc0e426d7b63d"},"previous_names":["abidmaqbool20/nestjs-sql-backend"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/abidmaqbool20/nestjs-sql-backend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abidmaqbool20%2Fnestjs-sql-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abidmaqbool20%2Fnestjs-sql-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abidmaqbool20%2Fnestjs-sql-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abidmaqbool20%2Fnestjs-sql-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/abidmaqbool20","download_url":"https://codeload.github.com/abidmaqbool20/nestjs-sql-backend/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abidmaqbool20%2Fnestjs-sql-backend/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264390708,"owners_count":23600562,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-development","migrations","mysql","nestsjs","postgres","starter-kit","typeorm","typescript","web-application"],"created_at":"2024-09-25T20:02:56.545Z","updated_at":"2026-02-14T03:34:41.511Z","avatar_url":"https://github.com/abidmaqbool20.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"http://nestjs.com/\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://nestjs.com/img/logo-small.svg\" width=\"200\" alt=\"Nest Logo\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  A progressive \u003ca href=\"http://nodejs.org\" target=\"_blank\"\u003eNode.js\u003c/a\u003e framework for building efficient, scalable, and maintainable server-side applications.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n## Description\n\nThis repository provides a **production-ready NestJS backend boilerplate** intended for real-world, scalable applications.\n\nThe architecture emphasizes:\n- clear separation of concerns,\n- strong configuration management,\n- safe database migrations,\n- background job processing,\n- CLI tooling,\n- caching,\n- notifications,\n- and environment-based execution.\n\nThe application supports **PostgreSQL and MySQL**, with the active database selected at runtime via environment variables.\n\n---\n\n## Features\n\n- JWT Authentication (Passport-JWT)\n- Global Exception Handling\n- Centralized Logging Layer\n- Helper Utilities Module\n- API Rate Limiting\n- Request Validation (`class-validator`)\n- Encryption and Decryption Utilities\n- PostgreSQL \u0026 MySQL support (runtime switchable)\n- TypeORM with Migration-first workflow\n- Roles \u0026 Permissions (RBAC)\n- Users, Roles, Permissions modules with migrations\n- Database Seeder implementation\n- CRUD operations on User module\n- Redis Cache\n- Node Cache\n- API Documentation (Swagger)\n- Standardized API Response Layer\n- Email sending (Handlebars templates)\n- Email \u0026 Web Push Notifications\n- Bull Queue Management\n- Background Jobs\n- Auto-discovered CLI Commands\n- Postman API Collection\n\n---\n\n## Installation\n\nInstall project dependencies:\n\n```bash\nnpm install\n\n```  \n\n## Environment Setup (Required)\n\nBefore running the application, you must create an environment file.\nCreate .env.development\n\n```bash\ncp .env.example .env.development\n```\n\n## Generating VAPID Keys (Web Push Notifications)\n\nWeb Push Notifications require VAPID public/private keys.\n\nGenerate them using:\n\n```bash\nnpx web-push generate-vapid-keys\n```\n\nExample output:\n\nPublic Key:  BExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\nPrivate Key: 6Vxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n\n\nAdd these values to your .env.development file:\n\nVAPID_PUBLIC_KEY=your_public_key_here\nVAPID_PRIVATE_KEY=your_private_key_here\n\n\n## Running the Application\nDevelopment mode\n\n```bash\nnpm run start\n```\nWatch mode (recommended during development)\n```bash\nnpm run start:dev\n```\nProduction mode\n```bash\nnpm run start:prod\n```\n\n## Database Setup\nRun Migrations (Required)\n\nThis step creates all database tables.\n```bash\nnpm run migration:run\n```\nSeed Initial Data: Seed default data such as roles and permissions:\n```bash\nnpm run seed\n```\n⚠️ Important:\nMigrations must be executed before seeding.\n\n## CLI Commands\n\nThe project includes a dynamic CLI system.\nAll commands are auto-discovered from the src/cli/commands directory.\n\nList available commands\n```bash\nnpm run cli -- --help\n```\nList Bull queues\n```bash\nnpm run cli list-queues\n```\nEmpty a queue\n\n```bash\nnpm run cli empty-queue default all\n```\n\n## API Documentation\n\nSwagger documentation is available at:\n```bash\nhttp://localhost:5001/api\n```\n\n## Author\nAbid Maqbool\n- Email - [abidmaqbool20@gmail.com](abidmaqbool20@gmail.com)\n- Website - [https://abidmaqbool.com](https://abidmaqbool.com)\n \n\n## License\nThis project is licensed under the MIT License.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabidmaqbool20%2Fnestjs-sql-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabidmaqbool20%2Fnestjs-sql-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabidmaqbool20%2Fnestjs-sql-backend/lists"}