OfflineShelf — Wikipedia Reading Lists for Offline Use

OfflineShelf logo

2026 · Full-stack · Flask + React · Open source

Millions of articles. Choose the ones that matter.

OfflineShelf helps a school, library or clinic without reliable internet decide which Wikipedia articles to carry offline, and keeps that decision repeatable. A list can come from a Wikipedia category, a Wikidata query, a pasted reading list or the most-read articles of a month, and lists can be combined: "Vaccines minus Companies". Each list can rebuild every month, keeps a history of what was added and removed, and exports as a spreadsheet file, a folder of web pages that opens from a USB stick, or a ZIM file for the free Kiwix reader apps.

Home — millions of articles, choose the ones that matter
4
list builders
3
export formats
235
automated tests
100%
core branch coverage

Built at the end of October 2026 across 26 pull requests: a Flask API with Pydantic validation, MariaDB and Redis, background workers on RQ, and a plain-Python list layer with 100% branch coverage. It works in any language edition of eight Wikimedia projects and talks to Wikimedia the way its API rules ask: an identified client that backs off when the servers are busy. It stores only titles and IDs, never article text, and every export carries the CC BY-SA attribution the content needs. Every feature works end to end in Docker; the public launch at offlineshelf.ahmershah.dev is planned for February 2027, after end-to-end and load testing.

  1. 01

    Four ways to ask for a list: a category walked to a chosen depth without looping, a Wikidata query mapped to articles, a pasted reading list with redirects followed and gaps reported, or the top articles by pageviews for a month.

  2. 02

    Lists combine: union, intersection and difference of up to ten lists, and a combination rebuilds by itself when one of its sources gets a new version.

  3. 03

    A failed rebuild never replaces the last good list: every build is a separate version with a report, and the owner sees exactly which articles came and went since the previous one.

  4. 04

    Three exports for three kinds of places: a TSV for spreadsheets and scripts, an HTML bundle that opens from a USB stick with no server, and a searchable ZIM file for the Kiwix apps.

Screens · OfflineShelf

Inside the build.

Web app

Home — millions of articles, choose the ones that matter
Next projectMarket data · 2026
MarketClock

Every trading day, every settlement date.