{"id":15061685,"url":"https://github.com/sm-haris/fastify-prisma-rest","last_synced_at":"2026-01-02T20:17:20.649Z","repository":{"id":255325486,"uuid":"848251555","full_name":"SM-Haris/fastify-prisma-rest","owner":"SM-Haris","description":"This repository provides a robust and well-structured Fastify Prisma REST backend app starter template. It includes user authentication, database integration, authentication middlewares, JWT token-based authentication, file-based logging, Bcrypt hashing, and Swagger documentation.","archived":false,"fork":false,"pushed_at":"2024-09-08T10:45:11.000Z","size":282,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-15T22:43:19.609Z","etag":null,"topics":["authentication","authorization","backend","database","fastify","jwt","logging","nodejs","prisma","rest-api","starter-template","swagger"],"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/SM-Haris.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}},"created_at":"2024-08-27T12:22:55.000Z","updated_at":"2024-10-24T13:48:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"e2aaa9ea-23e3-4419-aded-ec7f10eeb3aa","html_url":"https://github.com/SM-Haris/fastify-prisma-rest","commit_stats":null,"previous_names":["sm-haris/fastify-prisma-rest"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SM-Haris%2Ffastify-prisma-rest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SM-Haris%2Ffastify-prisma-rest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SM-Haris%2Ffastify-prisma-rest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SM-Haris%2Ffastify-prisma-rest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SM-Haris","download_url":"https://codeload.github.com/SM-Haris/fastify-prisma-rest/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243801610,"owners_count":20350106,"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":["authentication","authorization","backend","database","fastify","jwt","logging","nodejs","prisma","rest-api","starter-template","swagger"],"created_at":"2024-09-24T23:23:41.217Z","updated_at":"2026-01-02T20:17:20.602Z","avatar_url":"https://github.com/SM-Haris.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Fastify Prisma REST Backend App Starter Template\n\n## Introduction\nThis repository provides a robust and well-structured Fastify Prisma REST backend app starter template. It offers a solid foundation for building scalable and efficient Node.js applications with the following key features:\n\n### Features\n* **User Signup, Login, and Authentication:** Implements secure user registration, login, and authentication mechanisms using JWT tokens.\n* **Prisma Database Integration:** Leverages Prisma for seamless database interactions, providing a type-safe ORM for efficient data management.\n* **Complete Backend Architecture:** Adheres to best practices for backend development, including clean code organization, modularity, and separation of concerns.\n* **Authentication Middlewares:** Enforces authentication and authorization rules throughout the application using custom middleware functions.\n* **JWT Token-Based Authentication:** Employs JWT tokens for secure session management and user verification.\n* **File-Based Logging with Rotation:** Implements file-based logging with daily rotation for easy monitoring and analysis.\n* **Bcrypt Hashing:** Uses Bcrypt for secure password hashing, protecting user credentials.\n* **Swagger and Swagger UI:** Provides comprehensive API documentation using Swagger, accessible through Swagger UI.\n\n## Getting Started\n\n### Prerequisites\n* **Node.js:** Version 18 or later\n* **npm:** Version 8 or later\n* **Git:** For cloning the repository\n* **A supported database:** Ensure you have a compatible database system installed and configured (e.g., PostgreSQL, MySQL, SQLite)\n\n### Clone the Repository:\n\n```bash\ngit clone https://github.com/SM-Haris/fastify-prisma-rest.git\n```\nUse code with caution.\n\n### Install Dependencies:\n```Bash\ncd fastify-prisma-rest\nnpm install\n```\n\nUse code with caution.\n\nSet Up Environment Variables: Create a .env file and populate it with the necessary environment variables, such as database connection details, JWT secret, and other application-specific settings. \n**An example .env file is provided in the repository.**\n\n### Run the Application:\n```Bash\nnpm start\n```\nUse code with caution.\n\n### Run the Application in Development mode:\n```Bash\nnpm run dev\n```\nUse code with caution.\n\n\n### Usage\nThe application's API endpoints can be accessed using your preferred HTTP client or API testing tool. Refer to the Swagger UI documentation for detailed information on available endpoints and their usage.\n\n## Contributing\nWe encourage your contributions to improve this project. Please follow the standard Git workflow for pull requests.\n\n## Disclaimer\nUse this template as a starting point for your own projects. While we strive to provide a robust foundation, security considerations and additional functionalities might be necessary for your specific application requirements.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsm-haris%2Ffastify-prisma-rest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsm-haris%2Ffastify-prisma-rest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsm-haris%2Ffastify-prisma-rest/lists"}