update readme

This commit is contained in:
Robin Olsen
2026-02-10 20:40:33 +01:00
parent 4c856a5915
commit 478e81b42d

View File

@@ -14,7 +14,7 @@ LazyPM is a lightweight project management system that provides three interfaces
## Features
- Issue tracking (bugs, features, tasks, epics, chores)
- Status management (open, in-progress, blocked, deferred, closed)
- Status management (open, in-progress, closed)
- Dependency tracking between issues
- Labels and comments
- Statistics and reporting
@@ -22,12 +22,19 @@ LazyPM is a lightweight project management system that provides three interfaces
## Quick Start
### Prerequisites
- Go 1.25.6+
- Make
### Installation
```bash
# Install dependencies
go mod tidy
```
### Install make
### Make Installation
Linux:
```bash
@@ -43,41 +50,64 @@ winget install --id chocolatey.chocolatey --source winget
choco install make
```
### Available make commands
## Build Commands
```bash
# Build all interfaces
make build
# Build all binaries
make build # Creates bin/pm, bin/tui, bin/web
# Run CLI
make cli
# Run TUI
make tui
# Run Web interface
make web
# Run specific interfaces
make cli # Run CLI interface
make tui # Run TUI interface (interactive)
make web # Run Web server (localhost:8080)
# Development with hot reload
make dev
make dev # Watch templ files and auto-reload web
make tw # Watch Tailwind CSS changes
make watch # Run both dev and tw in parallel
# Maintenance
make tidy # Run go mod tidy
make clean # Clean build artifacts
# Install
make install-cli # Install CLI with shell completions
make completions # Generate shell completion scripts
```
## Project Structure
```
├── cmd/ # Entry points (cli, tui, web)
├── internal/ # Core services and models
├── pkg/ # Public packages (CLI, TUI, Web)
└── .pm/ # Local data storage
├── bin/ # Compiled binaries
├── cmd/ # Entry points
├── pm/ # CLI main.go
│ ├── tui/ # TUI main.go
│ └── web/ # Web server main.go
├── internal/ # Core implementation
│ ├── models/ # Data models (beads types)
│ ├── service/ # Business logic (beads, statistics)
│ └── storage/ # Data persistence
├── pkg/ # Public packages
│ ├── cli/ # CLI commands and REPL
│ ├── tui/ # TUI views and components
│ └── web/ # Web handlers, templates, assets
└── .pm/ # Local data storage (gitignored)
```
## Requirements
- Go 1.25.6+
- SQLite
## Dependencies
## Technology Stack
- [Go](https://golang.org/) 1.25.6 - Backend language
- [Cobra](https://github.com/spf13/cobra) - CLI framework
- [templ](https://github.com/a-h/templ) - HTML templating
- [beads](https://github.com/steveyegge/beads) - Issue tracking engine
- [Bubbletea](https://github.com/charmbracelet/bubbletea) - TUI framework
- [Lipgloss](https://github.com/charmbracelet/lipgloss) - Terminal styling
- [Templ](https://github.com/a-h/templ) - HTML templating
- [Tailwind CSS v4](https://tailwindcss.com/) + DaisyUI - Web styling
- [Beads](https://github.com/steveyegge/beads) - Issue tracking engine
## Configuration
LazyPM stores data in a local `.pm` directory:
- `.pm/db.db` - SQLite database for issues
- `.pm/stats.json` - Statistics storage
The directory is automatically created on first run.