{"id":22549693,"url":"https://github.com/swadeshit27/admin_panel","last_synced_at":"2026-04-12T17:02:24.196Z","repository":{"id":206712453,"uuid":"717530561","full_name":"Swadeshit27/Admin_Panel","owner":"Swadeshit27","description":null,"archived":false,"fork":false,"pushed_at":"2023-11-14T10:10:52.000Z","size":31,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-02T10:16:11.928Z","etag":null,"topics":["bcryptjs","expressjs","jwt-authentication","mongodb","nodejs","restapi"],"latest_commit_sha":null,"homepage":"https://admin-panel-bi8j.onrender.com","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/Swadeshit27.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}},"created_at":"2023-11-11T18:43:16.000Z","updated_at":"2024-01-16T17:39:40.000Z","dependencies_parsed_at":"2023-11-11T19:44:05.007Z","dependency_job_id":null,"html_url":"https://github.com/Swadeshit27/Admin_Panel","commit_stats":null,"previous_names":["swadeshit27/admin_panel"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swadeshit27%2FAdmin_Panel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swadeshit27%2FAdmin_Panel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swadeshit27%2FAdmin_Panel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Swadeshit27%2FAdmin_Panel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Swadeshit27","download_url":"https://codeload.github.com/Swadeshit27/Admin_Panel/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246001074,"owners_count":20707829,"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":["bcryptjs","expressjs","jwt-authentication","mongodb","nodejs","restapi"],"created_at":"2024-12-07T16:09:32.848Z","updated_at":"2026-04-12T17:02:24.141Z","avatar_url":"https://github.com/Swadeshit27.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Admin panel\n\n## Overview\n\nThis project is basically a simple authentication system API using node js, Express js, and Mongodb incorporating Json Web Token for user authentication. The system will have two types of users -\n\n1. Admin \n1. Normal user\n\nAdmin can register themselves, while normal users cannot register directly. Instead, they can only be added by an authenticated admin.\n\n\u003e [!NOTE]\n\u003e\n\u003e 1. To test this application you need postman.\n\u003e 1. Also this project is deployed on render so you don't need to fork and clone. To check this project, you can follow this following steps.\n\n## Tech tools \u0026 NPM Packages\n\n| Ser. no | Tools          |\n| ------: | -------------- |\n|       1 | Node js        |\n|       2 | Express js     |\n|       3 | Mongodb        |\n|       4 | Json Web Token |\n|       5 | Bcrypt         |\n|       6 | validator         |\n\n\n# Procedure\n\n## Admin Registration\n\n\u003ch4\u003e Endpoints \u003c/h4\u003e\nURL:\n\n```bash\n      https://admin-panel-bi8j.onrender.com/api/admin/register\n```\n\nMethod : ``POST``\n\u003ch3\u003e Provide the following details\u003c/h3\u003e \n\n` 1. Username (string),\n  2. Email (string),\n  3. Password (string)`\n\n\u003e [!IMPORTANT]\n\u003e\n\u003e  1. Username and Email should be unique else throw error.\n\u003e  1. Username must be at least 6 and at most 12 characters.\n\u003e  1. Enter proper email as it's validated else throw error.\n\n### Example\n\n```bash\n   {\n    \"Email\":\"abcd@gmail.com\",\n    \"Password\":\"Abcd@123\",\n    \"Username\":\"Abcd12\"\n  }\n```\n\n### Success Response\n\n```bash\n    {\n        \"message\": \"Admin registered successfully\",\n        \"success\": true\n    }\n```\n### Error Responses\n\n```bash\n    {\n        \"message\": \"all fields are required\",\n        \"success\": false\n    }\n```\n\n```bash\n    {\n        \"message\": \"Email already exists\",\n        \"success\": false\n    }\n```\n\n```bash\n    {\n        \"message\": \"Username already exists\",\n        \"success\": false\n    }\n```\n```bash\n    {\n        \"message\": \"Admin already exists\",\n        \"success\": false\n    }\n```\n\n## Admin Login\n\n\u003ch4\u003e Endpoints \u003c/h4\u003e\nURL:\n\n```bash\n    https://admin-panel-bi8j.onrender.com/api/admin/login\n```\n\nMethod : ``POST``\n \n\u003ch3\u003e Provide the following details\u003c/h3\u003e \n\n` 1. Username (string),\n  3. Password (string)`\n\n\u003e [!IMPORTANT]\n\u003e\n\u003e  1. Username  should be unique .\n\u003e  1. Username must be at least 6 and at most 12 characters.\n\u003e  1.  After successful login you will receive a token as a response and this token will be needed while adding the normal users because using this token server will check if the admin is valid or not\n\n\n### Example\n\n```bash\n   {\n    \"Username\":\"Abcd12\"\n    \"Password\":\"Abcd@123\",\n  }\n```\n\n### Success Response\n\n```bash\n    {\n        \"message\": \"admin login successful\",\n        \"token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY1NGY3YzEzMGVjNGIzZDEyOTlkNDA4OCIsImlhdCI6MTY5OTcwODE1MH0.MDI_COak7Nt2nmztBsD79HqJFpSK-qTAwCgv0YxRp-E\",\n        \"success\": true\n    }\n```\n\n### Error Responses\n\n```bash\n    {\n        \"message\": \"all fields are required\",\n        \"success\": false\n    }\n```\n\n```bash\n    {\n        \"message\": \"Admin doesn't exists\",\n        \"success\": false\n    }\n```\n```bash\n    {\n        \"message\": \"Invalid credential\",\n        \"success\": false\n    }\n```\n\n\n## Add normal user\n\n\u003ch4\u003e Endpoints \u003c/h4\u003e\nURL:\n\n```bash\n    https://admin-panel-bi8j.onrender.com/api/admin/add-user\n```\n\nMethod : ``POST``\n\n\u003ch3\u003e Provide the following details\u003c/h5\u003e \n\n` 1. Username (string),\n  2. Email (string),\n  3. Password (string)\n  4. Authorization: Bearer [token] (which is generated at the time of admin's login)`\n\n\u003e [!IMPORTANT]\n\u003e\n\u003e  1. Username and Email should be unique else throw error.\n\u003e  1. Username must be at least 6 and at most 12 characters.\n\u003e  1. Enter proper email as it's validated else throw error.\n\u003e  1. Also make sure that a admin can't register himself/herself as a normal user.\n\n### Example\n\n```bash\n   {\n    \"Email\":\"user@gmail.com\",\n    \"Username\":\"user112\",\n    \"Password\":\"User@123\"\n  }\n```\n\n### Success Response\n\n```bash\n    {\n        \"message\": \"user added successfully\",\n        \"success\": true\n    }\n```\n\n### Error Responses\n\n```bash\n    {\n        \"message\": \"unauthorized admin\",\n        \"success\": false\n    }\n```\n```bash\n    {\n        \"message\": \"all fields are required\",\n        \"success\": false\n    }\n```\n```bash\n    {\n        \"message\": \"Email already exists\",\n        \"success\": false\n    }\n```\n```bash\n    {\n        \"message\": \"Username already exists\",\n        \"success\": false\n    }\n```\n```bash\n    {\n        \"message\": \"User already exists\",\n        \"success\": false\n    }\n```\n\n## Display all users\n\n\u003ch4\u003e Endpoints \u003c/h4\u003e\nURL:\n\n```bash\n    https://admin-panel-bi8j.onrender.com/api/admin/all-users\n```\n\nMethod : ``GET``\n\u003ch3\u003e Provide the following details\u003c/h5\u003e \n\n`  1. Authorization: Bearer [token] (which is generated at the time of admin's login) `\n\n### Success Response\n\n```bash\n    {\n    \"allUsers\": [\n        {\n            \"_id\": \"6551a5e471e908af038a656c\",\n            \"Username\": \"Abcd11\",\n            \"Email\": \"abcd11@gmail.com\",\n            \"Password\": \"$2b$10$JQScAMm3/Xw5JT2/5TYixecym8ZNhXMsc5NItgkZhRER8UMzMLCqy\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6551a61371e908af038a6572\",\n            \"Username\": \"Abcd111\",\n            \"Email\": \"abcd111@gmail.com\",\n            \"Password\": \"$2b$10$icB3V1f8apH.gvLZc1nscumiacop6WBFbmKyOHutqJa8FuvoTN7BO\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6551aaf826c7856aa4cf9bdf\",\n            \"Username\": \"Abc1saaaaaaa\",\n            \"Email\": \"abcd34@gmail.com\",\n            \"Password\": \"$2b$10$dDiXk3Hm71qrkKGun91jf.8H0ykqB7l2gzhmePbUI3GWgGjgsTPX.\",\n            \"__v\": 0\n        },\n    ],\n    \"success\": true\n}\n```\n\n### Error Responses\n\n```bash\n    {\n        \"message\": \"unauthorized admin\",\n        \"success\": false\n    }\n```\n```bash\n    {\n        \"message\": \"users not found\",\n        \"success\": false\n    }\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswadeshit27%2Fadmin_panel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswadeshit27%2Fadmin_panel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswadeshit27%2Fadmin_panel/lists"}