dev

module
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 21, 2020 License: MIT

README

Dev

pipeline status github tag (latest semver) maintainability test coverage

Dev aims to improve the developer experience through a CLI tool.

This tool exists to improve the day-to-day work experience of software developers. Use this to:

  1. Improve onboarding through defining required software in code
  2. Improve productivity through a background service that integrates with your platforms

You can:

  • ✅ Check if you have required software - dev check software
  • ✅ Check if you have required network connectivity - dev check networks
  • ✅ Check if you have required repositories - dev check repos
  • ✅ Search for and go to links within your project - dev goto
  • ✅ Get work assigned to you - dev get work
  • ✅ Get notifications from developer platforms - dev get notifications
  • ✅ Get notifications on your desktop
  • ✅ Get notifications on your telegram
  • ✅ Open the website of repository you're in - dev open repo
  • ✅ Be l33t by using aliases that become simpler as you use them (example: from dev get notifications to dev get notifs to dev g n)

Table of Contents


Installation

Via Git Repository

Clone this repository and run make install_local.

Via Github Releases

Go to the Releases tab of the Github repository.

Other Ways

Coming soon!


Usage

Overview

The following is an overview of what can be done:

# check stuff
#############
dev check software; # checks if required software is installed
# l33t: dev c sw

dev check networks; # checks if required network access is available
# l33t: dev c nw

dev check repositories; # checks if required repositories are available locally
# l33t: dev c r


# retrieving account information 
################################
dev get github account; # from github
# l33t: dev g gh a

dev get gitlab account; # from gitlab
# l33t: dev g gl a

dev get pivotaltracker account; # from pivotal tracker
# l33t: dev g pt a

dev get trello account; # from trello
# l33t: dev g tr a


# retrieve notifications
########################
dev get gitlab notifications; # from gitlab
# l33t: dev g gl n

dev get pivotaltracker notifications; # pivotal tracker
# l33t: dev g pt n


# retrieve your work 
####################
dev get work pivotaltracker; # from pivotal tracker
# l33t: dev g w pt

dev get config; # retrieve consumed configuration
# l33t: dev g c

# initialise persistent database
################################
dev initialise database;

# initialise telegram notification integration
##############################################
dev initialise telegram notifications;

dev open repository; # opens the website of the repository you're currently in
# l33t: dev o r

dev start client; # starts the desktop client helper application
# l33t: dev s

Canonical Tokens

Nouns
Object Canon Aliases
Account account accounts, acc, accs, a
Client client cl
Configuration configuration config, conf, cf, c
Database database db
Gitlab gitlab gl
Github github gh
Network network networks, net, nets, nw
Notifications notifications notification, notif, notifs, n
Repository repository repo, rp, r
PivotalTracker pivotaltracker pivotal, pt
Server server syncer
Software software sw, s, apps
System Info sysinfo system-info, system, si
Telegram telegram tg, t.me
Trello trello tr
Work work stories, tasks, tickets, w
Workspace workspace ws
Verbs
Action Canon Aliases
Check check c, verify
Debug debug test
Get get retrieve, g
Initialise initialise initialize, init, i
Install install setup
Open open op, o
Start start st, s

Logs Output

Labelled logs are sent to stderr and unlabelled logs are sent to stdout. Pipable output is typically sent to stdout so you can pipe or stream it to another IO source, logs that indicate inner workings of the application are sent to stderr.

  • To pipe the stdout logs only, use the > operator (stderr logs will be sent to terminal).
  • To pipe the stderr logs only, use the 2> operator (stdout logs will be sent to terminal).
  • To pipe all logs use the &> operator.

Configuration

See the documentation on Configuration for more information.

Platforms

Github
Setting Up

Retrieve your accessToken by generating a new personal access token from https://github.com/settings/tokens. You'll need the following scopes:

  • repo:status
  • repo_deployment
  • public_repo
  • repo:invite
  • read:packages
  • read:org
  • read:public_key
  • read:repo_hook
  • notifications
  • read:user
  • read:discussion
  • read:enterprise
  • read:gpg_key
Gitlab

Retrieve your accessToken by generating a new personal access token from https://gitlab.com/profile/personal_access_tokens. You'll need the following scopes:

  • api
  • read_api

If you're using an on-premise Gitlab, change gitlab.com to your Gitlab's hostname

PivotalTracker

See the Pivotal Tracker integration for more information.

Trello

See the Trello Integration for more information.

Telegram

See the Telegram Integration for more information.


Development Notes

See the documentation on Development Notes for more information.


Licensing

Code is licensed under the MIT license. Click here to view the full text.

Directories

Path Synopsis
cmd
dev
internal
config
Package config defines the structure of the configuration for the `dev` tool.
Package config defines the structure of the configuration for the `dev` tool.
constants
Package constants consists of constants used throughout the `dev` tool.
Package constants consists of constants used throughout the `dev` tool.
db
log
pkg
github
Package github contains methods and structures that help with the consumption of the Github API.
Package github contains methods and structures that help with the consumption of the Github API.
gitlab
Package gitlab contains methods and structures that help with the consumption of the Gitlab API.
Package gitlab contains methods and structures that help with the consumption of the Gitlab API.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL