A curated list of awesome tools, resources and workflow tips making an awesome development environment.
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 :)
Note: for an OS specific tool, please do your best to mark with
Tools to manage databases, permissions, etc.
Tools to benchmark your code or services
- apachebench (ab)
- phantomas - website perf evaluation tool
- redis-faina Instagram's Redis counter/timing stats based on the MONITOR command
Tools for handling online and offline data
- s3cmd - the S3 CLI tool for Amazon
Tools for checking diagnosing your system while you work
Tools for improving and hacking around with your vanilla desktop
- Alfred - OSX productivity app
- hydra - script your desktop
- Keycastr - show your keys while
- 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
Only awesome tools and addons for your favorite editor
- 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.
- 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
- AdvancedNewFile - File creation plugin.
- Git Gutter - display changed/added lines in the margin of the editor window.
- LiveReload - LiveReload plugin.
- MarkdownEditing - Markdown syntax understanding and good color schemes.
- Package Control - The Sublime Text package manager.
- RubyTest - Plugin for running Ruby tests.
- Side Bar Enhancments - Enhancements to Sublime Text sidebar. Files and folders.
- Sublime Git - Git Integration for Sublime.
- Sublime Linter - Interactive code linting.
- TrailingSpaces - Highlight trailing spaces and delete them in a flash.
- keymap - a hybrid Vim/ReSharper/Intellij keymap
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
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).
- Mockoon - an API / HTTP REST mocking desktop application
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.
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.
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
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
- 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
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
Tools and addons for terminal and terminal work
- autojump - remembers your
folders and jump to them based on partial recall (e.g.
j projwill jump to
- fasd Command-line productivity booster, offers quick access to files and directories.
- homebrew - Makes it easy to install open source packages on an
OS Xsystem with a single command.
- httpie A command line HTTP client, a user-friendly cURL replacement.
- iTerm2 - a great terminal replacement
- 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.
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 -
- guard - FS watch tool with a huge ecosystem of plugins
- LiveReload - FS watch and preprocessor as a desktop app for
/WIN/with complementary browser extensions
- guard-livereload - Guard plugin compatible with LiveReload's browser extensions
- 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.