/vim-awesome

Awesome Vim plugins from across the universe

Primary LanguagePythonMIT LicenseMIT

Vim Awesome

Vim Awesome wants to be a comprehensive, accurate, and up-to-date directory of Vim plugins.

Many recent Vim plugins are announced on Hacker News or specialized boards, and have since become widely used. But how does a new user find out about these? We wanted to solve that problem and others with Vim Awesome — an open-sourced community resource for discovering new and popular Vim plugins.

Technical report on the details

Where does the data come from?

GitHub, Vim.org, and user submissions.

On GitHub there are more than 30 000 repos that are development environment configurations, commonly called dotfiles. From these repos we can extract references to Vim plugins (as Git URIs), particularly when plugin managers are used.

Although there are orders of magnitude more Vim users than public dotfiles repos on GitHub, it is still a useful source of relative usage data.

Getting set up

  1. Install RethinkDB version 2.3.0 from http://rethinkdb.com/docs/install/. (You may have to dig into the download archives.)

  2. Install Sass and Compass, which we use to generate our CSS.

$ gem update --system
$ gem install bundler
$ bundle install
  1. Install Python dependencies.
$ pip install -r requirements.txt
  1. Install Node dependencies.
$ npm install -g webpack
$ npm install
  1. Start a local server serving port 5001 by invoking, in the project root directory,
$ make
  1. Initialize the database, tables, and indices:
$ make init_db
  1. Seed the database with some test data. Download this database dump, and then run
$ rethinkdb restore -i vim_awesome /path/to/vim_awesome_rethinkdb_dump.tar.gz
  1. Open the website in your browser!
$ open http://localhost:5001

Contributing

Take a look at some of these issues to get started.

Chat with us on Gitter!

Acknowledgements

Thanks Ethan Schoonover for use of the Solarized colour scheme.

Much inspiration for this website, both conception and design, came from unheap.com, a resource for browsing jQuery plugins.

Built with React, a JavaScript library for building UIs, and RethinkDB, a document-oriented database.