Skip to content

About

Scraper application that collects the most popular Minecraft server jar files.

Resources

Stars

8 stars

Watchers

3 watching

Forks

Repository files navigation

Minecraft Jars API

This is a scraper application built with Next.js 16 and Node.js 26 that collects the most popular Minecraft server jar files and checks for updates from time to time. Files are downloaded and, if necessary, built and then stored. It provides an easy-to-use api that can be easily integrated into other systems.

Supported projects

How to use?

  1. We assume that Docker is installed and you have basic knowledge
  2. Clone the repository
  3. Copy .env.example as .env
  4. Open .env and set the values you need (optional)
  5. Run docker compose up -d
  6. Open http://localhost/api/status/ping to check if it works well

Database storage

POSTGRES_MOUNT defaults to the existing postgres-data Docker volume. To use a host directory, set this in .env:

POSTGRES_MOUNT=/mnt/hdd/mcjars/db

Recreate the database container with docker compose up -d mcjars_db. Changing this setting selects a different storage location; existing database data must be migrated separately if you want to retain it.

Local development

Use Node.js 26 (nvm use), PostgreSQL, and the settings from .env.example.

npm ci
npx prisma migrate deploy
npm run dev

npm run dev and npm run start listen on port 80, matching the existing Docker deployment. Override the port locally with npm run dev -- --port 3000 or npm run start -- --port 3000. For a production build, run npm run build followed by npm run prod (or npm run start). The Prisma client is generated during installation and before every build.

Alpine containers

The Docker image includes musl-compatible Java 8, 16, 17, 21, and 25 JDKs. The project directory, including node_modules and .next, is shared with the host. Install dependencies and build inside the container so native packages match Alpine and the container's CPU architecture. For APP_ENV=development:

docker compose exec mcjars_app npm ci
docker compose exec mcjars_app npm run dev

After Docker configuration changes, recreate the app with docker compose up -d --build mcjars_app.

API Documentation

You can find the documentation on Wiki page. (click here)

TODO

  • final tune the api / responses
  • redis cache
  • rate limiting
  • more configuration options in .env
  • api key auth
  • statistics
  • documentation

About

Scraper application that collects the most popular Minecraft server jar files.

Resources

Stars

8 stars

Watchers

3 watching

Forks

Used by

Contributors

Languages