LocalOverflow

Docs
★ 126 Stars🔥 176 Stacks Supported♻ Low Resource Usage👌 Instant Search

A minimal offline stack exchange explorer, browse millions of questions & answers offline.

Now you can be an engineer from the woods, from the ocean, underground, anywhere!

+170
Stacks to Explore
Get Started
$ docker run -p 3030:3030 -v "$(pwd)/data.lo:/data.lo" diit/local-overflow
  • SO

    Stack Overflow

    6/27/2012

    Why is processing a sorted array faster than processing an unsorted array?

    Here is a piece of C++ code that shows some very peculiar behavior. For some strange reason, sorting the data miraculously makes the code almost six times faster:

  • SO

    Stack Overflow

    5/29/2009

    How do I undo the most recent local commits in Git?

    I accidentally committed the wrong files to Git, but didn't push the commit to the server yet. How can I undo those commits from the local repository?

  • SO

    Stack Overflow

    1/5/2010

    How do I delete a Git branch locally and remotely?

    I want to delete a branch both locally and remotely. Failed Attempts to Delete a Remote Branch $ git branch -d remotes/origin/bugfix error: branch 'remotes/origin/bugfix' not found...

  • SO

    Stack Overflow

    11/15/2008

    What is the difference between 'git pull' and 'git fetch'?

    What are the differences between git pull and git fetch?

  • SO

    Stack Overflow

    1/25/2009

    What does the “yield” keyword do?

    What is the use of the yield keyword in Python, and what does it do? For example, I'm trying to understand this code1: def _get_child_candidates(self, distance, min_dist, max_dist): if self…

Documentation

What Is LocalOverflow?

LocalOverflow is a local web-app that downloads any stack-exchange site, for example Stack Overflow or Ask Ubuntu, and makes it available to instantly search, explore, all while offline (including images).

Why LocalOverflow?

Living in remote regions has long been a goal of mine, and with projects like StarLink on the horizon it is more possible then ever. However we are still years away from a global deployment and more critically being dependent on a single piece of hardware to solve some silly js bug is not ideal. So I built a tool where I can take all the data I need with me where ever I go.

There have been a few previous attempts which helped inspire this work, listed below. However for my purposes they fall short in speed, usability, or resource usage.

Getting Started

If you already have Docker installed, you can quickly spin up LocalOverflow. All data will be stored on your local machine, the default location is data.lo in your user home directory.

To install docker you can follow the guide on their site.

$ docker run -p 3030:3030 -v "$(pwd)/data.lo:/data.lo" diit/local-overflow

You should now be able to access your own LocalOverflow instance at http://localhost:3030

Configuration

-p 3030:3030Port to display LocalOverflow on
-v "$(pwd)/data.lo:/data.lo"Location to store LocalOverflow Data

Considerations

Depending on the number & size of stacks you download you will need to have ample storage. Currently you need ~2.5x the raw uncompressed stack exchange dump file. For example Stack Overflow would require ~75gb of disk space. In future releases we expect to lower this to 1.5x or ~45gb for the previous example.

Using LocalOverflow

The home page shows you a feed of the highest-voted questions for each stack, as well as your most recent bookmarks. You can search across title, questions, and answers using the search bar on any page.

Selecting a question or answer will bring you to the question page were you can read through comments, answers, and explore related questions.