Changelog
- 13ed89b Add CI and Soft-Serve workflows
- 00195a6 Add DefaultConfig and make NewServer take a config
- e1250b9 Add GH Actions comment
- 7c823a0 Add GitMiddleware
- e04b2ff Add README
- e939038 Add application-level margin
- ce295e9 Add example GIF to README
- de72557 Add example config to the README
- ff65f14 Add git MiddlewareWithKeys and MiddlewareWithKeyPath
- 08b1145 Add header art, badges, and footer stuff
- dcc2053 Add lint workflow
- 7a30848 Add logging to track repo loading
- 2a62d6a Add stats interface
- aa7323e Add title/clone info to repo pane
- a10d676 Adjust comments in default config and add some newlines
- bcbb569 Allow for README templates
- 189fdb5 Allow for direct linking to a repo
- 5ff41c0 Allow repos to be private / admin only
- 73edc31 Auth against users in config.yaml
- c09197a Auto set anon access if there's an init public key
- b29abf7 Auto-deploy smoothie
- fd2f9ec Break out Docker info in README
- 71196d8 Bump Bubble Tea to v0.19.0
- 0c2461b Bump Bubbles to v0.9.0
- f68dee9 Bump TF module to 0.3.1
- 49e5a69 Bump bubbbletea to v0.15.0
- a378647 Bump go to 1.17
- a750a28 Bump lipgloss again for new hidden borders
- 1dbf20d Bump lipgloss for auto-wrapping of words longer than the Width()
- c4118e2 Bump lipgloss for new frame measuring functionality
- 20eb8a9 Bump smoothie TF module to 0.1.4 to enable port 22
- 89d2aa8 Bump tf module and pass auth keys from secrets on deploy
- b369c96 Bump tf module to 0.3.2 to enable provisioning throughput
- a06b599 CD: Attempt on fixing auth keys
- 777ebb6 Cache repo bubbles
- 68c805c Change allow-no-keys to allow-keyless in config
- 9e9df52 Clean up config loading
- afb6cf8 Cleanup and reorganize styles, theming prep
- bc574b7 Cleanup, return errs
- f779018 Colorize repo title and clone command
- e37c139 Copy edits for default config comments
- 62b97cb Correct repo viewport height
- b1c983c Create LICENSE
- 45ec4a8 Create a config repo with defaults
- 5efc4b8 Display readmes WIP
- e198dc4 Don't allow cloning of
config
repo if anon isn't set to read-write - e8853f8 Don't detach docker run
- af11646 Don't run the Bubble Tea program if there are ssh commands
- 97fab1f Electrify active borders
- e63c2a1 Enable macOS and Windows builds and fix template name
- 51fe81b Export server.Reload()
- ba8c54e Fix CD
- b49194b Fix active border on selection box
- f2794d4 Fix authorized keys env var name
- d5a1b3c Fix duplicate commits
- a5cc766 Fix repo menu order
- e011b2a Force ANSI256 color
- 6f4f50e Force true color
- 6c1fa6c Generally "smooth" out style and layout
- c053bde Hard-wrap the clone command only for better output (no word-wrapping)
- ac3f0a6 Help menu, better handle dynamic widths
- 037aa75 Ignore windows arm64 in goreleaser
- 61d135d Implement GitHooks, fix collab repos
- 6d7752b Import auth keys from env vars
- 912de2f Include clone urls in default README
- d069006 Init
- e0eb757 List latest commits in bubble
- 07a0ffd Load README on repo menu entry active
- e228d7d Load repo by name
- daeb6bf Log server start
- 875f93d Log term value and win dim
- a5ea5b2 Make modules internal
- 3eb15e4 Menu no longer fills the available vertical space
- e938b1c Move ProgramOptions to BubbleTeaHandler
- 331c3bb Move main.go back to root
- a964f74 Move server into separate module
- e47e9a9 Only slack the channel on push to main
- 541e994 Pass ProgramOptions to Bubble Tea middleware
- 144efbb Populate git clone command above READMEs
- c61938d Push repo to beta.charm.sh
- 86140b2 Push vendor to git.charm.sh
- 5ca4b8d README copy edits
- d39936b Refactor RepoSource
- 4d5e35b Refactor into middleware and server packages
- aca1ca3 Refactor setupCmd and fix menu entries
- 35610a0 Remove RepoSource from config.Config and remove Server.AppConfig
- 4b93e2e Remove a magic number when determining repo height
- f9de1d3 Remove border from app box
- 8125eee Remove charm replace
- 2f4b76f Remove commitsLog
- af3e6ac Remove logError
- 6cf8348 Remove sessionHandler
- 1e101cf Remove windowChanges channel and pass tea.WindowSizeMsg to children
- a20c5a9 Remove wish replace and update deps
- e69529f Rename Model to Bubble
- 311886f Rename SOFT_SERVE_AUTH_KEY to SOFT_SERVE_INITIAL_ADMIN_KEY
- 031d796 Rename Stats interface to Callbacks
- 2cc93be Rename smoothie -> soft-serve
- 91962f1 Rename soft-serve binary in goreleaser
- 957762d Rename wish.WithMiddlewares -> wish.WithMiddleware
- 9cbdf62 Render readme with glamour
- 745ed4c Return errMsg when config is not set
- 6f287f0 Return errMsg when menu is zero
- a9e7701 Revert "ops: double cpu and ram to 2GHz/4GBs"
- 4c3bbb5 Run git update-server-info after creating default config
- ae2a71a Scrollable timeline for latest commits across all repos
- 9817bab Selection box, list repos, tab activate main boxes
- 73ccd13 Show "git clone" command in header, unless we're on config
- 07b2c9c Slack the CD workflow
- 583b01c Solve away a magic number when determining Glamour width
- b79f14c Style and help for the error state
- 7c23d17 Style footer/help
- ef421f5 Treat config as a bare git repository to keep consistency
- 22c47ee Truncate long lines in Glamour output to fix layout
- 943f941 Truncate long repos names in the menu
- d61ea80 Truncate repo names in repo detail header if needed
- 928d9b3 Update CI/CD for wish
- 5c0bb15 Update README
- d04958c Update README to match config changes
- b4d6c99 Update README with auth and config info
- 8266c38 Update TF backend bucket name
- d3b53f1 Update TF module to 0.2.1
- 0a01257 Update default text
- ed70d17 Update goreleaser config
- 1fac6ba Update goreleaser workflow
- 69ca930 Update hosted Soft Serve url
- 3246781 Update repo name
- 4faaf47 Update wish version
- 4f4f2a8 Update workflows
- 4c8ea73 Use Docker Hub image in README
- 9b1ba59 Use alt screen
- 77c72c0 Use authorized keys file to gate git write access
- 1e58693 Use config.json in config repo for menu and settings
- 2379314 Use goreleaser to build docker images
- cf5a2ed Use middleware for session handling
- 074eada Use new Wish auth WIP
- 0e4d562 Use soft-serve action
- eb1b2cb Use templatize function
- eabf167 Use unconditional wrapping to enforce a max width on Glamour output
- a5dec44 Use updated Wish middleware to set color profile
- 2b03117 Use wish middleware
- 9b3c681 Use wish options
- 2148bae User may have more than one public key
- 3f8c983 Wrap long clone commands
- 0db2ff2 config: move server config into its own package
- 478096c doc: typo on repository visibility
- ec7b3a7 fix warnings and remove unused variables
- 3471671 fix(git): PublicKeyHandler logic
- 88803aa fix: resize effect on unselected repos
- e91d12b go mod tidy
- 5772ffc go mod tidy
- b8339d9 goreleaser: add dockerhub registry prefix and setup qemu
- 8619bf2 goreleaser: add release footer and use github-native
- 2ffa026 goreleaser: use git changelog for now
- 7456678 h/l and left/right can also change focus
- eab969f ops: double cpu and ram to 2GHz/4GBs
- 8003ec2 readme: add running soft-serve as a container
- 7f83dc3 reload repos and config on start and on git push only
- bafd57b server: move server to its own package
- b4363df srv: export tui reload func
- c03b90b stats: more informative stats
- 6427b1e tui: make app config take server config
- d61ec5c workflow(goreleaser): clone internal repos
- 2f0fdf9 workflow(goreleaser): disable updating docker hub readme
- a61b7d9 workflow(goreleaser): set up docker buildx
- 29794a6 workflow: run goreleaser on tag push
- 65e7449 workflows(goreleaser): add packages permissions
- 4df78d7 workflows(goreleaser): run on version tags only
Docker images
docker pull docker.io/charmcli/soft-serve:v0.1
docker pull ghcr.io/charmbracelet/soft-serve:v0.1
docker pull docker.io/charmcli/soft-serve:v0.1.0
docker pull ghcr.io/charmbracelet/soft-serve:v0.1.0
Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter or The Fediverse.