Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vikyathb49/todo-app
A full-stack web-based Todo application to help you organize and track your daily tasks. Built with Node.js, Express, MongoDB, and EJS for server-side rendering.
https://github.com/vikyathb49/todo-app
ejs expressjs mongodb nodejs
Last synced: 3 days ago
JSON representation
A full-stack web-based Todo application to help you organize and track your daily tasks. Built with Node.js, Express, MongoDB, and EJS for server-side rendering.
- Host: GitHub
- URL: https://github.com/vikyathb49/todo-app
- Owner: VIKYATHB49
- License: mit
- Created: 2025-02-17T12:30:48.000Z (3 days ago)
- Default Branch: main
- Last Pushed: 2025-02-17T12:31:20.000Z (3 days ago)
- Last Synced: 2025-02-17T13:30:05.621Z (3 days ago)
- Topics: ejs, expressjs, mongodb, nodejs
- Language: EJS
- Homepage: https://vikyathb49.github.io/todo-app/
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Todo App - Manage Your Tasks Efficiently π
A full-stack web-based Todo application to help you organize and track your daily tasks. Built with Node.js, Express, MongoDB, and EJS for server-side rendering.
## Features β¨
- **Add tasks:** Quickly add new tasks with a title and optional description.
- **Delete tasks:** Remove completed or unnecessary tasks.
- **Database storage:** Tasks persist in MongoDB Atlas cloud database.
- **Responsive design:** Works seamlessly on desktop and mobile devices.## Installation π οΈ
1. **Clone the repository:**
```bash
git clone https://github.com/VIKYATHB49/todo-app.git
```
2. **Navigate to the project directory:**
```bash
cd todo-app
```
3. **Install dependencies:**
```bash
npm install
```
4. **Set up environment variables:**
- Create a `.env` file in the root directory.
- Add your MongoDB connection URI and port:
```env
MONGODB_URI=your_mongodb_connection_string
PORT=3000
```
5. **Start the server:**
```bash
npm start
```
6. **Access the app:**
- Open [http://localhost:3000](http://localhost:3000) in your browser.## Usage π
### Add a task:
- Enter a task title in the input field.
- Click **Add Task** or press **Enter**.### Manage tasks:
- β **Mark tasks as complete** by checking the checkbox.
- ποΈ **Delete tasks** using the trash icon.
- π **Auto-save:** Changes are immediately synced with the database.## Technology Stack π»
### Frontend:
- **Views:** EJS templating engine
- **Styling:** CSS3, Flexbox, CSS Grid
- **Mobile-First** responsive design### Backend:
- **Runtime:** Node.js
- **Framework:** Express.js
- **Database:** MongoDB Atlas (Cloud)
- **ORM:** Mongoose ODM## Configuration βοΈ
### MongoDB Setup:
- Create a free cluster at **MongoDB Atlas**.
- Get your connection URI and add it to `.env`.### Environment Variables:
```env
PORT=3000
MONGODB_URI=mongodb+srv://:@cluster0.example.mongodb.net/todo-app
```## Contributing π€
Contributions are welcome! Follow these steps:
1. **Fork the repository.**
2. **Create a new branch:**
```bash
git checkout -b feature/your-feature-name
```
3. **Commit your changes:**
```bash
git commit -m "Add your message here"
```
4. **Push to the branch:**
```bash
git push origin feature/your-feature-name
```
5. **Submit a pull request.**## License π
This project is licensed under the **MIT License**. See `LICENSE` for details.
## Acknowledgments π
- Inspired by productivity tools like **Todoist** and **Microsoft To-Do**.
- Built with **Express.js** framework and **MongoDB** database.
- Thanks to the open-source community for invaluable resources.---
**Happy Tasking! π―**
Letβs stay organized and productive together! π