{"id":23383111,"url":"https://github.com/teemuiljin/ai-assistant","last_synced_at":"2026-04-10T17:03:51.891Z","repository":{"id":267001772,"uuid":"899991199","full_name":"TeemuIljin/AI-Assistant","owner":"TeemuIljin","description":"The idea is to create a fullstack project to practice python and my skills with Django, databases and AI etc.","archived":false,"fork":false,"pushed_at":"2024-12-20T12:21:52.000Z","size":16474,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-14T06:35:50.877Z","etag":null,"topics":["ai","databases","django-framework","github","python3","sqlite","task","task-manager"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TeemuIljin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-07T15:14:48.000Z","updated_at":"2024-12-20T12:21:55.000Z","dependencies_parsed_at":"2025-02-14T06:42:10.748Z","dependency_job_id":null,"html_url":"https://github.com/TeemuIljin/AI-Assistant","commit_stats":null,"previous_names":["teemuiljin/ai-assistant"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeemuIljin%2FAI-Assistant","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeemuIljin%2FAI-Assistant/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeemuIljin%2FAI-Assistant/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeemuIljin%2FAI-Assistant/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TeemuIljin","download_url":"https://codeload.github.com/TeemuIljin/AI-Assistant/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247813033,"owners_count":21000419,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","databases","django-framework","github","python3","sqlite","task","task-manager"],"created_at":"2024-12-21T22:17:11.242Z","updated_at":"2025-12-30T23:05:33.779Z","avatar_url":"https://github.com/TeemuIljin.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AI Assistant - Project Management System\n\nA modern Django-based project management application with task tracking capabilities.\n\n## Features\n\n- **Project Management**: Create, edit, and delete projects with detailed information\n- **Task Tracking**: Add tasks to projects with priority levels and due dates\n- **User Management**: Assign tasks to users and track project ownership\n- **Search \u0026 Filtering**: Find projects and tasks quickly with advanced filtering\n- **Progress Tracking**: Visual progress bars and completion statistics\n- **Responsive Design**: Modern UI that works on all devices\n- **Admin Interface**: Comprehensive admin panel for data management\n\n## Technology Stack\n\n- **Backend**: Django 5.1.4\n- **Frontend**: Bootstrap 5.3, HTML5, CSS3\n- **Database**: SQLite (configurable for PostgreSQL/MySQL)\n- **API**: Django REST Framework\n- **Authentication**: Django's built-in authentication system\n\n## Installation\n\n1. **Clone the repository**\n   ```bash\n   git clone \u003crepository-url\u003e\n   cd ai-assistant\n   ```\n\n2. **Create a virtual environment**\n   ```bash\n   python -m venv venv\n   source venv/bin/activate  # On Windows: venv\\Scripts\\activate\n   ```\n\n3. **Install dependencies**\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n4. **Set up environment variables**\n   ```bash\n   cp env.example .env\n   # Edit .env with your configuration\n   ```\n\n5. **Run migrations**\n   ```bash\n   python manage.py makemigrations\n   python manage.py migrate\n   ```\n\n6. **Create a superuser**\n   ```bash\n   python manage.py createsuperuser\n   ```\n\n7. **Run the development server**\n   ```bash\n   python manage.py runserver\n   ```\n\n8. **Access the application**\n   - Main application: http://127.0.0.1:8000/\n   - Admin panel: http://127.0.0.1:8000/admin/\n\n## Configuration\n\n### Environment Variables\n\nCreate a `.env` file in the project root with the following variables:\n\n```env\nSECRET_KEY=your-secret-key-here\nDEBUG=True\nALLOWED_HOSTS=localhost,127.0.0.1\nAPI_KEY=your-api-key-here\n```\n\n### Database Configuration\n\nThe application uses SQLite by default. To use PostgreSQL or MySQL:\n\n1. Install the appropriate database driver:\n   ```bash\n   # For PostgreSQL\n   pip install psycopg2-binary\n   \n   # For MySQL\n   pip install mysqlclient\n   ```\n\n2. Update your `.env` file:\n   ```env\n   DATABASE_URL=postgresql://user:password@localhost:5432/dbname\n   # or\n   DATABASE_URL=mysql://user:password@localhost:3306/dbname\n   ```\n\n## Usage\n\n### Creating Projects\n\n1. Navigate to the main page\n2. Click \"Add New Project\"\n3. Fill in the project details:\n   - Name (required)\n   - Description (required)\n   - Start date (defaults to today)\n   - End date (optional)\n   - Completion status\n\n### Managing Tasks\n\n1. Open a project by clicking on its name\n2. Click \"Add Task\" to create new tasks\n3. Set task details:\n   - Title (required)\n   - Description (optional)\n   - Priority level (Low, Medium, High, Urgent)\n   - Due date (optional)\n   - Assigned user (optional)\n\n### Search and Filter\n\n- Use the search bar to find projects by name or description\n- Filter by completion status (All, Active, Completed)\n- Filter by overdue status\n- Sort by various criteria\n\n## API Endpoints\n\nThe application includes a REST API for programmatic access:\n\n- `GET /api/projects/` - List all projects\n- `POST /api/projects/` - Create a new project\n- `GET /api/projects/{id}/` - Get project details\n- `PUT /api/projects/{id}/` - Update project\n- `DELETE /api/projects/{id}/` - Delete project\n\nSimilar endpoints are available for tasks at `/api/tasks/`.\n\n## Development\n\n### Code Quality\n\nThe project includes several tools for maintaining code quality:\n\n```bash\n# Format code with Black\nblack .\n\n# Sort imports with isort\nisort .\n\n# Check for style issues with flake8\nflake8 .\n\n# Run tests\npytest\n```\n\n### Database Migrations\n\nWhen making model changes:\n\n```bash\n# Create migrations\npython manage.py makemigrations\n\n# Apply migrations\npython manage.py migrate\n```\n\n## Deployment\n\n### Production Settings\n\nFor production deployment:\n\n1. Set `DEBUG=False` in your environment\n2. Configure a production database\n3. Set up static file serving\n4. Configure proper security settings\n5. Use a production WSGI server like Gunicorn\n\n### Docker Deployment\n\n```dockerfile\nFROM python:3.11-slim\n\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install -r requirements.txt\n\nCOPY . .\nRUN python manage.py collectstatic --noinput\n\nEXPOSE 8000\nCMD [\"gunicorn\", \"ai_assistant.wsgi:application\"]\n```\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests for new functionality\n5. Ensure all tests pass\n6. Submit a pull request\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n\n## Support\n\nFor support and questions, please open an issue in the repository.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteemuiljin%2Fai-assistant","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteemuiljin%2Fai-assistant","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteemuiljin%2Fai-assistant/lists"}