A fully functional calendar application built with React for the frontend and Node.js (Express) for the backend. This app allows users to perform CRUD (Create, Read, Update, Delete) operations on events, with a responsive design that works well on both desktop and mobile devices. The app is powered by MongoDB for data storage, and dotenv is used for environment variable management.
- Create, Read, Update, Delete Events: Users can add, edit, view, and delete events on the calendar.
- Responsive Design: Optimized for both mobile and desktop views.
- Backend and Frontend Separation: The backend and frontend are deployed separately with their respective live URLs.
- MongoDB Integration: All event data is stored in MongoDB for persistent storage.
- Environment Variables: Sensitive information like database credentials and API keys are securely stored using
.env
files.
- Frontend (React): Calendar Frontend
- Backend (Node.js): Calendar Backend
- Portfolio (Designed by Md Shamim Akhter): Shamim Portfolio
- Frontend: React, React Calendar, Tailwind CSS
- Backend: Node.js, Express, MongoDB
- Database: MongoDB
- Authentication: No authentication implemented
- Environment Variables: dotenv for managing environment settings
-
Clone the frontend repository:
git clone https://github.com/techjmi/calendar.git
-
Install the required dependencies:
cd calendar-frontend npm install
-
Start the React development server:
npm run dev
-
Clone the backend repository:
git clone https://github.com/techjmi/calendar_backend
-
Install the required dependencies:
cd calendar-backend npm install
-
Create a
.env
file in the root of the backend project and add your MongoDB URI and other necessary environment variables:MONGO_URI=your_mongo_database_url PORT=5000
-
Start the backend server:
npm start
- GET /events: Fetch all events
- POST /create: Create a new event
- PUT /edit/:id: Update an existing event
- DELETE /delete/:id: Delete an event
GET /events
POST /events
{
"title": "Meeting",
"description": "Team meeting",
"eventDate": "2024-12-01T10:00:00Z"
}
PUT /edit/:id
{
"title": "Updated Meeting",
"description": "Updated team meeting",
"eventDate": "2024-12-02T10:00:00Z"
}
DELETE /delete/:id
Create a .env
file in the root directory for the backend to store sensitive information securely:
MONGO_URI=your_mongo_database_url
PORT=5000
- Fork the repository.
- Create your feature branch (
git checkout -b feature/your-feature
). - Commit your changes (
git commit -am 'Add new feature'
). - Push to your branch (
git push origin feature/your-feature
). - Create a new Pull Request.
- Designed and developed by Md Shamim Akhter.
- Special thanks to the creators of the React Calendar and Tailwind CSS for the awesome libraries!
This README provides all the necessary information for users to install, use, and contribute to your calendar project. Let me know if you need any changes or additions!
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- @vitejs/plugin-react uses Babel for Fast Refresh
- @vitejs/plugin-react-swc uses SWC for Fast Refresh