A complete Full Stack User Management System with MySQL database integration, built for the Sailket Systems Internship Program.
- Full CRUD Operations: Create, Read, Update, Delete users
- MySQL Integration: Robust database connectivity with XAMPP
- RESTful API: Clean, well-documented endpoints
- Responsive UI: Bootstrap 5 powered frontend
- Real-time Monitoring: Live system status dashboard
- Auto Port Selection: Automatically finds available ports
- Smart Configuration: Frontend auto-updates with correct port
- Input Validation: Comprehensive client and server-side validation
- Error Handling: Professional error management
- Frontend: HTML5, CSS3, JavaScript, Bootstrap 5, Font Awesome
- Backend: Node.js, Express.js, CORS, Helmet
- Database: MySQL with XAMPP
- Port: Auto-detection (3000, 3001, 3002, etc.)
# Start XAMPP Control Panel
# Start Apache and MySQL services
# Open phpMyAdmin (http://localhost/phpmyadmin)
###Execute this SQL in phpMyAdmin:
CREATE DATABASE sailket_users;
USE sailket_users;
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100) NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL,
age INT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO users (name, email, age) VALUES
('John Doe', 'john.doe@sailket.com', 28),
('Jane Smith', 'jane.smith@sailket.com', 32);
###Backend Setup
# Navigate to backend directory
cd backend
# Install dependencies
npm install
# Start the server (auto-port selection)
npm start
### 🗃️ Database Schema
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100) NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL,
age INT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
###🎯 Sailket Systems Requirements Met
✅ Database Integration with MySQL
✅ REST API with full CRUD operations
✅ Frontend-Backend Connection
✅ Input Validation (Client & Server)
✅ Error Handling & Management
✅ Professional Documentation
✅ Responsive UI Design
✅ Real-time Status Monitoring
🔧 ####Configuration
Port: Auto-detection (3000, 3001, 3002, etc.)
Database: MySQL (XAMPP)
CORS: Enabled for local development
Security: Helmet.js for security headers
####📁 Project Structure
task5-database-integration/
├── backend/
│ ├── server.js
│ ├── package.json
│ ├── config/
│ │ └── database.js
│ ├── routes/
│ │ └── users.js
│ ├── models/
│ │ └── userModel.js
│ └── middleware/
│ └── validation.js
├── frontend/
│ ├── index.html
│ ├── style.css
│ └── script.js
├── database/
│ └── schema.sql
└── README.md