This is the source code of TasksPipes, a multi-user task manager built around Outline:
people sign in with their Outline account, link Outline documents to their tasks, and work in an interface that
follows Outline's look and feel.
- Pipes — kanban boards with their own columns, personal or shared with a team, private or open to everyone.
- Incoming buckets — send a task to someone or to a team; they accept it into a pipe or refuse it with a reason.
- My tasks and Next action — everything assigned to you across pipes, and a GTD view suggesting what to start next.
- Task types and fields — course design, sales opportunity, user story, bug… with dates, amounts, files and Outline documents.
- Software teams — UX research, UI design, product documentation, translation, development and QA pipes, with
GitHub and GitLab integration: pull/merge requests naming a task move it to review,
then to done when merged.
- Personal life — chores (flat share, couple, family), moving house, shared custody, home improvement, party
planning, job search, house hunting, health care, paperwork and trips, with shared expenses and starter tasks.
- Models — design your own pipe and task types, from scratch or from an existing one, and share them as
YAML files.
- Calendar — subscribe to your tasks with a due date in Google Calendar, Apple Calendar or any calendar app,
with reminders five days before, the day before and on the day.
- Your Outline workspace, ready — once connected to Outline, everyone in the workspace is there straight away:
invite the colleagues who have not signed in yet, and send them tasks or build teams with them once they have.
- Any Outline server — sign in with the instance's Outline server in one click (OAuth), or type the address of
yours; it is then remembered in your browser, and you can switch between several servers.
- Without Outline too — anyone can create an account with just an e-mail address and a display name, sign in
with links sent by e-mail (optionally with two-factor authentication) and set a profile picture.
- Invitations and connections — invite people by e-mail (trainers, clients, partners…): a new person gets a
sign-in link, someone already on TasksPipes gets a request they accept or refuse. Once connected, you see each
other in the app; the rest of the workspace does not see them, unless you add them to a team.
- Time and reports — time spent in each step of a task, a daily activity report per pipe and a weekly time
report per task type for development pipes, readable in the app and sent by e-mail at 18:00 if asked.
- Notifications by e-mail — tasks sent to you, given to you or refused, comments and due dates, at once, in a
daily digest or not at all, as each person chooses.
- Recurring tasks — every day, chosen weekdays, a day or the first Monday of the month, the last business day,
every year…, at fixed dates (made ahead if wanted) or once the previous one is done.
- Search — every task you can see, by text, field values, comments or number (
TP-123), from the sidebar
or with Ctrl/⌘ + K, filtered by status, owner and task type.
- Import and export — a pipe's tasks as CSV or JSON, fields included; import a CSV file (columns matched,
previewed, checked line by line) or a Trello board.
- API and webhooks — personal access tokens for a documented API (
/api/v1, OpenAPI and Swagger UI), and
signed webhooks sending a pipe's task events to your tools.
- Your data, your account — download everything about you as a zip, delete your e-mail account (the history
keeps a “Deleted account”), and administrators of the instance can disable accounts.
- Sub-tasks, history, live updates, English, French, Spanish and Portuguese (Brazil and Portugal; a language is one file), light and dark themes.
TasksPipes was designed for an adult training centre, and its built-in pipe and task types follow that world:
course design, admissions, exams, Qualiopi quality, funding… But nothing ties it to training: the general,
sales, prospecting, communication and admin pipes fit any business, the software pipes fit product teams, the
personal life pipes and the Next action view make it a good household and personal to-do list, and the designer lets you create the
pipe and task types you need.
See the feature guide for the details.
The documentation is also online: taskspipes.com presents the project, and
doc.taskspipes.com hosts the guides of the docs/ folder.
Installation
TasksPipes runs as a single container next to a PostgreSQL database, behind an HTTPS reverse proxy. On a Linux
server, one command installs it — Docker too when missing (from Docker's official repositories), HTTPS with Caddy if
you wish — and sets up updates (in one click from the app, or with taskspipes-update) and, if you wish, automatic
backups (encrypted, copied to S3-compatible storage):
curl -fsSL https://raw.githubusercontent.com/j33f/TasksPipes/main/scripts/install.sh | sudo bash
Or by hand:
cp .env.example .env # then set APP_URL, APP_SECRET and POSTGRES_PASSWORD
docker compose up -d # the published image (ghcr.io/j33f/taskspipes); --build to build it from these sources
Please see the hosting documentation for the configuration in production: sign-in with Outline
(OAuth or API keys), e-mail accounts and invitations, language and security notes, and
backups, restore and moving to another server — taskspipes-backup,
taskspipes-restore, and taskspipes-transfer user@new-server to move an instance in one command.
以上为 README 的开头部分。其余内容请阅读原文。 查看完整 README ↗