/devscriber

A fun, learning project that aims to provide a personal scribe to developers in the form of a Golang command-line tool.

Primary LanguageHTMLGNU General Public License v3.0GPL-3.0

DevScriber
DevScriber

A personal scribe for the lazy developer. 😏


Visit DevScriber for the full documentation, examples and guides.

License: GPL v3 GitHub language count GitHub contributors GitHub repo size GitHub repo file count (file type)

DevScriber aims to provide a personal scribe to developers in the form of a command-line tool to simplify the documentation process.

For all intents and purposes, this is a fun, learning project. The goal is to build a consistent practice of daily Golang development. If development of the tool advances to the point of practical use, that would be an added bonus.

The planned features for DevScriber at the time of writing are as follows:

README.md file generator
CHANGELOG.md file generator
CONTRIBUTING.md file generator
CODE_OF_CONDUCT.md file generator
RELEASE_NOTES.md file generator
⭐ GitHub user profile README.md file generator
⭐ File updater (used to replace existing files)
⭐ Customizable filenames, titles, images and shield badges

Installation

The easiest way to install Devscriber is by downloading the appropriate pre-build binary for your system from the GitHub release page.

Usage

+-+-+-+-+-+-+-+-+-+-+
|D|e|v|S|c|r|i|b|e|r|
+-+-+-+-+-+-+-+-+-+-+

Usage: devscriber [OPTIONS]...

Options:
    -all
        Generates all available document templates when true (default: false)
    -imageUrl string
        Url of image to use to decorate the document (default: ./assests/default_image.png)
    -name string
        Name of the new document (default: README_[TIME_STRING].md")
    -template string
        Template type to base the new document on
        Available templates: changelog, codeofconduct, contributing, readme, releasenotes (default "readme")

Testing

# Running Tests
ginkgo
# or
go test

# Running Code Coverage Scripts
$ go test -coverprofile=coverage.out ./...
$ go tool cover -func=coverage.out
$ go tool cover -html=coverage.out

Fun Facts

This project is intended for personal use, but I still wanted to give it a meaningful name and custom icon to make it feel more official. There are a few hidden meanings in the tool's name:

  • The tool's purpose is to make the creation of common development documentation easier, thus it is a scribe to developers or a dev's scribe.
  • DevScribe was the first option but DevScriber had a better ring to it and still makes sense.
    • ...a scriber is a tool used to mark materials like wood, steel, metal or plastics. Similarly, documentation marks the code that developer's write.
  • DevScribe (DevScriber) is also a cute play on the word describe (describer).

Also, all design credit for the DevScriber logo and default image is due to the new AI-powered Bing Search Engine.

Acknowledgements

Special thanks goes to Ulises Martinez, who provided the inspiration for this project. Thank you for acknowledging the effort I put into including READMEs with each of my GitHub repositories and inspiring me to make it easier for others to do the same.

License

GNU General Public License 3.0, see LICENSE.