Go to file
Amos Ng 737dc993bb Merge branch 'feature/subdirectory-keys' into 'master'
Store cache files in a 4-deep subdirectory to improve performance

Closes #53

See merge request mangadex/mangadex_at_home!16
2020-06-12 15:00:36 +00:00
dev Made threads-per-cpu configurable for moar speed 2020-06-12 04:04:49 +08:00
gradle/wrapper Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
src/main Improve DiskLruCache 2020-06-12 09:50:49 -05:00
.gitignore Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
architecture.drawio Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
architecture.png Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
architecture2.png Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
build.gradle Changed gradle versioning to using git describe 2020-06-12 19:04:56 +08:00
CHANGELOG.md Updated CHANGELOG.md to reflect atomicness of migrator 2020-06-12 22:19:08 +08:00
docker-compose.yml Add docker-compose.yml 2020-06-08 17:17:05 +00:00
gradle.properties Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
gradlew Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
gradlew.bat Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
LICENSE Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
README.md Squash a bunch of commits together 2020-06-06 17:52:25 -05:00
settings.gradle Squash a bunch of commits together 2020-06-06 17:52:25 -05:00

Mangadex@Home

To Build

Requirements

  • The Java(TM) SE JDK, version 8 or greater
  • ~500MB of free space

Instructions

  • Run ./gradlew build in order to build the entire project
  • Find the generated jars in build/libs, where the -all jar is fat-jar with all dependencies

Features

V1.0

  • implement API calls
  • HTTPS
  • cache eviction (on max size)
  • cert refresh (when sent by API)
  • async server (for users and upstream)
  • streaming response (for users, upstream and in between)
  • logging files
  • config file
  • license GPL V3 (c) Mangadex.org

V2.0

  • bandwidth limit
  • egress limit
  • max connections limit
  • graceful shutdown (finish in-flight requests)
  • cache encryption (encryption key = cache key)

Stashed

  • IPv6
  • HTTP/2 and HTTP/3