A Kanban-inspired app for keeping track of things that need to get done. (Don't forget to read the Wiki page!)
I 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.
A Kanban-inspired app for keeping track of things that need to get done.
The goal of TaskBoard is to provide a simple and clean interface to a functional and minimal application for keeping track of tasks. It's not trying to be the next Trello or LeanKit.
A web server running PHP 7.x with sqlite enabled (it may work on PHP 5.6, but is not supported). See PHP Supported Versions.
The server must have
- OR -
If you're comfortable changing code, you can use any database supported by RedBeanPHP.
You 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
Installing TaskBoard is as easy as 1, 2, 3!
apidirectory is writable
If you intend to use email features, you will need to edit
Server Config Apache
The directory you create for TaskBoard must have
AllowOverride set so the
.htaccess files work.
You also have to have
mod_rewrite installed and enabled.
See the Wiki Page
Open a web browser to the location you installed TaskBoard and use
the username and password to log into TaskBoard.
Go to the
Settings page to update your user (username, email, password,
etc.) and create your first board!
Features Users & Settings
There are three types of users, and the settings page is slightly different for each.
Each board may have as many columns as needed. For example, a software project might have columns like:
Or maybe you want to track a simple todo list with just:
It's all up to you! However many columns you have, each column may have tasks added to it, and tasks can be dragged to other columns as they progress (or edited and assigned to a new column).
Boards may also have categories for additional organization, e.g.
A task only has to have a Title to be added to a board, but there is much more available. Tasks may be assigned to any user on the board (or left Unassigned), and include options for Due Date, Color, Points (an optional difficulty rating), and Category.
TaskBoard uses a Markdown parser for the Description, allowing for better display of details (like this readme).
Once a task has been entered, it may have Comments (also supporting Markdown) or Attachments added to it by viewing the task detail. There is a link to edit the task, which takes you to a modal much like the original add task dialog.
For admin users, there is also a link to delete the task. This view also shows the task's activity log on the side of the screen, displaying the complete history of events related to the task.
Developing on TaskBoard is pretty simple too.
git clone https://github.com/kiswa/TaskBoard && cd TaskBoard/
git checkout devto work on the
npm i -g @angular/cli
npm ito install dependencies (this also installs the API dependencies)
npm run watchfor the build to automatically run after any change
Both the API and App are unit tested. To run all tests, use the command
npm run test. For only one set, run
npm run test:api or
npm run test:app.
To have the app tests run & update as you work, use the command
npm run test:watch.
If you want to run a single API test, add the following comment block before
the test function and use the command
npm run test:api-single.
If you want to run a single App test, change the test from
it('should do something', ...); to
fit('should do something', ...); and
only that test will run.
These tests are run by Travis CI on PRs and commits. A PR with failing or missing tests will not be merged.Contributing
Fork the repository and make your changes on the
Create a pull request against the
dev branch to merge your changes with the
Make sure to include/update unit tests.Feedback
Constructive feedback is appreciated! If you have ideas for improvement, please add an issue or implement it and submit a pull request.
If you find a bug, please post it on the Issue Tracker.How It's Made Front End
Because I like seeing the numbers.
Language Files Blank Comment Code
TypeScript 67 977 129 4103
PHP 20 744 37 2243
HTML 21 268 2 1572
SASS 14 299 10 1347
SUM: 122 2288 178 9265
cloc --exclude-dir=vendor,favicons --exclude-ext=json,svg,ini src/
Language Files Blank Comment Code
TypeScript 38 1017 8 3540
PHP 11 784 19 2272
SUM: 49 1801 27 5812
cloc --exclude-ext=xml test/
Twice a month we will interview people behind open source businesses. We will talk about how they are building a business on top of open source projects.
We'll never share your email with anyone else.