93d2572
doc: update readme
Ayman Bagabas created
93d2572
doc: update readme
Ayman Bagabas created
32bdd5b
feat(git): UpdateServerInfo on push
git update-server-info generates the repository's refs needed for the git http server
Ayman Bagabas created
68feddf
feat: specify custom readme file
* Optionally specify per repo readme file path in config * Default to "README*" glob and choose the first glob match * Refactor code and move stuff around Fixes: https://github.com/charmbracelet/soft-serve/issues/31
Ayman Bagabas created
8ad99d8
refactor(git): use repo path instead of name
Ayman Bagabas created
80df7f4
fix: style adjustments
* Adjust spinner and no readme comment margins
Ayman Bagabas created
0b3479f
fix(tui): show error on empty readme and empty tree
Ayman Bagabas created
8a57c24
fix(tui): selecting an item in an empty git tree
Ayman Bagabas created
66a64cf
fix: update bubbles window size on change
Ayman Bagabas created
602b14c
feat: add tui pagination
Ayman Bagabas created
3795020
feat: show spinner when loading a large commit diff
Ayman Bagabas created
141138a
docs: add example images for TUI and file/dir printing
* add image showing file/dir printing * add TUI image
Christian Rocha created
192c4d9
Add `SOFT_SERVE_HOST` and `SOFT_SERVE_BIND_ADDRESS` docs
Toby Padilla created
91fd3fe
Add TUI commands and file printing features to README
Toby Padilla created
56bacc1
fix: start line numbers at 1 (was a regression)
Christian Rocha created
a43daef
fix: don't print extra newlines when printing with line numbers
Christian Rocha created
e267bc9
chore: adjust line number coloring
Christian Rocha created
752d67a
feat: add server host to config
server host `SOFT_SERVE_HOST` is the broadcast address to the server
Ayman Bagabas created
22a98f9
fix: cat mw: print err if repo not found
Ayman Bagabas created
c5fc8b2
feat: cat middleware: list directory entries
Ayman Bagabas created
fd04680
fix: change cat lineno color and style
Ayman Bagabas created
eaf9f4b
feat(tui): only show branches and tags
Ayman Bagabas created
f67596d
fix: handle repos with no README.md file
Toby Padilla created
f3e2b7f
refactor: rename variables
Ayman Bagabas created
352b06d
fix: lazy load git tui bubbles
Ayman Bagabas created
61a8eb1
fix: don't block on git push waiting for config reload
Ayman Bagabas created
6b86cf7
refactor(tui): rename variables and fix ling warnings
Ayman Bagabas created
8fa4404
fix: cache git trees and commits
Ayman Bagabas created
4392caa
refactor: git Repo interface naming
Ayman Bagabas created
286dedb
fix: cache repo references
Ayman Bagabas created
3308f43
fix(tui): cache ref commits and track annotated tags
* Keep track of the selected ref in each bubble * Lazy cache commits of each ref on demand * Find the target hash of annotated tags
Ayman Bagabas created
73fd14e
docs: update man page
mango 🤖 created
0069c36
docs: update man page
mango 🤖 created
c251203
ci: add manpage workflow
Christian Muehlhaeuser created
c508766
fix: go mod tidy
go mod tidy -go=1.16 && go mod tidy -go=1.17 Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
Carlos A Becker created
2179011
Generate man page when built with 'mango' build-tag
When building with the 'mango' build-tag (go build -tags mango) enabled, we will simply generate and print a man-page on startup and immediately exit again.
Christian Muehlhaeuser created
ead1d7c
Disable config repo file display
Toby Padilla created
7d76a60
feat: render markdown files using glamour
Fixes: https://github.com/charmbracelet/soft-serve/issues/87
Ayman Bagabas created
835660c
fix: change git tui navigation keys
A (about) -> R (readme) R (refs) -> B (branches) L (log) -> C (commits) T (tree) -> F (files)
Ayman Bagabas created
fa7616f
fix: rename bubble helper for clarity
Ayman Bagabas created
a0cc4ea
fix: reset tree after switching refs
Fixes: https://github.com/charmbracelet/soft-serve/issues/86
Ayman Bagabas created
8511038
Simplify help, disable navigation options on config repo
Toby Padilla created
078761f
fix: skip parsing empty initial admin keys
Ayman Bagabas created
f290a82
chore: go mod tidy
Ayman Bagabas created
8c4370c
Use -c/--color for syntax highlighting and -l/--lineno/--linenumber for
line numbers
Toby Padilla created
9ea2a7e
feat: display files middleware
sshing with a filepath in a non-interactive terminal spits out the file content with the option of syntax highlighting and line numbers
Ayman Bagabas created
4fab795
feat: new git tui
* Separate tui bubbles based on functionality * Wrap gitui bubble in another bubble * Move readme bubble to git/about * Add tree/log/refs bubbles * View changes from a specific branch * Browse git tree and logs based on selected branch * Display commit message, stats, and patch * Display selected branch in footer * Display file size and permissions in tree * Omit displaying binary and large files in tree * Omit displaying long diffs in log * Use reflow to wrap and truncate long strings * Sort tree files by name * Sort refs by name * Sort log by date git/tree: * Use bubbles/list to list tree files * Display file size, mode, and title * Use bubbles/viewport to display file content * Omit displaying binary and large files * Use glamour/ansi to render and highlight file contents * Use go-humanize to display file size git/refs: * Use bubbles/list to display repository branches * Propagate selected branch to parent bubble git/log: * Display branch commit log * Truncate long commit titles * Use bubbles/list to display commits * Use bubbles/viewport to view commit * Display commit author, date, hash, and message * Display commit diff * Use glamour/ansi to highlight commit diff * Use go-humanize to display commit stat summary git/types: * Define constants * Define interfaces * Helper functions
Ayman Bagabas created
dd8e7bc
feat: recover from middleware panics
* Disable bubbletea catching panics * Bubble up bubbletea panics to soft-serve * Add errorLog to Config
Ayman Bagabas created
57b1eff
fix: rename host to bind address
and use env to apply defaults
Ayman Bagabas created
8e032c2
fix: chroma portions of glamour renders that could break layout
Christian Rocha created
6ac16a7
Update README footer
Christian Rocha created