{"id":25696460,"url":"https://github.com/sajid788/digitalpaani-backend","last_synced_at":"2026-04-06T01:35:07.891Z","repository":{"id":236484254,"uuid":"792134128","full_name":"Sajid788/DigitalPaani-Backend","owner":"Sajid788","description":"The Book Management System backend provides CRUD operations, user authentication, and supports filtering by author and publication year","archived":false,"fork":false,"pushed_at":"2024-04-27T09:24:43.000Z","size":55,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-03T14:38:31.157Z","etag":null,"topics":["bcrypt","dotenv","express-js","jwt-authentication","mongodb","node-js"],"latest_commit_sha":null,"homepage":"https://digital-paani-backend.vercel.app","language":"JavaScript","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/Sajid788.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-04-26T03:38:24.000Z","updated_at":"2024-04-28T02:54:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"3d01dfc5-cfdc-4734-88fb-8f761d756208","html_url":"https://github.com/Sajid788/DigitalPaani-Backend","commit_stats":null,"previous_names":["sajid788/digitalpaani-backend"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Sajid788/DigitalPaani-Backend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sajid788%2FDigitalPaani-Backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sajid788%2FDigitalPaani-Backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sajid788%2FDigitalPaani-Backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sajid788%2FDigitalPaani-Backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sajid788","download_url":"https://codeload.github.com/Sajid788/DigitalPaani-Backend/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sajid788%2FDigitalPaani-Backend/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31456662,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"ssl_error","status_checked_at":"2026-04-05T21:22:51.943Z","response_time":75,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["bcrypt","dotenv","express-js","jwt-authentication","mongodb","node-js"],"created_at":"2025-02-25T01:54:28.530Z","updated_at":"2026-04-06T01:35:07.886Z","avatar_url":"https://github.com/Sajid788.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DigitalPaani-Backend\n\nDigitalPaani Backend is a Node.js application serving as the backend for the DigitalPaani project. It offers APIs for book management, user authentication, and authorization through JSON Web Tokens (JWT). Password encryption is ensured with bcrypt for heightened security.\n\n## Tech Stack\n- Node.js\n- Express.js\n- MongoDB\n- JWT\n- Bcrypt\n\n## Features\n- User authentication with JWT\n- CRUD operations for managing book entries (Create, Read, Update, Delete)\n- Filtering books by author or publication year\n- Pagination  by page and limit\n\n### Installation\n\n1. Clone this repository:\n\n   ```bash\n   git clone https://github.com/Sajid788/DigitalPaani-Backend.git\n   ```\n\n   . Navigate to the project directory:\n\n   ```bash\n   cd DigitalPaani-Backend\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n### API Endpoints\n\n#### Authentication\n\n- `POST /user/register`: Register a new user. Requires a JSON body with `name`, `email` and `password` fields.\n- `POST /user/login`: Login in with existing user credentials. Requires a JSON body with `email` and `password` fields.\n\n#### Book Management\n\n- `GET /book`: Get all book entries.\n- `GET /book/:id`: Get a single book entry by ID.\n- `POST/book`: Create a new book entry. Requires a JSON body with `title`, `author`, and `publicationYear` fields.\n- `PATCH /book/:id`: Update a book entry by ID. Requires a JSON body with `title`, `author`, and `publicationYear` fields.\n- `DELETE /book/:id`: Delete a book entry by ID.\n\n- `Filter url/book?author=author name here` : Get a list of books with filtering by author\n- `Filter By publicationYear url/book?year=2020` : Get a list of books with Filtering books by publication year.\n- `Pagination url/book?page=1\u0026limit=10` : Get a list of books by pagination using {page} \u0026 {limit} both values are dynamic.\n\n#### Authorization\n\nProtected routes require a valid JWT token obtained through the `/auth/login` endpoint in the `Authorization` header.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsajid788%2Fdigitalpaani-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsajid788%2Fdigitalpaani-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsajid788%2Fdigitalpaani-backend/lists"}