Skip to content

thealternator89/protrack3

Repository files navigation

ProTrack 3 Logo

An Electron-based desktop application for Project Management, built with React 19 and TypeScript. ProTrack 3 helps you manage projects, tasks, and team members with a focus on local data persistence and a clean, responsive interface.

Features

  • Project Management: Create and track multiple projects with custom prefixes, start dates, and due dates.
  • Task Management: Comprehensive task tracking with descriptions, assignees, and statuses.
  • Task Hierarchy: Organize work by nesting tasks within one another.
  • Task Dependency Tracking: Manage task prerequisites and track what tasks are blocked by others.
  • Internal Notes: Maintain private, autosaving markdown notes for each task, separate from the external description.
  • Azure DevOps Integration: Import tasks from Azure DevOps and keep them synchronized with a single click.
  • People & Team Management: Maintain a directory of team members with custom profile colors for easy identification.
  • Customizable Statuses: Define your own workflow with custom statuses and identify which ones represent "New" or "Complete" states.
  • Local Persistence: All data is stored locally in a SQLite database, ensuring privacy and offline availability.
  • Modern UI: A polished interface built with Bootstrap 5 and FontAwesome.

Tech Stack

Getting Started

Prerequisites

  • Node.js (LTS recommended)
  • npm (comes with Node.js)

Installation

npm install

Running the Application (Development)

npm start

Packaging for Distribution

npm run package
# or
npm run make

Project Structure

.
├── migrations/         # SQLite database migration files
├── src/
│   ├── main/           # Main process logic (Node.js environment)
│   │   ├── ipc/        # Modular IPC registration handlers
│   │   ├── repositories/ # Repository layer for database access
│   │   ├── services/   # Business logic services (e.g., Azure DevOps)
│   │   ├── database.ts # Database initialization and migration logic
│   │   ├── index.ts    # Main process entry point
│   │   ├── preload.ts  # Preload script for IPC and secure bridge
│   │   └── window.ts   # Window management logic
│   ├── renderer/       # Renderer process (React environment)
│   │   ├── App.tsx     # Main React component & Routing
│   │   ├── components/ # Modular UI components
│   │   │   ├── shared/ # Reusable UI components (Modals, Spinners, generic entity forms)
│   │   │   └── settings/ # Tab components for the Settings view
│   │   ├── types.ts    # Renderer-specific types (imports from shared)
│   │   └── renderer.tsx # Renderer entry point (React mount)
│   └── shared/         # Common types shared between processes
│       └── types.ts    # Shared TypeScript interfaces
├── forge.config.ts     # Electron Forge configuration
├── tsconfig.json       # TypeScript configuration
└── webpack.config.*    # Webpack configurations

Architecture

ProTrack 3 follows Electron's best practices for security and performance. For a detailed breakdown of the system design, database schema, and IPC communication, see docs/ARCHITECTURE.md.

License

MIT

About

Manage projects, tasks, and team members with a focus on local data persistence and a clean, responsive interface

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages