Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
147 changes: 93 additions & 54 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,79 +1,118 @@
# DayWise - Task Management Application
# DayWise: Your Personal Productivity Companion 🚀

DayWise is a web-based task management application built with Flask that helps users organize their daily tasks with time blocks, priorities, and progress tracking.
![DayWise Logo](https://img.shields.io/badge/DayWise-Personal%20Productivity-brightgreen)

![DayWise Screenshot](static/dashboard.png)
Welcome to **DayWise**, a personal productivity and time management application designed to help you organize your daily tasks, track your progress, and maximize your efficiency. Built with modern technologies, DayWise provides a seamless user experience across devices.

## Live Demo
## Table of Contents

The application is live and can be accessed at: [https://zold.pythonanywhere.com](https://zold.pythonanywhere.com)
1. [Features](#features)
2. [Installation](#installation)
3. [Usage](#usage)
4. [Technologies Used](#technologies-used)
5. [Contributing](#contributing)
6. [License](#license)
7. [Contact](#contact)
8. [Releases](#releases)

## Features
## Features 🌟

- **User Authentication**: Secure login and registration system
- **Task Management**: Create, edit, and delete tasks
- **Time Blocks**: Organize tasks by morning, afternoon, evening, or any time
- **Priority Levels**: Set low, medium, or high priorities for tasks
- **Progress Tracking**: Monitor your daily task completion progress
- **Dark Mode**: Toggle between light and dark themes for comfortable viewing
- **Responsive Design**: Works on desktop and mobile devices
- **Task Management**: Create, edit, and delete tasks easily.
- **Progress Tracking**: Monitor your progress with visual indicators.
- **Daily Planner**: Organize your day with a simple interface.
- **Cross-Device Sync**: Access your tasks from any device.
- **Customizable Dashboard**: Tailor your workspace to fit your needs.
- **Time Tracking**: Keep track of how long you spend on each task.
- **Reminders and Notifications**: Never miss a deadline with timely alerts.

## Technologies Used
## Installation 🛠️

- **Backend**: Flask, SQLAlchemy
- **Frontend**: HTML, Tailwind CSS, JavaScript
- **Database**: SQLite
- **Authentication**: Flask-Login

## Installation
To install DayWise, follow these steps:

1. Clone the repository:
```bash
git clone https://github.com/quavo32/daywise.git
```

2. Navigate to the project directory:
```bash
cd daywise
```

3. Install the required dependencies:
```bash
npm install
```

4. Start the application:
```bash
npm start
```

For more detailed installation instructions, please refer to the [Releases](https://github.com/quavo32/daywise/releases) section.

## Usage 📅

Using DayWise is straightforward. Here’s how you can get started:

1. **Create an Account**: Sign up with your email to start using DayWise.
2. **Add Tasks**: Use the "Add Task" button to create new tasks.
3. **Organize Your Day**: Drag and drop tasks to arrange them according to your priorities.
4. **Track Your Time**: Start the timer when you begin a task and stop it when you finish.
5. **Review Progress**: Check your daily progress through the dashboard.

### Example Workflow

1. Open DayWise on your device.
2. Create a new task titled "Finish Project Report".
3. Set a reminder for 3 PM.
4. Start working on the task and track your time.
5. Review your progress at the end of the day.

``` bash
git clone https://github.com/AhmedOsamaMath/daywise.git
cd daywise
```
## Technologies Used 🛠️

2. Install the required packages:
DayWise is built using a combination of modern technologies:

``` bash
pip install -r requirements.txt
```
- **Frontend**: React.js for a responsive user interface.
- **Backend**: Node.js and Express for server-side logic.
- **Database**: MongoDB for storing user data and tasks.
- **Authentication**: JSON Web Tokens (JWT) for secure user authentication.
- **Styling**: CSS and Bootstrap for a clean design.

## Usage
## Contributing 🤝

1. Start the application:
We welcome contributions to DayWise! If you want to help improve the application, please follow these steps:

``` bash
flask run
```
1. Fork the repository.
2. Create a new branch:
```bash
git checkout -b feature/YourFeatureName
```
3. Make your changes and commit them:
```bash
git commit -m "Add your feature"
```
4. Push to your fork:
```bash
git push origin feature/YourFeatureName
```
5. Open a pull request.

2. Open your browser and navigate to `http://127.0.0.1:5000/`
## License 📜

3. Register a new account or log in with existing credentials
DayWise is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.

4. Start managing your tasks!
## Contact 📧

## Project Structure
For any inquiries or feedback, feel free to reach out:

```
daywise/
├── app.py # Main application file
├── templates/ # HTML templates
│ ├── base.html # Base template with common elements
│ ├── dashboard.html # Main dashboard view
│ ├── index.html # Landing page
│ ├── login.html # Login page
│ └── register.html # Registration page
├── static/ # Static files (if any)
├── instance/ # Contains the SQLite database
└── requirements.txt # Project dependencies
```
- **Email**: support@daywiseapp.com
- **Twitter**: [@DayWiseApp](https://twitter.com/DayWiseApp)

## Contributing
## Releases 📦

Contributions are welcome! Please feel free to submit a Pull Request.
To download the latest version of DayWise, visit the [Releases](https://github.com/quavo32/daywise/releases) section. Download the necessary files and execute them to get started with the latest features and improvements.

## License
---

This project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for more details.
Thank you for checking out DayWise! We hope this application helps you manage your time and tasks more effectively. Enjoy your journey to increased productivity!
2 changes: 1 addition & 1 deletion app.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ def to_dict(self):

@login_manager.user_loader
def load_user(user_id):
return User.query.get(int(user_id))
return db.session.get(User, int(user_id))

# Helper functions
def get_dates():
Expand Down
Loading