Neon Lift is a simple command-line application to remind you to alternate between standing and sitting positions while working at a standing desk. In addition to its functionality, this was created to help learn more about Bubble Tea and Lip Gloss.
- Customizable standing and sitting durations.
- Visual progress bar.
- Audible alert when it's time to change positions.
- Pause and resume functionality.
To run the application, use the following command:
go run main.go
You can customize the application using the following command-line flags:
go run main.go -stand=45m -sit=15m -sound=true -desktop=true -icon=/path/to/icon.png
Available options:
-stand
: Duration for standing (default: 30m)-sit
: Duration for sitting (default: 60m)-sound
: Enable sound notifications (default: true)-desktop
: Enable desktop notifications (default: true)-icon
: Path to notification icon for desktop notifications (optional)
Press 'Enter' to start, 'Space' to pause, and 'Q' to quit the application.
You can build and run the application using Docker. First, build the Docker image:
docker build -t neonlift .
Then, run the application in a Docker container:
docker run --rm neonlift
You can also pass command-line flags to customize the application:
docker run --rm neonlift -stand=45m -sit=15m -sound=true -desktop=false
To run all tests in the project:
go test ./...
To run tests for a specific package:
go test ./model
go test ./notification
go test ./timer
To run tests with coverage report:
go test -cover ./...
For a detailed HTML coverage report:
go test -coverprofile=coverage.out ./...
go tool cover -html=coverage.out