A calendar tui written in go.
Find a file
2025-07-28 22:45:46 -04:00
calendar Initial Commit 2025-07-27 15:11:43 -04:00
cmd Initial Commit 2025-07-27 15:11:43 -04:00
config Initial Commit 2025-07-27 15:11:43 -04:00
internal added edit and delete event functions 2025-07-27 16:18:54 -04:00
proto Initial Commit 2025-07-27 15:11:43 -04:00
tui added screen clear between view changes 2025-07-28 22:45:46 -04:00
.envrc Initial Commit 2025-07-27 15:11:43 -04:00
.gitignore Initial Commit 2025-07-27 15:11:43 -04:00
flake.lock Initial Commit 2025-07-27 15:11:43 -04:00
flake.nix updated flake to have correct sha for vendoring and updated README to render properly 2025-07-28 19:43:28 -04:00
go.mod Initial Commit 2025-07-27 15:11:43 -04:00
go.sum Initial Commit 2025-07-27 15:11:43 -04:00
justfile Initial Commit 2025-07-27 15:11:43 -04:00
main.go Initial Commit 2025-07-27 15:11:43 -04:00
README.md updated flake to have correct sha for vendoring and updated README to render properly 2025-07-28 19:43:28 -04:00

go-cal-tui

TLDR;

A calendar tui written in go

Getting started

  • make sure you have nix and direnv installed
  • run direnv allow
  • start coding in your desired editor

Project structure

./
├── cmd
│   ├── root.go -> the entrypoint for your cli
│   └── version.go -> an example sub command
├── config
│   └── config.go -> viper configuration init
├── flake.nix -> project flake for packaging and devshell
├── go.mod -> go module config
├── go.sum
├── internal
│   └── logger
│       └── logger.go -> charmbracelet/log logger init
├── justfile -> rusty makefile used to ease development environment commands
├── main.go -> app entrypoint
├── README.md -> YOU ARE HERE.
└── tui
    ├── model.go -> bubbletea model data goes here
    ├── run.go -> tui entrypoint
    ├── update.go -> bubbletea model update functions go here
    └── view.go -> bubbletea view functions go here

Generating sub-commands

use cobra-cli to generate sub-commands