Skip to content

rusnakdima/TaskFlow

Repository files navigation

Task Flow

Task Flow is a productivity application built with Tauri that helps users manage and organize their tasks efficiently. The application provides a clean, intuitive interface for creating, tracking, and completing tasks with cross-platform support.

Screenshots

Spoiler
Authentication

Login page

Login

Sign Up page

Sign Up

Reset Password page

Reset Password
Main Views

Home page

Home

Projects page

Projects

Profile page

Profile

About page

About
Task Management

Tasks List

Tasks List

Subtasks List

Subtasks List

Kanban Board

Kanban Board
Features

Calendar View

Calendar

Statistics

Statistics

Categories

Categories

Sync Settings

Sync

Shared Tasks

Shared Tasks

Installation

Checking the installed tools to launch the project

First make sure you have Node.js and Bun installed. To do this, open a command prompt or terminal and type the following commands:

node -v
npm -v

If you are using the bun package manager, then run this command:

bun -v

Installation dependencies

After that, go to the folder with this project and run the following command:

npm install

If you are using the bun package manager, then run this command:

bun install

Checking the Rust compiler

In order to run a Rust application, you need to make sure that you have a compiler for Rust. To find out if you have one, enter the following command:

rustc --version

If you get an error instead of a version, it means that you don't have a Rust compiler. In order to set it up, go to the official website and follow the instructions on the website.

Usage

After installing the dependencies, use the following command to run, depending on the package manager you are using:

npm run tauri dev

Or

bun run tauri dev

Build Optimization

This project includes several optimizations to reduce build times and avoid unnecessary recompilation of Tauri components:

Smart Build Scripts

Use the optimized build scripts that only rebuild components when source files have changed:

# Build desktop application (only rebuilds if files changed)
bun run build:smart

# Build desktop debug version
bun run build:smart:debug

# Build Android APK (only rebuilds if files changed)
bun run build:smart:android

# Build Android APK debug version
bun run build:smart:android:debug

# Clean all build artifacts and cache
bun run build:clean

Traditional Build Scripts

For comparison, traditional build scripts are still available:

# Standard desktop build (always rebuilds everything)
bun run tauri:build

# Android APK build
bun run tauri:build:android:apk

# Android AAB build
bun run tauri:build:android:aab

Build Optimizations Applied

  1. Incremental Compilation: Rust code uses incremental compilation to avoid recompiling unchanged code
  2. Smart Frontend Building: Frontend is only rebuilt when source files change
  3. Optimized Codegen Units: Development builds use 16 codegen units for faster compilation
  4. Build Caching: Build timestamps are tracked to determine what needs rebuilding
  5. CI/CD Integration: The same optimized build script works in GitHub Actions for consistent builds across all platforms (desktop, Android, iOS)

Authors

License

This project is licensed under the MIT License.

Contact

If you have any questions or comments about this project, please feel free to contact us at rusnakdima03@gmail.com.

About

TaskFlow is a comprehensive, cross-platform task management application built with Tauri, Angular, and Rust. It offers powerful task organization features including hierarchical tasks with subtasks, categories, todo lists, calendar views, progress tracking with statistics, authentication and cloud synchronization

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors