Skip to content

owsam22/smart-hostel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

29 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🏨 Smart Hostel Management System


A full‑stack hostel management web application built to handle real‑world campus operations efficiently.

🌐 Live Website Β  β€’ Β  βš™οΈ Backend Health


✨ Overview

Smart Hostel Management System is a production‑ready full‑stack application designed to manage hostel‑level operations such as issue reporting, announcements, lost & found tracking, and analytics.

The project focuses on:

  • Clean architecture
  • Secure authentication
  • Scalable backend APIs
  • Modern, responsive UI

This is a personal project built to demonstrate strong full‑stack engineering practices.


πŸš€ Key Features

πŸ‘€ Authentication & Authorization

  • JWT‑based authentication
  • Role‑based access (Student / Management)
  • Secure protected routes

πŸ›  Issue Tracking

  • Report hostel issues (plumbing, cleanliness, electrical, etc.)
  • Priority levels (low β†’ emergency)
  • Status tracking (reported β†’ in progress β†’ resolved)

πŸ“’ Announcements

  • Create & manage announcements
  • Target specific user roles
  • Reaction & comment support (extendable)

πŸ“¦ Lost & Found

  • Post lost or found items
  • Claim workflow with timestamps
  • Ownership tracking

πŸ“Š Analytics Dashboard

  • Issue trends & category breakdowns
  • Role‑based data visibility

🧩 Tech Stack

Frontend

  • React + TypeScript
  • Vite (fast builds)
  • Tailwind CSS (responsive UI)
  • Axios for API communication

Backend

  • Node.js + Express
  • MongoDB Atlas
  • JWT Authentication
  • Rate limiting, Helmet, CORS security

Deployment

  • Render (Frontend + Backend)
  • Environment‑based configuration

πŸ“ Project Structure

β”œβ”€β”€ πŸ“ .github
β”‚   └── πŸ“ appmod
β”‚       └── πŸ“ appcat
β”œβ”€β”€ πŸ“ assets
β”‚   └── πŸ–ΌοΈ smart-hostel-logo.png
β”œβ”€β”€ πŸ“ backend
β”‚   β”œβ”€β”€ πŸ“ middleware
β”‚   β”‚   β”œβ”€β”€ πŸ“„ auth.js
β”‚   β”‚   └── πŸ“„ upload.js
β”‚   β”œβ”€β”€ πŸ“ models
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Announcement.js
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Issue.js
β”‚   β”‚   β”œβ”€β”€ πŸ“„ LostFound.js
β”‚   β”‚   └── πŸ“„ User.js
β”‚   β”œβ”€β”€ πŸ“ routes
β”‚   β”‚   β”œβ”€β”€ πŸ“„ analytics.js
β”‚   β”‚   β”œβ”€β”€ πŸ“„ announcements.js
β”‚   β”‚   β”œβ”€β”€ πŸ“„ auth.js
β”‚   β”‚   β”œβ”€β”€ πŸ“„ hash.js
β”‚   β”‚   β”œβ”€β”€ πŸ“„ issues.js
β”‚   β”‚   └── πŸ“„ lostFound.js
β”‚   β”œβ”€β”€ πŸ“ uploads
β”‚   β”‚   β”œβ”€β”€ πŸ“ issues
β”‚   β”‚   β”‚   β”œβ”€β”€ πŸ–ΌοΈ img1.jpeg
β”‚   β”‚   β”‚   └── πŸ–ΌοΈ img2.png
β”‚   β”‚   └── βš™οΈ .gitkeep
β”‚   β”œβ”€β”€ βš™οΈ package-lock.json
β”‚   β”œβ”€β”€ βš™οΈ package.json
β”‚   └── πŸ“„ server.js
β”œβ”€β”€ πŸ“ src
β”‚   β”œβ”€β”€ πŸ“ components
β”‚   β”‚   β”œβ”€β”€ πŸ“„ CreateAnnouncement.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Layout.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ LoginForm.tsx
β”‚   β”‚   └── πŸ“„ ProtectedRoute.tsx
β”‚   β”œβ”€β”€ πŸ“ contexts
β”‚   β”‚   β”œβ”€β”€ πŸ“„ AnnouncementContext.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ AuthContext.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ IssueContext.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ LostFoundContext.tsx
β”‚   β”‚   └── πŸ“„ api.ts
β”‚   β”œβ”€β”€ πŸ“ pages
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Analytics.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Announcements.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Dashboard.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Home.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Issues.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Login.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ LostFound.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ Profile.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“„ ReportIssue.tsx
β”‚   β”‚   └── πŸ“„ register.tsx
β”‚   β”œβ”€β”€ πŸ“ types
β”‚   β”‚   └── πŸ“„ index.ts
β”‚   β”œβ”€β”€ πŸ“ utils
β”‚   β”‚   └── πŸ“„ cn.ts
β”‚   β”œβ”€β”€ πŸ“„ App.tsx
β”‚   β”œβ”€β”€ 🎨 index.css
β”‚   β”œβ”€β”€ πŸ“„ main.tsx
β”‚   └── πŸ“„ vite-env.d.ts
β”œβ”€β”€ βš™οΈ .gitignore
β”œβ”€β”€ πŸ“ README.md
β”œβ”€β”€ 🌐 index.html
β”œβ”€β”€ βš™οΈ package-lock.json
β”œβ”€β”€ βš™οΈ package.json
β”œβ”€β”€ βš™οΈ tsconfig.json
└── πŸ“„ vite.config.ts

πŸ” Environment Variables

Backend

MONGODB_URI=your_mongodb_atlas_uri
JWT_SECRET=your_secure_secret
FRONTEND_URL=YOUR_FRONTEND_URL_DEPLOYED

Frontend

VITE_API_URL=YOUR_BACKEND_URL_DEPLOYED/api

🎨 UI & UX

  • Clean, modern interface
  • Mobile‑responsive layouts
  • Role‑aware navigation
  • Smooth state updates

UI responsiveness improvements are actively ongoing.


πŸ”— Connect With Me

Β Β 

πŸ“Œ Notes

  • Built with scalability and security in mind
  • Uses real production deployment practices
  • Designed as a long‑term extendable system

⭐ If you find this project interesting, feel free to star the repository!

About

🏒 Smart Hostel Ecosystem | A centralized management suite designed to digitize administrative workflows, automate room allocations, and streamline student-warden communication. Transforming hostel living through smart architecture. πŸ”‘βœ¨

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors