{"id":34612247,"url":"https://github.com/kragleh/issue-tracker","last_synced_at":"2025-12-24T14:17:03.464Z","repository":{"id":253634840,"uuid":"844082876","full_name":"kragleh/issue-tracker","owner":"kragleh","description":"A simple issue tracking solution for any kind of project. Including more than 80 login providers for every use case.","archived":false,"fork":false,"pushed_at":"2024-09-15T12:36:35.000Z","size":293,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-09-16T11:10:50.034Z","etag":null,"topics":["issue-management","issue-tracker","nextjs","tracker","tracker-application"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kragleh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-08-18T10:30:54.000Z","updated_at":"2024-09-15T12:36:38.000Z","dependencies_parsed_at":"2024-08-18T11:43:24.105Z","dependency_job_id":"2ad047e6-3a58-44c1-bf69-b08773f40f88","html_url":"https://github.com/kragleh/issue-tracker","commit_stats":null,"previous_names":["kragleh/issue-tracker"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kragleh/issue-tracker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kragleh%2Fissue-tracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kragleh%2Fissue-tracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kragleh%2Fissue-tracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kragleh%2Fissue-tracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kragleh","download_url":"https://codeload.github.com/kragleh/issue-tracker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kragleh%2Fissue-tracker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28003726,"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-12-24T02:00:07.193Z","response_time":83,"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":["issue-management","issue-tracker","nextjs","tracker","tracker-application"],"created_at":"2025-12-24T14:17:03.390Z","updated_at":"2025-12-24T14:17:03.459Z","avatar_url":"https://github.com/kragleh.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# This project is a work in progress. Everything is subject to change. Do not use this in production.\n\n\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003eIssue Tracker\u003c/h1\u003e\n  \u003ca href=\"#getting_started\"\u003eGet started\u003c/a\u003e\n  \u003cspan\u003e\u0026nbsp;\u0026nbsp;•\u0026nbsp;\u0026nbsp;\u003c/span\u003e\n  \u003ca href=\"https://discord.gg/djsjvQ6VNE\"\u003eDiscord\u003c/a\u003e\n  \u003chr /\u003e\n\u003c/div\u003e\n\n## 👋 Welcome\n\nThis project was made to create a simple issue tracker for any type of project. It aims to be user friendly and easy to use supporting more than 80 ways to log in using different providers.\n\n\u003ca name=\"getting_started\"\u003e\u003c/a\u003e\n\n## 🔨 Getting started\n\n### Preparing the database\n\nThis project is based around [PostgreSQL](https://www.postgresql.org). You can setup a local database or a remote one depending on your needs. You can find the downloads for local deployment [here](https://www.postgresql.org/download/).\n\n### Getting dependencies\n\nMake sure you have [Node.js](https://nodejs.org/en/) installed on your machine.\n\n### Clone the project\n\n```bash\ngit clone https://github.com/kragleh/issue-tracker.git\n```\n\n### Setup environment variables\n\n```bash\ncp .env.example .env\n```\n\nSet the corresponding values in the `.env` file. If not happy with the default provider, you can [add a new sign in provider](#📋-adding-a-new-sign-in-provider).\n\n### Install dependencies\n\n```bash\nnpm install\n\n# For production purposes\nnpm install -g pm2\n```\n\n### Generate dependencies\n\n```bash\nnpx prisma generate\n```\n\n### Create database structure\n\n```bash\nnpx prisma db push\n```\n\n### Run the project in development mode\n\n```bash\nnpm run dev\n```\n\nThen head to [http://localhost:3000](http://localhost:3000) and make sure everything is working.\n\n### Run the project in production mode\n\n```bash\nnpm run build\n\n# To run in the command line temporarily\nnpm run start\n\n# To run in the background 24/7\npm2 start npm --name issue-tracker -- run start\npm2 save\npm2 startup\n```\n\n## 🖊️ Adding a new sign in provider\n\nTo add a new sign in provider, head [here](https://authjs.dev/getting-started/authentication/oauth) search for the provider you are looking for and follow the steps. To remove a provider, you can simply remove the provider from the `providers` array in the `auth.ts` file and the corresponding values in the `.env` file.\n\n## 📋 TODO\n\nProject features\n  - [x] Project page\n    - [ ] Add more data\n    - [ ] Cleanup code\n  - [x] Project issues\n  - [ ] Moderate members\n  - [x] Project settings\n  - [x] View project issues\n  - [x] Project invites\n  - [ ] ~~Project roles~~ (Future consideration)\n  - [ ] Simple predefined member roles\n    - [ ] Admin - Full power, can edit and see everything\n    - [ ] Moderator - Can manage issues, members and moderate messages\n    - [ ] Developer - Can manage issues\n    - [ ] Member - Can create issues and interact with them\n\nIssue features\n  - [x] Create issue\n  - [x] View issue\n  - [x] Add messages\n  - [ ] Manage issue\n  - [ ] Moderate issue\n  - [ ] Moderate messages\n\nAdmin features\n  - [ ] Dashboard page (Low Priority)\n  - [x] User page\n    - [x] View users\n    - [x] Manage users\n      - [x] Ban users\n      - [x] Promote users\n      - [x] Demote users\n  - [ ] Projects page (Low Priority)\n    - [ ] View projects\n    - [ ] Manage projects\n      - [ ] Edit project (Low Priority)\n      - [ ] Delete project\n\nOther\n  - [x] Home page\n  - [x] Issues page\n  - [x] Profile page\n  - [x] Theme switch\n  - [x] Auth\n  - [ ] API Routes Optimization (Low Priority)\n\n## 🤝 Contributing\n\nFeel free to contribute to this project by opening an issue or a pull request.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkragleh%2Fissue-tracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkragleh%2Fissue-tracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkragleh%2Fissue-tracker/lists"}