8000 GitHub - pschwartz/devlog: The software development log to reflect and capture your thoughts, progress and TODOs.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
forked from automoto/devlog

The software development log to reflect and capture your thoughts, progress and TODOs.

License

Notifications You must be signed in to change notification settings

pschwartz/devlog

 
 

Repository files navigation

Dev Log

CircleCI

The software development log to reflect and capture your thoughts, progress and TODOs.

Devlog's goal is to help you create a "Development Log" to reflect and generate notes during and after a coding session.

What is a Development Log?

A development log is a like a software development journal that you fill out during and after a coding session. It's great for reflecting on how coding sessions went, doing brain dumps and documenting TODOs.

Filling out these type of "development logs" and notes about coding sessions is inspired by the note taking practices of prolific Doom/VR developer John Carmack. This can also be useful when paired with a "shutdown routine" at the end of an intense work session to help us mentally disconnect. More about "shutdown routines": [1][2].

What is Devlog?

Devlog generates a time stamped, customizable, "development log" markdown file to a directory you specify. You can save your devlog files into a git repository or to a cloud file service directory like dropbox, google drive, or one drive for automated syncing and backup.

Devlog prioritizes:

  • Open standards over closed. Keep your notes in markdown files that can be queried for easily in a directory, not locked into some vendors service or custom formatting standards.
  • Ease of use and simplicity. This is not meant to be a complex static content generator. It strives to be an easy to configure and create customizable markdown files to fill out in a text editor of your choice.

Install

The easiest way to install devlog is to use the provided installation script

wget https://raw.githubusercontent.com/automoto/devlog/master/scripts/get-devlog.sh
# you're welcome to examine the script, it just grabs the latest release from github for your OS and installs it
sh get-devlog.sh

If you prefer to install it yourself, you can get the latest release binary directly from github https://github.com/automoto/devlog/releases and extract it to your /usr/local/bin.

Install Usin 9224 g Go

If you already have an updated version of go lang, installing via go is easy: go get -u github.com/automoto/devlog/

Using Devlog

Ideally you will run Devlog during or towards the end of your development session and it will be filled out with your notes and answers to the questions when your finished. The "Notes" section at the bottom is great for TODOs or other information you want to keep. Here is an example of a filled out devlog.

Devlog is designed to automate generating a development log markdown file for you to fill out in your favorite text editor. Once you have installed it, just type devlog and it will generate a time stamped markdown document.

# Generate a markdown document log in the current directory
devlog

# Output the log document to your terminal instead of a document
devlog -p 'stdout'

By default, it returns the path of the document created so you can input this into a text editor easily. Here is a way you can generate a markdown document and open it in some popular text editors:

# create a new Devlog file and open it in SublimeText
subl `devlog | tail -n 1`

# create a new Devlog file and open it in vim
vim `devlog | tail -n 1`

# create a new Devlog file and open it in nano
nano `devlog | tail -n 1`

Configure

By default devlog will generate a markdown file in the current directory unless you specify the directory via setting environment variables or through command line options you set.

Configuration using environment variables:

Set the directory to save devlog files to:

export DEVLOG_DIR="/home/your_username/your_directory"

Set the default template for your devlog files content:

export DEVLOG_CONTENT="/home/your_username/your_directory/custom.gohtml"

You can override this by temporarily setting the value when calling devlog

DEVLOG_DIR="/home/your_username/other_directory" devlog
Configuration using command line options:

You can also pass in configurations via command line options. Command line options take precedence over configurations set via environment variables.

devlog -p "/home/your_username/your_directory" -t "/home/your_username/your_directory/custom.gohtml" 

To view all the possible command line options, just pass in the -h command line option for help e.g. devlog -h

Customizing questions and content of Devlog

You can customize the content of your markdown document by creating a .gohtml file and specifying your custom content there.

### Development Log
*created: {{.FormattedCurrentTime}}*

##### Notes

**TODO**

- [ ]
- [ ]

note you will need to include {{.FormattedCurrentTime}} in your template for it to work.

Now you can pass in your configuration file to devlog:

devlog -t your_custom_questions_file.gohtml

Building Locally

Prerequisites:

  • go lang version 1.13

Simply clone this repository and run the following command to build the binary:

make build

This will create a binary locally you can run commands against already, like so:

./devlog

Build and copy the binary to your local bin to access the CLI anywhere. It will likely prompt you for a password since it's needed to install things to your /usr/local/bin.

make install

Now you can run the command devlog from anywhere to generate a new devlog file:

devlog
2019/09/02 22:00:32 Successfully saved dev log to directory: /home/dev/null

Contributing

The Makefile has most of the commands you need to build, lint, and run the tests locally.

Fork and create a pull-request if you wish to contribute a fix or improvement to Devlog.

A contributor will build your PR in circle-ci and review the change. Please include unit tests and a description of the change in your pull request.

About

The software development log to reflect and capture your thoughts, progress and TODOs.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 79.0%
  • Shell 12.8%
  • Makefile 8.2%
0