{"id":23297390,"url":"https://github.com/sandeep-shaw10/hostel-management","last_synced_at":"2026-05-05T14:33:30.289Z","repository":{"id":40426882,"uuid":"479895692","full_name":"sandeep-shaw10/hostel-management","owner":"sandeep-shaw10","description":"Software Engineering Project: Hostel Management","archived":false,"fork":false,"pushed_at":"2022-05-09T12:47:29.000Z","size":3249,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"backend","last_synced_at":"2025-04-06T19:53:49.808Z","etag":null,"topics":["github","mern","rest-api","vercel"],"latest_commit_sha":null,"homepage":"https://sandeep-shaw10.github.io/hostel-management/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sandeep-shaw10.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}},"created_at":"2022-04-10T02:44:48.000Z","updated_at":"2022-06-14T18:41:32.000Z","dependencies_parsed_at":"2022-08-09T20:10:37.329Z","dependency_job_id":null,"html_url":"https://github.com/sandeep-shaw10/hostel-management","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sandeep-shaw10/hostel-management","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandeep-shaw10%2Fhostel-management","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandeep-shaw10%2Fhostel-management/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandeep-shaw10%2Fhostel-management/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandeep-shaw10%2Fhostel-management/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sandeep-shaw10","download_url":"https://codeload.github.com/sandeep-shaw10/hostel-management/tar.gz/refs/heads/backend","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandeep-shaw10%2Fhostel-management/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32653573,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-05T11:29:49.557Z","status":"ssl_error","status_checked_at":"2026-05-05T11:29:48.587Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":["github","mern","rest-api","vercel"],"created_at":"2024-12-20T07:17:31.426Z","updated_at":"2026-05-05T14:33:30.269Z","avatar_url":"https://github.com/sandeep-shaw10.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"### MODELS\n\n#### Static:\n- root location: `data/static.js`\n    ```js\n    const ROLE = {\n        ADMIN: 'admin',\n        STAFF: 'staff'\n    }\n\n    const GENDER = {\n        M: 'Boys',\n        F: 'Girls'\n    }\n\n    const COURSE = {\n        BT: 'B.Tech',\n        MT: 'M. Tech'\n    }\n\n    const BRANCH = {\n        CT: 'Ceramic Technology',\n        IT: 'Information Technology',\n        CSE: 'Computer Science \u0026 Engineering'\n    }\n\n    const BLOCK = [\n        {\n            id:\"1\",\n            name: 'Block-A',\n            desc: 'Wifi, Single-Bed ....',\n            type: GENDER.M\n        },\n        ... \n    ]\n    ```\n\n#### Dynamic DataBase:\n- root location: `model/...`\n\n\u003cbr\u003e\n\n- __Model__: `User.js`\n    ```json\n    {\n        \"_id\": \"6252edab39baefbe02a02e33\",\n        \"name\": \"Staff User 2\",\n        \"email\": \"staff2@yahoo.com\",\n        \"role\": \"staff\",\n        \"password\": \"$2a$10$NXrAR0F8x6SLBXEcbvYTReL98y4LSRa8TjF4r4yziId2pq3AQhgJC\",\n        \"block\": [ \"1\", \"4\" ],\n        \"date\": \"2022-04-10T14:46:03.847Z\",\n        \"__v\": 0\n    }\n    ```\n\n- __Room__: `Room.js`\n    ```json\n    {\n        \"_id\": \"62532fb56fd49992f74b36c5\",\n        \"block\": \"2\",\n        \"room_no\": \"100-C\",\n        \"desc\": \"Non-AC\",\n        \"status\": [],\n        \"date\": \"2022-04-10T19:27:49.845Z\",\n        \"__v\": 0\n    }\n    ```\n\n- __Student__: `Student.js`\n    ```json\n    // left\n    ```\n\n\u003cbr\u003e\n\n- - -\n### Multi-user Authorization\n\n`dev purpose`\n#### Admin User\n- name: `Admin User`\n- email: `admin@yahoo.com`\n- password: `admin@1234`\n- function\n    - All staff (CRUD)\n    - All function of staff\n\n#### Staff User\n- name: `Staff User {{num}}`\n- email: `staff{{num}}@yahoo.com`\n- password: `staff{{num}}@1234`\n- function\n    - Self staff (RU)\n    - All room in given block (CRUD)\n    - Allot Student to rooms\n    - All function of student\n\n#### Student User\n- function\n    - View room status block-wise\n    - **Send Application\n\nAssumption\n- Admin cannot change email(uid)\n- Admin cannot delete itself\n- Admin cannot change own role\n- - -\n\n### API: `USER`\n\n\u003cbr\u003e\n\n#### Login: POST `/api/user/login`\nRequest to admin and staff\n```json\n// body\n{\n    \"email\": \"test@yahoo.com\",\n    \"password\": \"admin@1234\"\n}\n```\n\nResponse\n```json\n// JWT TOKEN\neyJhbGciOiJ...1m3t5qOCAd8dvXi6D5w\n```\n\u003cbr\u003e\n\n#### Register(Add Staff): POST `/api/user/register`\nRequest access to admin\n```json\n//header\n{\n    \"auth-token\": \"JWT_TOKEN\"\n}\n\n// body\n{\n    \"name\": \"Staff Test 1\",\n    \"email\": \"staff1@yahoo.com\",\n    \"password\": \"staff@1234\",\n    \"role\": \"staff\"\n}\n```\n\nResponse\n```json\n// USER ID\n{\n    \"user\": \"6252e68c3a908c0f120992fe\"\n}\n```\n\n\u003cbr\u003e\n\n#### All user: GET `/api/user/`\nRequest access to admin\n```json\n//header\n{\n    \"auth-token\": \"JWT_TOKEN\"\n}\n```\n\n\u003cbr\u003e\n\n#### Get user by id: GET `/api/user/data/:userId`\nRequest access to admin\n```json\n//header\n{\n    \"auth-token\": \"JWT_TOKEN\"\n}\n```\n\n\u003cbr\u003e\n\n#### Delete user by Id: GET `/api/user/delete/:userId`\nRequest access to admin\n```json\n//header\n{\n    \"auth-token\": \"JWT_TOKEN\"\n}\n```\n\n\u003cbr\u003e\n\n#### Update user by Id: POST `/api/user/update/:userId`\nRequest access to admin\n```json\n//header\n{\n    \"auth-token\": \"JWT_TOKEN\"\n}\n\n//BODY\n{\n    \"name\": \"Staff User 1\",\n    \"password\": \"staff1@1234\",\n    \"role\": \"staff\",\n    \"block\": [\"1\",\"4\"]\n}\n```\n\n\n\u003cbr\u003e\n\n#### View own credentials: GET `/api/user/my-data`\nRequest access to admin and staff\n```json\n//header\n{\n    \"auth-token\": \"JWT_TOKEN\"\n}\n```\n\n- - - \n\n### API: `BLOCK`\nAccess: `All users`\n\n##### Get all block: GET `/api/block/`\n\n##### Get one block: GET `/api/block/:blockId`\n\n\n##### Get room in each block: GET `/api/block/:blockId/rooms`\n\n- - - \n\n### API: `ROOM`\nAccess: `All users`\n\n##### Get all room: GET `/api/room/`\n\n##### Get one room: GET `/api/room/:roomId`\n\n\u003cbr\u003e\n\nAccess: `Staff \u0026 Admin with Block Permission`\n##### Add room in each block: POST `/api/block/add/:blockId`\n\nRequest\n```json\n//header\n{\n    \"auth-token\": \"JWT_TOKEN\"\n}\n\n//body\n{\n    \"block\": \"1\",\n    \"room_no\": \"123-C\",\n    \"desc\": \"Non-AC\",\n    \"status\": []\n}\n```\n\nResponse\n```json\n{\n    \"room\": \"6253bcd3063288cd5a63675c\"\n}\n```\n\n##### Delete room in each block: GET `/api/block/delete/:roomId`\n\nRequest\n```json\n//header\n{\n    \"auth-token\": \"JWT_TOKEN\"\n}\n```\n\nResponse\n```json\n{\n    \"_id\": \"62532fb56fd49992f74b36c5\",\n    \"block\": \"2\",\n    \"room_no\": \"100-C\",\n    \"desc\": \"Non-AC\",\n    \"status\": [],\n    \"date\": \"2022-04-10T19:27:49.845Z\",\n    \"__v\": 0\n}\n```\n\n- - -\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsandeep-shaw10%2Fhostel-management","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsandeep-shaw10%2Fhostel-management","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsandeep-shaw10%2Fhostel-management/lists"}