EventuraApi is the backend service for Eventura, an event-tracking application. It handles the server-side logic, database interactions, and API endpoints required for managing events.
- RESTful API endpoints
- CRUD operations for events
- User authentication
- Email notifications for event reminders
- Node.js: Server-side runtime environment.
- Express: Web framework for building APIs.
- MongoDB: NoSQL database for storing event data.
- Mongoose: MongoDB data modeling.
- Nodemailer: Automated email notifications.
- Joi: Data validation library.
- Nodemailer: For sending email notifications.
- Node-cron: Scheduler for periodic tasks.
-
Clone the repository:
git clone https://github.com/IsuriDisanayaka/eventuraApi.git
-
Navigate to the project directory:
cd eventuraApi/Api/functions
-
Install dependencies:
npm install
-
Set up environment variables: Create a .env file in the root directory and add your MongoDB URI, email credentials, and other necessary environment variables:
DB_URL=your_mongodb_uri EMAIL_USER=your_email_user EMAIL_PASS=your_email_password
-
Start the development server:
npm install -g nodemon nodemon server.js
Access the API locally at
http://localhost:5000
.
The backend is deployed on Firebase Functions, ensuring scalability and ease of deployment. The live API can be accessed here.
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.
This project is licensed under the MIT License.