cli/pkg/display/docs/development.md
Snider 4e02d5bc97 refactor: bring external packages home and restructure
- Imported packages from separate repos:
  - github.com/Snider/config -> pkg/config
  - github.com/Snider/display -> pkg/display
  - github.com/Snider/help -> pkg/help
  - github.com/Snider/i18n -> pkg/i18n
  - github.com/Snider/updater -> pkg/updater
- Moved core code from root to pkg/core
- Flattened nested package structures
- Updated all import paths to github.com/Snider/Core/pkg/*
- Added Display interface to Core
- Updated go.work for workspace modules

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 15:30:43 +00:00

1.3 KiB

Development Guide

This guide covers how to set up the development environment, build the project, and run the demo.

Prerequisites

  1. Go: Version 1.25 or later.
  2. Node.js & npm: For building the Angular frontend.
  3. Wails Dependencies:
    • Linux: libgtk-3-dev, libwebkit2gtk-4.1-dev
    • macOS/Windows: Standard development tools (Xcode Command Line Tools / build-essential).

Setup

  1. Clone the repository:

    git clone https://github.com/Snider/display.git
    cd display
    
  2. Install Go dependencies:

    go mod tidy
    
  3. Install Frontend dependencies:

    cd ui
    npm install
    cd ..
    

Running the Demo

The project includes a CLI to facilitate development.

Serve Mode (Web Preview)

To start a simple HTTP server that serves the frontend and a mock API:

  1. Build the frontend first:
    cd ui && npm run build && cd ..
    
  2. Run the serve command:
    go run ./cmd/demo-cli serve
    
    Access the app at http://localhost:8080.

Building the Project

Frontend

cd ui
npm run build

Backend / Application

This project is a library/module. However, it can be tested via the demo CLI or by integrating it into a Wails application entry point.

To run the tests:

go test ./...