Skip to content
Offline StackExchange indexer and search engine
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
dist built and committed 1.0.1 version Jul 8, 2019
gradle/wrapper Initial Commit Feb 15, 2019
resources
src
.gitignore Initial Commit Feb 15, 2019
.travis.yml Modifying .travis.yml Jul 4, 2019
LICENSE Adding .travis.yml and LICENSE Jul 4, 2019
README.md Updated README.md to include screenshots Jul 8, 2019
build.gradle
gradle.properties Initial Commit Feb 15, 2019
gradlew Modifying .travis.yml Jul 4, 2019
gradlew.bat Initial Commit Feb 15, 2019
perf.txt
settings.gradle

README.md

StackedOff is a Stack Exchange site indexer and search engine. It's intended use is for people who wish to access Stack Exchange Network site(s), e.g. stackoverflow.com, but do not have a reliable internet service.
StackedOff uses the 'stack dump' data files made public by the Stack Exchange Network.

Installation

  1. Download the latest zip version from here, and unzip into your desired location.
  2. Ensure you have a version of a Java JRE installed which is version 8 or higher.
  3. Ensure your JAVA_HOME environment variable is pointing to this java home directory.

Aquiring StackExchange Data Dumps

  1. Get the 'BitTorrent Infohash' from here.
  2. Use your preferred BitTorrent (e.g. uTorrent) client to download a, or part of a Data Dump.

Note: Most BitTorrent clients allow you to pick and choose which files within a Torrent that you wish to download. You will probably want to limit the files that you download, as some of them can be quite large. Most of the sites are in individual 7z files. Except for stackoverflow.com which is broken up into a few seperate archives. If downloading stackoverflow.com, ensure you download the Posts, Users, and Comments files.

Important: You must include in your download the Sites.xml file that is present in every data dump.

Important: Once downloaded, do NOT unzip the 7z site files. StackedOff can only read from the archived site files.

Running StackedOff

  • Call /path/to/stacked-off/bin/stacked (if running on Linux/MacOS)
  • Call C:\path\to\stacked-off\bin\stacked.bat (if running on Windows)

Launch a browser pointing at http://localhost and you should see the StackedOff GUI.

(NOTE: Your browser must be ES6 compatible. Please see the table here for browser version compatibility.)

Configure index dir

The first time that you run StackedOff you will be asked to specify an index directory. This is where StackedOff will store it's indexes. These indexes can get quite large if you are indexing large sites such as stackoverflow.com.

  • Make sure you have enough disk space.
  • It is preferable to use a local disk, as this will dramatically impact the speed of StackedOff.
  • It is preferable to use an SSD disk, as this will also impact the speed of StackedOff.

Load a site

Assuming you have downloaded a Stack Exchange site:

  1. click on the 'Add Site' button.
  2. Enter the path that contains the 7z file(s) and Sites.xml file that you previously downloaded. Click 'Next'
  3. Select the site(s) that you wish to index.
  4. Click 'Next'

Indexing can take some time. On my laptop (7th Gen i5, with SSD) indexing stackoverflow.com takes about 4 hours.

Search

You should now be able to search the loaded sites, using the search bar at the top of the StackedOff gui.

Changing the port that StackedOff uses

By default StackedOff launches on port 80. To change this, edit the file in your home directory .stackedoff/app.properties, and add a port setting, e.g.:

port=8080

Re-run StackedOff.

Acknowledgments

The guys at stackexchange.com. Who not only revolutionized the technical Q&A space, but also in the spirit of 'openness' admirably continue to allow free access to all of their Q&A data for all of their sites.

The Lucene indexing and search API.

JetBrains for creating and maintaining the awesome Kotlin JVM language.

Screenshots

Search

Question view

Selecting sites to index

You can’t perform that action at this time.