Awesome Dev Env
A curated list of awesome tools, resources and workflow tips making an
awesome development environment.
Inspired by
awesome-go, which was
in turn inspired by
awesome-python.
Contributing
Guidelines
tweaked and adapted from awesome-go
- thanks!
But in short:
- List is alphabetically sorted
-
If you think an item shouldn’t be here
open an issue
Many thanks to everyone on the
contributor list
:)
Content
Note: for an OS specific tool, please do your best to mark with
OSX/WIN/*NIX/LIN
Admins
Tools to manage databases, permissions, etc.
-
hss - Never type the
annoying ssh commands again.
-
MongoHub
- Native OSx client for mongo
-
Robomongo - a cross platform Admin
for MongoDB
Benchmarking
Tools to benchmark your code or services
Data
Tools for handling online and offline data
-
s3cmd - the S3 CLI tool
for Amazon
Diagnostics
Tools for checking diagnosing your system while you work
Desktop
Tools for improving and hacking around with your vanilla desktop
-
Alfred - OSX productivity app
/OSX/
-
hydra - script your
desktop
/OSX/
-
Keycastr - show your
keys while presenting/casting
/OSX/
Documentation
Tools to document your project
-
Log4brains -
Docs-as-code knowledge base to manage Architecture Decision Records
(ADR) for your project and publish them automatically as a static
website.
Dotfiles
-
dotfiles.github.io - Collected
dotfile resources. Has sections with dotfile bootstraps and lists of
frameworks for various shells and editors.
-
Zach Holman’s -
oh-my-zsh, osx, Zsh, vi, Ruby, Git, and more
-
Mathias Bynens’s
- .files, including ~/.osx — sensible hacker defaults for OS X
-
Thoughtbot’s - A
set of vim, zsh, git, and tmux configuration files
-
Paul Miller’s -
Colourful & robust OS X configuration files and utilities
Editors
Only awesome tools and addons for your favorite editor
Atom
-
atom-beautify -
Beautify HTML (including Handlebars), CSS (including Sass and Less),
JavaScript, and much more in Atom.
-
file-icons - Adds
file specific icons to atom for improved visual grepping.
-
highlight-selected
- Double click on a word to highlight it throughout the open file.
-
minimap - A
graphical map (preview) of the full source code.
-
minimap-git-diff
- A minimap binding for the Atom git-diff package.
-
minimap-highlight-selected
- A minimap binding for the highlight-selected package.
-
atom-project-manager
- Get easy access to all your projects and manage them with project
specific settings and options.
-
atom-tree-view-git-status
- Show the Git repository status in the Atom tree-view.
-
atom-pigments - An
Atom package to display colors in project and files.
Vim
-
Completor - async
autocomplete with support for omni and semantic completion.
-
Powerline - improved
status bar for your buffers.
-
snipmate - textual
snippets compatiable with Textmate snippets.
-
The Ultimate Vim Distribution -
spf13-vim is a distribution of vim plugins and resources for Vim, GVim
and MacVim.
Sublime Text 3
Intellij
-
keymap - a hybrid
Vim/ReSharper/Intellij keymap
Visual Studio Code
Extensions
Git
Tools and addons for making an awesome Git experience
-
awesome-github -
Faraz Fallahi maintains a curated list of GitHub & Git resources.
-
gh - Fast GitHub command
line client (hub port to Go)
-
git-extra-commands
- collected git helper scripts
-
git-extras - GIT
utilities – repo summary, repl, changelog population, author commit
percentages and more
-
git-it-on -
ZSH plugin, adds a gitit command that opens the current directory on
github in your current branch
-
git-secret - A
bash-tool to store your private data inside a git repository.
-
git-semver - A
git plugin to make Semantic Versioning 2.0.0 and Change Log management
easier.
-
git-sweep - safely
removes branches that have been merged into the master
-
git-up - a better ‘git
pull’
-
hub - git CLI wrapper which makes
working with GitHub easier
-
scm_breeze
Streamline your git workflow
-
tig - an ncurses-based
text-mode interface for git
Misc
Useful tools that cannot find a home in other categories
-
Fenix Web Server - A multi-host
local static web server with push-button sharing (desktop app).
-
ML Workspace -
All-in-one web-based development environment for machine learning and
data science.
-
Mockoon - an API / HTTP REST mocking
desktop application
-
HTTP Toolkit - an HTTP inspection
& debugging desktop application
Notifications
Tools that notify developers about changes in their work
environment
-
CatLight - status notifier for
developers. Checks the status of continuous delivery builds and shows
desktop notifications.
Orchestration
Tools for orchestrating awesome development environments
-
azk - a lightweight open
source engine to orchestrate development environments
-
Nanobox - A
micro-PaaS (μPaaS) for creating consistent, isolated, development
environments deployable anywhere https://nanobox.io.
Presentation
Tools for presenting your work
-
bespoke.js -
DIY Presentation Micro-Framework
-
hacker-slides -
Reveal.js based presentation tool
-
impress.js -
presentation framework based on the power of CSS3 transforms and
transitions
-
mithril-slides - A
Keynote-inspired presentation app written with Mithril
-
remark - markdown based
presentation on your browser
-
reveal.js - markdown
based presentation on your browser
-
deck.js -
markdown based presentation on your browser
-
vimdeck - present inside
your Vim
-
WebSlides - Making
HTML presentations easy
Shell
Tools for having an awesome shell environment
-
awesome-zsh-plugins
- List of zsh plugins usable with
zgen and other
oh-my-zsh
compatible zsh frameworks
-
fish-shell - The
user-friendly command line shell
-
hss - Never type the
annoying ssh commands again.
-
oh-my-fish -
Framework for managing your fish shell configuration inspired by
oh-my-zsh.
-
oh-my-zsh - A
community driven framework for managing zsh configuration.
-
zgen - Faster framework
for managing your zsh configuration, backward compatible with oh-my-zsh
plugins
-
zsh - A shell designed for interactive
use, although it is also a powerful scripting language.
-
shellcheck - Lint
for shell. Will find deprecated and/or dangerous usage in shell scripts
-
zsh quickstart kit
- Quick intro for getting set up with zsh and zgen
Text
Tools for working with text files - search, replace, processing
-
ack - the Perl based
better-than-grep tool.
-
ag - A C
based code-searching tool similar to ack, but faster
-
peco - interactive filtering,
like interactive Grep
-
ripgrep - Faster
than grep, written in Rust
Terminal
Tools and addons for terminal and terminal work
-
autojump -
remembers your folders and jump to them based on partial recall
(e.g.
j proj
will jump to
/home/Users/yourself/projects
.
-
fasd Command-line
productivity booster, offers quick access to files and directories.
-
homebrew - Makes it easy to install open
source packages on an
OS X
system with a single command.
-
hss - Never type the
annoying ssh commands again.
-
httpie A command line HTTP client, a
user-friendly cURL replacement.
-
iTerm2 - a great terminal
replacement
/OSX/
-
jq - a lightweight and
flexible command-line JSON processor
-
oh-my-zsh - the
incredible ZSH addon.
-
Pipe Viewer - a
tool for monitoring the progress of data through a pipeline
-
tmux the awesome terminal
multiplexer.
-
zoxide - A better
way to navigate your filesystem. Written in Rust, cross-shell, and much
faster than other autojumpers.
Workflow
Tools and addons which improve your daily workflow with code
-
fswatch - a watch
tool which will emit FS events and you can run commands on demand with.
Note -
fswatch-run
too.
-
guard - FS watch tool with
a huge ecosystem of plugins
-
LiveReload - FS watch and
preprocessor as a desktop app for
/OSX/
and
/WIN/
with complementary browser extensions
-
guard-livereload
- Guard plugin compatible with LiveReload’s browser extensions
-
simplehttp
Fastest and simplest way to start serving a local directory over
http.
-
watchman - Facebook’s
better
watch
- note it works as a service.
-
Zappr - GitHub
integration built to enhance your project workflow via enable/disable
pull request approval checks.
-
ergo - The
management of multiple local services running over different ports made
easy.
-
Prodmodel - Build
tool for data science pipelines.
-
Gebug - A tool that makes
debugging of Dockerized Go applications super easy by enabling Debugger
and Hot-Reload features, seamlessly.