Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

Repository files navigation

Bellingcat Open Source Challenge (Archived)

Bellingcat logo: Discover BellingcatDiscord logo: Join our communityHeart icon: Support our work

This was the site architecture that ran the Bellingcat challenge until July 2026 (without the challenge content).

The key features are:

  • The site is staticly hosted, and is rebuilt as often as needed (currently daily)

  • A challenge is published at a specified date

  • A challenge consists of sequential puzzles

  • Within a challenge, all puzzles after the first can initially be locked

  • A player can unlock a puzzle by answering the previous one, or waiting for it to unlock.

  • Puzzles unlock automatically at a given date

  • Each puzzle is specified in a markdown file

  • The markdown file contains metadata to associate with a particular challenge, unlock date, etc

  • The main body of the file can be encrypted

Usage

To build the public directory of puzzles (./puzzles/) from the raw puzzles (./puzzles_raw/), use:

npm run prebuild

For development, use:

npm run dev

Build with

npm run build

and test the build with

npm run preview

Finally, format with Prettier by using:

npm run format

About

Archived page for self-running a statically-hosted challenge page

Topics

Resources

Code of conduct

Contributing

Stars

Watchers

Forks

Used by

Contributors

Languages