/rebound

Command-line tool that instantly fetches Stack Overflow results when an exception is thrown

Primary LanguagePython

rebound

Rebound is a command-line tool that instantly fetches Stack Overflow results when an exception is thrown. Just use the rebound command to execute your file.

Placeholder Demo

Featured in: 50 Most Popular Python Projects in 2018, the top of r/Python, awesome-cli-apps, awesome-shell, terminals-are-sexy, and awesome-mac.

Installation

Requires Python 3.0 or higher.

Rebound works on MacOS, Linux, and Windows (if you use Cygwin). You can install it with pip:

$ pip install rebound-cli

or apt-get if you're using Linux:

$ sudo apt-get install rebound-cli

Usage

Running a file with rebound is just as easy as running it normally:

$ rebound [file_path]

This will execute the file, pull the error message, and let you browse related Stack Overflow questions and answers without leaving the terminal.

Supported file types: Python, Node.js, Ruby, Golang, and Java.

Contributing

To make a contribution, fork the repo, make your changes and then submit a pull request. Please try to adhere to the existing style. If you've discovered a bug or have a feature request, create an issue.

Pending Features:

  • Improved text formatting (i.e. for duplicate questions, markdown, blockquotes, clickable links, etc.)
  • Improved search result accuracy by extracting potential search terms from the stack trace
  • Support for more languages

How it Works

Rebound is written in Python and built on Urwid. Beautiful Soup is used to scrape Stack Overflow content and subprocess for catching compiler errors.

Acknowledgements

Special thanks to @rndusr for helping with the scrollbar.