{"id":31600268,"url":"https://github.com/artdelpi/taskpilot-gpt","last_synced_at":"2026-05-07T05:39:23.565Z","repository":{"id":307908421,"uuid":"1031049933","full_name":"artdelpi/taskpilot-gpt","owner":"artdelpi","description":"Smart task manager with ChatGPT assistant, built on Rails","archived":false,"fork":false,"pushed_at":"2025-09-24T04:38:47.000Z","size":7838,"stargazers_count":1,"open_issues_count":13,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-06T06:57:14.811Z","etag":null,"topics":["bootstrap","devise","gpt-integration","gpt-wrapper","hotwire","postgresql","productivity-tool","project-collaboration","ruby-on-rails","task-tracking"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/artdelpi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-02T22:36:07.000Z","updated_at":"2025-08-15T00:46:50.000Z","dependencies_parsed_at":"2025-08-03T00:20:33.967Z","dependency_job_id":"f519e0d1-6732-4672-b069-c52061980db8","html_url":"https://github.com/artdelpi/taskpilot-gpt","commit_stats":null,"previous_names":["artdelpi/taskpilot-gpt"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/artdelpi/taskpilot-gpt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artdelpi%2Ftaskpilot-gpt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artdelpi%2Ftaskpilot-gpt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artdelpi%2Ftaskpilot-gpt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artdelpi%2Ftaskpilot-gpt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/artdelpi","download_url":"https://codeload.github.com/artdelpi/taskpilot-gpt/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/artdelpi%2Ftaskpilot-gpt/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":283904828,"owners_count":26914327,"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","status":"online","status_checked_at":"2025-11-11T02:00:06.610Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["bootstrap","devise","gpt-integration","gpt-wrapper","hotwire","postgresql","productivity-tool","project-collaboration","ruby-on-rails","task-tracking"],"created_at":"2025-10-06T06:55:17.868Z","updated_at":"2025-11-11T18:18:38.700Z","avatar_url":"https://github.com/artdelpi.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://twemoji.maxcdn.com/v/latest/svg/1f680.svg\" width=\"72\" alt=\"Rocket Emoji\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eTask Pilot GPT\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cem\u003eAI-powered project \u0026 task management, built with Ruby on Rails and OpenAI\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/status-in%20development-yellow?style=for-the-badge\u0026logo=github\" alt=\"Status\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"#\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Ruby%20on%20Rails-8-red?style=for-the-badge\u0026logo=rubyonrails\" alt=\"Ruby on Rails\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"#\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/OpenAI%20API-integrated-412991?style=for-the-badge\u0026logo=openai\" alt=\"OpenAI API\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n## Overview\n\n***Task Pilot GPT*** is a Ruby on Rails application I developed for managing projects and tasks with AI-assisted planning. It aims to boost productivity by providing a user-friendly interface to organize your projects, leveraging the OpenAI API to break them down into smaller tasks and automatically prioritize them.\n\n---\n\n## Demo\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/demo_project_task.gif\" alt=\"Project and Task Management\" width=\"700\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ci\u003eCreating a new project, adding tasks and deleting the created project.\u003c/i\u003e\n\u003c/p\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/demo_register_login.gif\" alt=\"Register and Login\" width=\"700\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ci\u003eUser registration and login flow.\u003c/i\u003e\n\u003c/p\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/demo_main_menu.gif\" alt=\"Main Menu Navigation\" width=\"700\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ci\u003eMain menu after login: viewing tasks, tags, profile, settings and logout options.\u003c/i\u003e\n\u003c/p\u003e\n\n---\n\n## Features\n\n- **AI-powered task decomposition** (planned via ChatGPT API)\n- **User-managed projects and tasks**\n- **Multi-user collaboration** using `ProjectAssignment` (many-to-many)\n- **Modular structure** for easy extension\n- **Dynamic Bootstrap UI with modals**\n- **Authentication with Devise**\n- **BDD with RSpec + Capybara**\n\n---\n\n## Using the OpenAI API to Generate Initial Project Tasks\n\n(Planned feature) When a new project is created in **TaskPilot**, the system can automatically request initial task suggestions from the [OpenAI Chat Completions API](https://platform.openai.com/docs/api-reference/chat).\n\n### Request Example\n```ruby\nclient = OpenAI::Client.new(access_token: ENV[\"OPENAI_API_KEY\"])\n\nresponse = client.chat(\n  parameters: {\n    model: \"gpt-4o-mini\", \n    messages: [\n      {\n        role: \"system\",\n        content: \"You are a project planner that generates clear, realistic and actionable tasks for new projects.\"\n      },\n      {\n        role: \"user\",\n        content: \"Generate 5 initial tasks for the project: 'Launch a personal portfolio website', including description and suggested due date.\"\n      }\n    ],\n    temperature: 0.7\n  }\n)\n\nputs response.dig(\"choices\", 0, \"message\", \"content\")\n\n```\n\n---\n\n## Tech Stack\n\n- **Ruby on Rails 8**\n- **PostgreSQL**\n- **Devise for authentication**\n- **OpenAI API** (for future AI integration)\n- **Bootstrap 5**\n- **Docker for deployment**\n\n---\n\n## Development Principles\n\n- Behavior-Driven Development (BDD)\n- Modular associations using `has_many :through`\n- Clean UI patterns with reusable components\n- Prepared for production using Docker\n\n---\n\n## Database Schema\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/relational_model.png\" alt=\"Relational Database Model\" width=\"900\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ci\u003eEntity-relationship diagram showing users, projects, tasks, dependencies, tags, comments and assignments.\u003c/i\u003e\n\u003c/p\u003e\n\n---\n\n## Running with Docker\n\n```bash\ndocker build -t taskpilot_gpt .\ndocker run -d -p 80:80 \\\n  -e RAILS_MASTER_KEY=\u003cyour-master-key\u003e \\\n  --name taskpilot_gpt taskpilot_gpt\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fartdelpi%2Ftaskpilot-gpt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fartdelpi%2Ftaskpilot-gpt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fartdelpi%2Ftaskpilot-gpt/lists"}