Cave Logger

Date: 2019-11-10
Last Updated: 2020-09-08
#Programming #Caving
GitHub: cave-logger | Homebrew Tap: idlephysicist/caving


I used to keep track of what caves I have visited (and who I go with) using an Excel Workbook. I decided (in 2017) to write a program to do this for me because why not ?!

Come 2019, I started to use Go at work, and I finally go around to looking at this project again.


A screen shot of the Trips view of cave-logger v2.0.0-a1


The app is fairly basic, it gives the user the ability to create, update and delete entries for trips, cavers, and caves.

I have been able add autocomplete options to most of the form dialogs, with the exception of the Names field in the create/modify Trip form dialog. I could likely write a whole post on why I cannot (currently) implement this autocomplete dialog.

The library which I am utilising, cview (a fork of tview), was not designed with my use case in mind. The Names field uses commas to separate the names entered on the form. While it is relatively straight-forward to make the form widget display/suggest the known names based on the input since the last comma, it is a little more difficult to have the widget input that suggestion and keep the previous names.

Version 2 is in an alpha stage and features a “redesigned” layout that I hope will be more user friendly. On the table still are better functions for extracting useful statistics from the user’s data. More info on this can be found in the GitHub repo.