An open API service indexing awesome lists of open source software.

https://github.com/preveen369/pomodoro-app

Pomodoro App is a React-based productivity tool combining a to-do list with the Pomodoro technique. Built with Tailwind CSS and LocalStorage, it features task management, themes, and is deployable via Firebase Hosting.
https://github.com/preveen369/pomodoro-app

firebase react tailwind-css vite

Last synced: 3 months ago
JSON representation

Pomodoro App is a React-based productivity tool combining a to-do list with the Pomodoro technique. Built with Tailwind CSS and LocalStorage, it features task management, themes, and is deployable via Firebase Hosting.

Awesome Lists containing this project

README

          

# โฐ Pomodoro-App โ€“ A Productivity Web App

![Platform](https://img.shields.io/badge/Platform-Web-blue.svg)
![Tech](https://img.shields.io/badge/Frontend-React-orange.svg)
![Tech](https://img.shields.io/badge/UI-Tailwind%20CSS-emerald.svg)
![Language](https://img.shields.io/badge/Language-JavaScript-yellow.svg)
![License](https://img.shields.io/badge/License-MIT-lightgrey.svg)

**Pomodoro-App** is a beautifully designed productivity application that integrates a to-do list with the Pomodoro time-management technique. Built using React, JavaScript, and Tailwind CSS, it offers a seamless user experience with features like task management, a customizable timer, and a progress dashboard. The app uses LocalStorage for data persistence, supports multiple themes, hosted on Firebase Hosting for scalable deployment.

๐Ÿ”— **Project Demo**:

---

## ๐Ÿš€ Features

### ๐Ÿ“‹ Task Management
- Add, edit, delete, and reorder tasks with drag-and-drop functionality.
- Organize tasks efficiently to boost productivity.

### โฒ๏ธ Pomodoro Timer
- Customizable work and break durations for focused sessions.
- Start, pause, and reset the timer with ease.

### ๐Ÿ“Š Progress Dashboard
- Displays task completion stats and Pomodoro session history.
- Tracks productivity trends over time.

### โš™๏ธ Settings Panel
- Personalize the app with user-defined settings.
- Adjust timer durations and other preferences.

### ๐ŸŽจ Multiple Themes
- Choose from Tomato, Mint, and Midnight themes.
- Enhances visual appeal and user engagement.

### ๐Ÿ’พ LocalStorage Persistence
- Saves tasks and user preferences locally.
- Ensures data retention across sessions.

### ๐Ÿ“ฑ Mobile-Responsive Design
- Adapts seamlessly to different screen sizes.
- Provides a consistent experience on all devices.

### โŒจ๏ธ Keyboard Shortcuts
- Boosts productivity with shortcuts like `Space` to start/pause, `R` to reset, and more.
- Includes shortcuts for quick navigation and actions.

---

## ๐Ÿ› ๏ธ Tech Stack

- **Frontend**: React, JavaScript, Tailwind CSS
- **State Management**: Context API
- **Data Persistence**: LocalStorage
- **Icons**: Lucide React
- **Hosting**: Firebase Hosting

---

## ๐Ÿ“‚ Project Structure

```
pomodoro-app/
โ”œโ”€โ”€ src/
โ”‚ โ”œโ”€โ”€ components/ # UI components
โ”‚ โ”‚ โ”œโ”€โ”€ Dashboard/ # Progress dashboard components
โ”‚ โ”‚ โ”œโ”€โ”€ Header/ # App header components
โ”‚ โ”‚ โ”œโ”€โ”€ PomodoroTimer/ # Timer modal components
โ”‚ โ”‚ โ”œโ”€โ”€ Settings/ # Settings modal components
โ”‚ โ”‚ โ””โ”€โ”€ TaskList/ # Task list components
โ”‚ โ”œโ”€โ”€ context/ # React Context providers
โ”‚ โ”œโ”€โ”€ hooks/ # Custom React hooks
โ”‚ โ”œโ”€โ”€ types/ # TypeScript interfaces and types
โ”‚ โ”œโ”€โ”€ utils/ # Utility functions
โ”‚ โ”œโ”€โ”€ App.tsx # Main app component
โ”‚ โ””โ”€โ”€ main.tsx # Entry point
โ”œโ”€โ”€ dist/ # Production build output
โ”œโ”€โ”€ .firebaserc # Firebase configuration file
โ””โ”€โ”€ firebase.json # Firebase hosting configuration
```

---

## ๐Ÿงช Installation & Setup

### ๐Ÿ“‹ Prerequisites
- Node.js (v14 or higher)
- npm or yarn
- Firebase CLI (optional, if deploying with Firebase)

### ๐Ÿง‘โ€๐Ÿ’ป Steps to run
1. **Clone the repository**
```bash
git clone https://github.com/yourusername/pomodoro-todo.git
cd pomodoro-todo
```

2. **Install dependencies**
```bash
npm install
# or
yarn
```

3. **Start the development server**
```bash
npm run dev
# or
yarn dev
```
๐ŸŒ Open your browser and navigate to `http://localhost:5173`.

4. **Build for Production**
```bash
npm run build
# or
yarn build
```
The built files will be in the `dist` directory.

5. **(Optional) Deploy with Firebase**
- Initialize Firebase: `firebase init`
- Deploy: `firebase deploy`

๐ŸŒ Access your app live at:
---

## ๐Ÿค Contributing

Pull requests are welcome! Feel free to fork the repository and suggest improvements.

Steps to contribute:

```bash
# 1. Fork the repository
# 2. Create a feature branch
git checkout -b feature-name

# 3. Commit your changes
git commit -m "Add feature description"

# 4. Push to GitHub
git push origin feature-name

# 5. Open a Pull Request
```

---

## ๐Ÿ“ง Contact
For queries or suggestions:
- ๐Ÿ“ฉ Email: [spreveen123@gmail.com](mailto:spreveen123@gmail.com)
- ๐ŸŒ LinkedIn: [www.linkedin.com/in/preveen-s/](https://www.linkedin.com/in/preveen-s/)

---

## ๐ŸŒŸ Show Your Support
If you like this project, please consider giving it a โญ on GitHub!

## ๐ŸŒŸ Show Your Support

If you like this project, please consider giving it a โญ on GitHub!