BookIt is a modern calendar app made from an idea to reality, designed to simplify scheduling and booking meetings. It provides a sleek and intuitive interface for managing appointments and tracking upcoming events, Stay on top of your schedule and improve your time management with our calendar solution.
Interested in exploring our project? Click here to visit!
- User Authentication: Secure login and signup process with HTTP only header cookies.
- Real-time Notifications: Receive real-time updates on new and upcoming bookings.
- Multiple Calendar Views: Easily switch between month, week, and day views.
- Booking Management: Create, edit, and delete bookings directly from the calendar.
- Awaiting List: View all pending appointments with countdown timers.
- User Calendar Search: Search for other users and find available slots for new meetings.
- Password Reset: Forget your password? Reset it easily with a token sent to your email.
- User Profile Management: Update your name, email, and password anytime.
- Welcome Emails: Receive a warm welcome email upon registration.
- Responsive Design: Optimized for all devices.
- Access and Refresh Tokens: Enhanced security.
- Custom Calendar Hours: Set your own calendar opening and closing hours.
-
Frontend:
- Vite
- React
- Axios
- Styled-components
- Dayjs
- React-hot-toast
- React-router-dom
-
Backend:
- Node.js
- Express
- MongoDB
- Mongoose
- Socket.IO
- Nodemailer
Click the "Fork" button at the top of the page to create your own copy of the repository.
Open your terminal or command prompt. Clone the forked repository to your local machine
cd BookIt
cd client
Create a '.env' file in the client directory.
Add the neccessary environment variables, Here's an example:
VITE_BASE_API_URL=http://your-api-url.com
cd server
Create a '.env' file in the server directory.
Add the necessary environment variables, Here's an example:
DATABASE_URL=mongodb://your-mongo-db-url
JWT_SECRET=your-jwt-secret
Navigate to the client directory if you are not already there:
cd client
Install the required dependencies using npm or yarn:
npm install
# or
yarn install
Navigate to the server directory if you are not already there:
cd server
Install the required dependencies using npm or yarn:
npm install
# or
yarn install
npm run dev
# or
yarn dev
npm run dev
# or
yarn dev