https://github.com/hamadmulti/taskhorizons
https://github.com/hamadmulti/taskhorizons
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/hamadmulti/taskhorizons
- Owner: HamadMulti
- Created: 2025-06-27T06:01:34.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2025-06-27T06:09:09.000Z (12 months ago)
- Last Synced: 2025-06-27T07:25:41.103Z (12 months ago)
- Language: HTML
- Size: 2.81 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# TaskHorizons
**TaskHorizons** is a modern, full-featured task and project management platform built with **Django** and **TailwindCSS**. It offers seamless user authentication, robust task tracking, productivity analytics, and an intuitive UI all designed for teams and individuals who want to get things done efficiently.
## Project Structure
```bash
taskhorizons/
├── accounts
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── __init__.py
│ ├── middleware.py
│ ├── models.py
│ ├── templatetags
│ │ └── custom_filters.py
│ ├── tests.py
│ ├── urls.py
│ ├── utils.py
│ └── views.py
├── dashboard
│ ├── apps.py
│ ├── __init__.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── db.sqlite3
├── Dockerfile
├── .dockerignore
├── .env
├── frontend
│ ├── apps.py
│ ├── __init__.py
│ ├── static_src
│ │ ├── .gitignore
│ │ ├── package.json
│ │ ├── package-lock.json
│ │ ├── postcss.config.js
│ │ ├── src
│ │ │ └── styles.css
│ │ └── tailwind.config.js
│ └── templates
│ ├── auth
│ │ ├── enable_email_otp.html
│ │ ├── login.html
│ │ ├── onboarding
│ │ │ ├── onboarding_base.html
│ │ │ ├── onboarding_complete.html
│ │ │ ├── step_1.html
│ │ │ ├── step_2.html
│ │ │ ├── step_3.html
│ │ │ └── step_4.html
│ │ ├── password_reset_complete.html
│ │ ├── password_reset_confirm.html
│ │ ├── password_reset_done.html
│ │ ├── password_reset.html
│ │ ├── profile.html
│ │ ├── profile_modal.html
│ │ ├── qr_code_modal.html
│ │ ├── register.html
│ │ ├── verify_email_otp.html
│ │ └── verify_totp_otp.html
│ ├── base.html
│ ├── _base_two.html
│ ├── breadcrumb.html
│ ├── dashboard
│ │ ├── dashboard.html
│ │ └── index.html
│ ├── dashboard_base.html
│ ├── footer.html
│ ├── landing
│ │ ├── cta.html
│ │ ├── features.html
│ │ ├── hero.html
│ │ ├── home.html
│ │ └── testimonials.html
│ ├── nav.html
│ ├── navigation.html
│ ├── projects
│ │ ├── project_confirm_delete.html
│ │ ├── project_form.html
│ │ └── project_list.html
│ ├── registration
│ │ └── password_reset_email.html
│ ├── tasks
│ │ ├── task_confirm_delete.html
│ │ ├── task_detail.html
│ │ ├── task_form.html
│ │ └── task_list.html
│ └── two_factor
│ └── _base.html
├── .gitignore
├── landing
│ ├── admin.py
│ ├── apps.py
│ ├── __init__.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── manage.py
├── media
│ └── profile_pictures
├── project
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── __init__.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── README.md
├── requirements.txt
├── settings
│ ├── asgi.py
│ ├── context_processors.py
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── task
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── __init__.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
└── webhook.log
```
## Features
* **User Authentication**
* Login, Registration, Password Reset
* Two-Factor Authentication (Email & TOTP)
* Profile Management
* **Task & Project Management**
* Create, assign, update and delete tasks/projects
* User-based task filtering
* Deadlines, descriptions, and status tracking
* **Analytics Dashboard**
* Visualize productivity
* Track total/completed/pending tasks
* Admin-level user performance insights
* **Landing Pages**
* Hero section, testimonials, features, and call-to-action
* **Frontend**
* Built using **TailwindCSS**
* Responsive, modern, and accessible design
## ⚙️ Tech Stack
* **Backend:** Django 4+, SQLite3 (default), Django ORM
* **Frontend:** TailwindCSS, Django Templates
* **Auth:** Django built-in auth, 2FA via email and QR
* **Deployment Ready:** Dockerized
## Getting Started
### Clone the Repository
```bash
git clone git@github.com:HamadMulti/taskhorizons.git
cd taskhorizons
```
### Setup Virtual Environment
```bash
python3 -m venv venv
source venv/bin/activate
```
### Install Dependencies
```bash
pip install -r requirements.txt
```
### TailwindCSS Setup
Go to:
```bash
cd frontend/static_src
npm install
npm run build
```
This compiles the Tailwind styles to `frontend/static/`.
### Set Environment Variables
Create a `.env` file:
```ini
DEBUG=True
SECRET_KEY=your-secret-key
ALLOWED_HOSTS=localhost,127.0.0.1
EMAIL_HOST_USER=your-email@example.com
EMAIL_HOST_PASSWORD=your-email-password
```
### Migrate DB and Create Superuser
```bash
python manage.py makemigrations django_otp
python manage.py migrate
python manage.py createsuperuser
```
### Run the App
```bash
python manage.py runserver
```
Visit: `http://127.0.0.1:8000`
## Docker Setup (Optional)
```bash
docker build -t taskhorizons .
docker run -p 8000:8000 taskhorizons
```
## Testing
Run Django's built-in tests:
```bash
python manage.py test
```
## Media & Static Files
Make sure `media/` is writeable:
```bash
mkdir -p media/profile_pictures
chmod -R 755 media/
```
## Contributing
Contributions are welcome! Please fork the repository and submit a pull request.
## License
MIT License. See `LICENSE` file for details.
## Credits
Made with ❤️ using Django + TailwindCSS by \[HamadMulti].