{"id":26102703,"url":"https://github.com/kiswa/taskboard","last_synced_at":"2026-03-14T05:31:54.101Z","repository":{"id":21578779,"uuid":"24898710","full_name":"kiswa/TaskBoard","owner":"kiswa","description":"A Kanban-inspired app for keeping track of things that need to get done. (Don't forget to read the Wiki page!)","archived":false,"fork":false,"pushed_at":"2021-11-29T16:24:03.000Z","size":15716,"stargazers_count":1356,"open_issues_count":59,"forks_count":303,"subscribers_count":102,"default_branch":"master","last_synced_at":"2024-04-13T23:54:36.041Z","etag":null,"topics":["kanban","markdown","task-board","task-manager"],"latest_commit_sha":null,"homepage":"http://taskboard.matthewross.me","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"JrCs/docker-letsencrypt-nginx-proxy-companion","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kiswa.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":"kiswa","custom":"https://paypal.me/kiswacom"}},"created_at":"2014-10-07T16:01:42.000Z","updated_at":"2024-04-09T15:32:16.000Z","dependencies_parsed_at":"2022-08-21T05:10:13.782Z","dependency_job_id":null,"html_url":"https://github.com/kiswa/TaskBoard","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiswa%2FTaskBoard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiswa%2FTaskBoard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiswa%2FTaskBoard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiswa%2FTaskBoard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kiswa","download_url":"https://codeload.github.com/kiswa/TaskBoard/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242744061,"owners_count":20178171,"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":["kanban","markdown","task-board","task-manager"],"created_at":"2025-03-09T19:42:19.976Z","updated_at":"2025-12-16T16:29:29.868Z","avatar_url":"https://github.com/kiswa.png","language":"TypeScript","readme":"# MAINTAINERS WANTED\nI haven't had time to work on TaskBoard for several months now, and rather than let it fall to the wayside I'd like to bring in some maintainers. If you're interested, create an issue.\n\n# TaskBoard\n\n[![Build Status](https://travis-ci.org/kiswa/TaskBoard.svg)](https://travis-ci.org/kiswa/TaskBoard) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/77952f4ac9b44e9fbebe7758442d356d)](https://www.codacy.com/app/kiswa-com/TaskBoard?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=kiswa/TaskBoard\u0026amp;utm_campaign=Badge_Grade) [![Join the chat at https://gitter.im/kiswa/TaskBoard](https://badges.gitter.im/kiswa/TaskBoard.svg)](https://gitter.im/kiswa/TaskBoard?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge) [![Join the discussion at https://reddit.com/r/TaskBoard](https://cdn.rawgit.com/kiswa/TaskBoard/09444718053f7405636ab2205ad0f12413df7a20/reddit.svg)](https://reddit.com/r/TaskBoard)\n\nA [Kanban](http://en.wikipedia.org/wiki/Kanban_board)-inspired app for keeping\ntrack of things that need to get done.\n\nThe goal of TaskBoard is to provide a simple and clean interface to a\nfunctional and minimal application for keeping track of tasks.\n**It's not trying to be the next Trello or LeanKit.**\n\n## Installation\n\n### Prerequisites\n\nA web server running PHP 7.x with sqlite enabled (it may work on PHP 5.6, but\nis not supported). See [PHP Supported Versions](https://www.php.net/supported-versions.php).\n\nThe server must have `sqlite3` and `php7-sqlite` installed.\n**- OR -**\nIf you're comfortable changing code, you can use any database [supported by RedBeanPHP](https://redbeanphp.com/index.php?p=/connection).\n\n#### Using PHP-FPM\nYou are able to use PHP-FPM if you remove (or comment out) the php_value items in the api/.htaccess file, then set them in a `.user.ini` [See Documentation](https://www.php.net/manual/en/configuration.file.per-user.php)\n\n### Install\n\nInstalling TaskBoard is as easy as 1, 2, 3!\n\n1. Download [the latest release](https://github.com/kiswa/TaskBoard/releases) since v1.0.0\n2. Extract it to your webserver\n3. Verify the `api` directory is writable\n\nIf you intend to use email features, you will need to edit `api/helpers/mailer.php`.\n\n### Server Config\n\n#### Apache\n\nThe directory you create for TaskBoard must have `AllowOverride` set so the\n`.htaccess` files work.\n\nYou also have to have `mod_rewrite` installed and enabled.\n\n#### NGINX\n\nTODO\n\n#### IIS\n\nSee the [Wiki Page](https://github.com/kiswa/TaskBoard/wiki/TaskBoard-on-IIS)\n\n### First Use\n\nOpen a web browser to the location you installed TaskBoard and use `admin` as\nthe username and password to log into TaskBoard.\n\nGo to the `Settings` page to update your user (username, email, password,\n*etc.*) and create your first board!\n\n## Features\n\n### Users \u0026 Settings\n\nThere are three types of users, and the settings page is slightly different\nfor each.\n\n* User - View boards assigned to them and update their own settings and options.\n* Board Admin - Same as above, with the ability to manage boards they are\nadded to.\n* Admin - Same as above, with the ability to add/remove users and boards.\n\n![Settings Page](./.github/settings.png)\n\n### Boards\n\nEach board may have as many columns as needed. For example, a software project\nmight have columns like:\n\n* Proposed\n* Backlog\n* In Work\n* Test\n* Done\n* Archived\n\nOr maybe you want to track a simple todo list with just:\n\n* Todo\n* Doing\n* Done\n\nIt's all up to you! However many columns you have, each column may have tasks\nadded to it, and tasks can be dragged to other columns as they progress\n(or edited and assigned to a new column).\n\nBoards may also have categories for additional organization, *e.g.* `Bug`,\n`Enhancement`, `New Feature`.\n\n![Boards Page](./.github/boards.png)\n\n### Tasks\n\nA task only has to have a Title to be added to a board, but there is much more\navailable. Tasks may be assigned to any user on the board (or left Unassigned),\nand include options for Due Date, Color, Points (an optional difficulty\nrating), and Category.\n\nTaskBoard uses a [Markdown](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet#table-of-contents)\nparser for the Description, allowing for better display of details\n(like this readme).\n\nOnce a task has been entered, it may have Comments (also supporting Markdown)\nor Attachments added to it by viewing the task detail. There is a link to edit\nthe task, which takes you to a modal much like the original add task dialog.\n\nFor admin users, there is also a link to delete the task. This view also shows\nthe task's activity log on the side of the screen, displaying the complete\nhistory of events related to the task.\n\n![Tasks](./.github/tasks.png)\n\n## Development\n\nDeveloping on TaskBoard is pretty simple too.\n\n1. Clone the repository and navigate to it `git clone https://github.com/kiswa/TaskBoard \u0026\u0026 cd TaskBoard/`\n2. Run `git checkout dev` to work on the `dev` branch\n3. If you don't have it already, install the Angular CLI globally with `npm i -g @angular/cli`\n4. Run `npm i` to install dependencies (this also installs the API dependencies)\n5. Run `npm run watch` for the build to automatically run after any change\n\n### Unit Tests\n\nBoth the API and App are unit tested. To run all tests, use the command\n`npm run test`. For only one set, run `npm run test:api` or `npm run test:app`.\n\nTo have the app tests run \u0026 update as you work, use the command\n`npm run test:watch`.\n\nIf you want to run a single API test, add the following comment block before\nthe test function and use the command `npm run test:api-single`.\n\n``` php\n/**\n * @group single\n */\n```\n\nIf you want to run a single App test, change the test from\n`it('should do something', ...);` to `fit('should do something', ...);` and\nonly that test will run.\n\nThese tests are run by [Travis CI](https://travis-ci.org/) on PRs and commits.\nA PR with failing or missing tests will not be merged.\n\n## Contributing\n\nFork the repository and make your changes on the `dev` branch.\n\nCreate a pull request against the `dev` branch to merge your changes with the\nmain repository.\n\nMake sure to include/update unit tests.\n\n## Feedback\n\nConstructive feedback is appreciated! If you have ideas for improvement, please\n[add an issue](https://github.com/kiswa/TaskBoard/issues) or implement it and\nsubmit a pull request.\n\nIf you find a bug, please post it on the [Issue Tracker](https://github.com/kiswa/TaskBoard/issues).\n\n## How It's Made\n\n### Front End\n\n* [Angular](https://angular.io/) single-page app (not AngularJS)\n* [Bourbon](http://bourbon.io/) and [Neat](http://neat.bourbon.io/) SCSS\nlibrary \u0026 grid\n* [scss-base](https://www.npmjs.com/package/scss-base) for the base styling\n* [marked](https://github.com/chjj/marked) Markdown parser\n* [Chartist.js](https://gionkunz.github.io/chartist-js/) for all charts\n\n### Back End\n\n* [Slim Framework](http://www.slimframework.com/) and\n[RedBeanPHP](http://www.redbeanphp.com/) for a RESTful API\n* [PHPMailer](https://github.com/PHPMailer/PHPMailer) for sending emails\n* [JWT](https://jwt.io/) authentication\n* [SQLite](https://www.sqlite.org/) database\n\n## Lines of Code\n\nBecause I like seeing the numbers.\n\n### `src`\n\nLanguage   |   Files |    Blank |  Comment |    Code\n-----------|--------:|---------:|---------:|---------:\nTypeScript |    67   |    977   |    129   |   4103\nPHP        |    20   |    744   |     37   |   2243\nHTML       |    21   |    268   |      2   |   1572\nSASS       |    14   |    299   |     10   |   1347\n**SUM:**   | **122** | **2288** |  **178** | **9265**\n\nCommand: `cloc --exclude-dir=vendor,favicons --exclude-ext=json,svg,ini src/`\n\n### `test`\n\nLanguage   |  Files |    Blank |  Comment |    Code\n-----------|-------:|---------:|---------:|---------:\nTypeScript |   38   |   1017   |      8   |   3540\nPHP        |   11   |    784   |     19   |   2272\n**SUM:**   | **49** | **1801** |   **27** | **5812**\n\nCommand: `cloc --exclude-ext=xml test/`\n","funding_links":["https://github.com/sponsors/kiswa","https://paypal.me/kiswacom"],"categories":["Application Recommendation"],"sub_categories":["🗂️ Personal knowledge management"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiswa%2Ftaskboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkiswa%2Ftaskboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiswa%2Ftaskboard/lists"}