From this page you can download sanitized database dumps and the files uploaded to thrashchan. The idea was to keep information that you could grab by crawling the public pages anyway, making it easier for someone else to continue operating this site if I were to disappear suddenly.

For a detailed description of the database sanitization, refer to the bottom of this page.

Database dumps

Date Size Link
2025-12-07 02:00:00 18126252 Download
2025-12-08 02:00:00 18085745 Download
2025-12-09 02:00:00 18061244 Download
2025-12-10 02:00:00 18096944 Download
2025-12-11 02:00:00 18115928 Download

Link to latest

Files (deprecated)

You’ll need to use some kind of HTTP crawler to download these files, like wget. This is slow and inefficient, use rsync if possible.

Also note that due to jschan deleting files lazily, you might find stuff here that are already deleted from the boards. Be careful.

Date Full size Link
2025-12-07 02:00:00 47.2G Dir listing
2025-12-08 02:00:00 47.3G Dir listing
2025-12-09 02:00:00 47.3G Dir listing
2025-12-10 02:00:00 47.4G Dir listing
2025-12-11 02:00:00 47.4G Dir listing

Link to latest

RSYNC

It’s possible to get the files and DB dump through rsync. Unlike HTTP method above, it allows you to easily download everything, and only download actually changed files when downloading a newer version.

Unfortunately rsync doesn’t support TOR natively. If you have torsocks, you can simply do

torsocks rsync onion.tor.my::

If you have socat, you can do something like this:

RSYNC_CONNECT_PROG='socat - SOCKS4A:localhost:%H:873,socksport=9050' rsync onion.tor.my::

Inside you have submodules in %Y%m%d%H%M%S format, plus a special latest pointing to the latest version. Inside that you have the DB backup and banner and post files. Example to get the latest version:

torsocks rsync -av --delete onion.tor.my::latest some_random_dir

Usage

  1. Download db and files backup
  2. Setup jschan: download from https://gitgud.io/fatchan/jschan, follow guide until you’re done with gulp reset. Note: trashchan actually runs a slightly modified version of jschan, available at https://gitgud.io/some_random_guy/jschan. You’ll likely want to run the upstream though and only get the formatting patches from my branch. More info on what this fork is all about: https://gitgud.io/fatchan/jschan/-/issues/210
  3. Check jschan schema version: mongo <mongodb_connection_string> --eval 'db.getCollection("version").find()'
  4. Unpack/copy banners and files to static/banner and static/file
  5. Unpack db dump to <some_temp_folder>/jschan
  6. Check database’s version: bsondump version.bson. If it doesn’t mach the version obtained in step 3, STOP. You need to find a jschan version with a matching db schema version (check git).
  7. Restore database dump: mongorestore --uri=<mongodb_connection_string> --drop --dir=<some_temp_folder>
  8. Continue jschan guide: setup favicon and npm run-script start, …
  9. You can login using the admin account generated by gulp reset. Every board will be owned by nobody, so you have to recreate other users and permissions.

DB sanitization

Here is a list of all collections used by mongodb, and a short description of why it’s missing or how it is sanitized:

Collection Included Description
accounts no Non-public info. Contains hashed passwords and permission info.
bans no Non-public info.
boards sanitized All boards are owned by admin, list of moderators, filters and blocked countries are erased.
bypass no Ephemeral data. Also, I’m not stupid to include this.
captcha no Are you stupid?
custompages yes Only contains public info.
files yes Just a list of file hashes uploaded to server and how many posts reference them. Technically could be rebuilt from posts.
filters no Non-public info.
globalsettings no Mostly non-public info.
modlog sanitized Non-public entries removed. Hidden users are set to admin. Ip addresses are replaced with username hashes.
news yes Only contains public info.
posts sanitized Passwords and reports are removed. Ip addresses are replaced with userId hashes if available (that 6 hex-digit ID next to the post), otherwise with a dummy value. Thread salts are also replaced.
poststats sanitized Ip addresses are removed.
ratelimit no Ephemeral info. Also contain IP addresses.
roles no Non-public info.
version yes Just a single db schema version number.