Ticky is a modern, feature-rich task management system with Kanban-style boards, built using ASP.NET Core Blazor. It is designed to help you manage your projects and tasks efficiently, whether for personal use or team collaboration. Ticky is fully open-source and free to use (and will always be), with a focus on simplicity and usability.
You might be thinking, "Another Kanban app?" and that's fair! As someone who navigated between Trello for personal tasks and commercial projects, and Jira at work, I often found myself searching endlessly for "power-ups" that eventually turned into paid features, or trying open-source solutions that didn't quite hit the mark on what I needed or simply lacked the right feel. Ticky was born from that experience - a desire to build something truly comprehensive, intuitive, and always accessible. It's my answer to those frustrations, and it means Ticky will always be free and fully open-source.
Ticky is packed with powerful features designed to make your task management seamless and enjoyable:
- Projects: Create and manage projects to group your boards.
- Boards: Create and manage your own Kanban boards. You can even make them favorites to stay atop the list.
- Columns: Each board can have any amount of columns, all of which are collapsible. You can specify a max card limit, automatically mark the cards within the column as finished and automatically order them.
- Cards: Create, edit, and move task cards between columns with drag-and-drop functionality. At a glance see all important information about a card.
- Subtasks: Break down tasks into smaller, manageable subtasks with completion tracking.
- Deadline Management: Set and track deadlines with color-coded indicators.
- Time Tracking: Track time spent on tasks with built-in timer functionality.
- Labels and Priorities: Organize tasks with custom labels and priority levels. Label colors are fully customizable.
- Attachments: Upload and manage files associated with tasks.
- Reminders: Set email reminders for tasks.
- Task Linking: Link related tasks together (Jira-like).
- Activity Tracking: Monitor all changes and activities on tasks.
- Comments: Leave comments on cards to discuss and provide other useful information.
- User Management: You can add users on the project level or on the board level, choosing between a Member and an Admin role.
- Admin Panel: For creating, editing and deleting users as an admin. Mostly for when not using SMTP.
- Email Notifications: Receive notifications for deadlines, and reminders.
- Progress: Track your progress within a board by seeing how many tasks have already been completed.
- App-wide Search: Find cards from other boards based on their unique identificator (like TEST-1), jump directly to them.
- Recent board: Immediately go back to your most recent board.
- Auto-generated avatars: To make things more colorful.
- Able to do fully offline: Ability to run fully offline, disabling the avatar service, having all the files bundled on the server and not using SMTP.
- ... and more!
I'm constantly working to make Ticky even better! Here's a glimpse of what's in my plans:
- Snooze cards
- Repeat cards
- Mobile version
- Real-time updates
- Swimlanes
- Docker Compose
- SMTP Server for email notifications
- Create a
docker-compose.yaml
file, if you'd like to skip SMTP, either useSMTP_ENABLED=false
or comment out the SMTP section of the environment variables:
services:
ticky-app:
image: ghcr.io/dkorecko/ticky:latest # or pin to a specific version (like v1.0.0) for manual updates
container_name: ticky-app
ports:
- "4088:8080"
restart: unless-stopped
volumes:
- ./data/app/uploaded:/app/wwwroot/uploaded
environment:
- DB_HOST=ticky-db
- DB_PASSWORD=your-secure-password
#- FULLY_OFFLINE=true # Uncomment this if you want to disable the avatar service and run fully offline.
- SMTP_ENABLED=true # Change this to false to ignore SMTP configuration and disable SMTP setup. Resetting password via typical password reset won't work (will need to be reset by an admin via the Admin Panel), as well as reminders and notifications. Can be enabled at any time.
- SMTP_HOST=your-smtp-host
- SMTP_PORT=your-smtp-port
- SMTP_DISPLAY_NAME=Ticky
- SMTP_EMAIL=your-email@example.com
- SMTP_USERNAME=your-smtp-username
- SMTP_PASSWORD=your-smtp-password
- SMTP_SECURITY=true
depends_on:
ticky-db:
condition: service_healthy
ticky-db:
image: mysql:8
container_name: ticky-db
restart: unless-stopped
environment:
MYSQL_DATABASE: ticky
MYSQL_USER: ticky
MYSQL_ROOT_PASSWORD: your-secure-password
MYSQL_PASSWORD: your-secure-password
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
timeout: 2s
retries: 30
volumes:
- ./data/mysql:/var/lib/mysql
-
Fill out environment variables within the
docker-compose.yaml
file,your-secure-password
must be the same betweenMYSQL_PASSWORD
andDB_PASSWORD
. -
Run with Docker Compose:
docker-compose up -d
-
Access the application at:
http://localhost:4088
. Then, you can log in to the default admin account withadmin@ticky.com
and passwordabc123
. You will be prompted to change these right away (after changing, the app will log you out, so just use your new credentials to log in). Depending on whether you enabled SMTP or not, other users will either be able to create an account themselves (if SMTP is enabled) or you will need to create accounts for them.
-
Clone the repository:
git clone https://github.com/dkorecko/Ticky.git cd Ticky
-
Set up your environment variables.
-
Run the application:
dotnet run --project Ticky.Web/Ticky.Web.csproj
- Ticky.Base: Core entities, models, and shared components.
- Ticky.Internal: Data access, services, and business logic.
- Ticky.Web: Blazor web application, UI components, and user interface.
The application automatically applies migrations on startup.
dotnet build
dotnet test
dotnet watch
The project includes GitHub Actions workflows for CI/CD:
- Automated builds and tests on pull requests
- Docker image publishing to GitHub Container Registry (GHCR) on releases
Contributions are welcome! See the CONTRIBUTING.md file for details.
This project is licensed under the MIT License - see the LICENSE file for details.
- Blazor - Web framework used
- Entity Framework Core - ORM used
- TailwindCSS - CSS framework
- Font Awesome - Icons
- Sortable.js - Drag-and-drop functionality
Have questions or feedback? I'd love to hear from you! Please feel free to open an issue on this repository.
Made with ❤️