Sky Wizard is a modern web platform that allows users to search, book, and manage flight reservations. With a beautiful user interface and secure authentication system, users can easily browse flights, create accounts, and manage their travel plans.
- Secure signup and login system
- JWT-based authentication
- Password encryption
- Protected routes for authenticated users
- Search flights by destination
- View detailed flight information
- Browse popular destinations
- Interactive booking interface
- Socket.io integration for live flight updates
- Instant booking confirmations
- Real-time price updates
-
Frontend:
- HTML5, CSS3, JavaScript
- Bootstrap 5
- Socket.io Client
- Modern responsive design
- Mobile-first approach
-
Backend:
- Node.js
- Express.js
- MongoDB
- JWT Authentication
- Socket.io
- Clone the repository:
git clone [your-repository-url]
cd SIT725-project-- Install dependencies:
npm install- Create a
.envfile in the Skywizard directory with the following variables:
PORT=3030
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret- Start the application:
npm startThe application will run at http://localhost:3030
To run the application in development mode with auto-reload:
npm run devSIT725-project-/
├── Skywizard/
│ ├── public/ # Static files
│ ├── model/ # Database models
│ ├── router/ # Route handlers
│ └── server.js # Main server file
├── Documentation/ # Project documentation
└── package.json # Project dependencies
- Password hashing with bcrypt
- JWT token authentication
- MongoDB connection pooling
- CORS protection
- Input validation
- Error handling middleware
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the ISC License.
- Bootstrap for the responsive design framework
- MongoDB Atlas for database hosting
- Socket.io for real-time functionality