• Stars
    star
    231
  • Rank 173,434 (Top 4 %)
  • Language
    Go
  • License
    MIT License
  • Created about 2 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Like a fitness tracker for your coding sessions

Code Harvest

I use this project to derive metadata from my coding sessions. Some of it can be viewed on my website:

Screenshot of website

Screenshot of website

The project includes a server that operates in the background as a daemon. It receives remote procedure calls from neovim pertaining to events such as the opening of buffers, windows gaining focus, the initiation of new neovim instances, etc:

logs.mov

As you can see in the video above, each instance of neovim establishes a new coding session. This leads to the creation of several sessions per day. Every session is stored temporarily on the file system. This is primarily to avoid surpassing any limits set by free database tiers. There is a CLI which can be used to subsequently cluster these sessions by day, week, month, and year. The results are then written to a more permanent storage:

aggregate.mov

The neovim plugin that I've created for sending the remote procedure calls can be found here.