Skip to content

SkyCryptWebsite/SkyCrypt-Backend

Repository files navigation

SkyCrypt

SkyCrypt Backend

A Hypixel SkyBlock Profile Viewer

Sponsor   GitHub Repo stars

A high-performance Go backend API for SkyCrypt, providing statistics and data processing for Hypixel SkyBlock players.

Originally inspired by LeaPhant's skyblock-stats.

Website: https://sky.shiiyu.moe
Development Website: https://cupcake.shiiyu.moe

Frontend: SkyCrypt-Frontend

Table of Contents

Requirements

  • Go 1.25.1 or later
  • Redis 7.0 or later
  • MongoDB 6.0 or later
  • Git (for submodule initialization)

Installation

The following instructions are written for Arch Linux. Adjust package manager commands accordingly for other distributions.

System Dependencies

Update your system and install essential build tools:

sudo pacman -Syu
sudo pacman -S base-devel git

Go Installation

Install Go from the official Arch Linux repositories:

sudo pacman -S go

Verify the installation:

go version

Redis Installation

Install Redis:

sudo pacman -S redis

Enable and start the Redis service:

sudo systemctl enable redis
sudo systemctl start redis

Verify Redis is running:

redis-cli ping

Expected output: PONG

MongoDB Installation

Install MongoDB from the AUR. Using an AUR helper such as yay:

yay -S mongodb-bin

Alternatively, build from source:

git clone https://aur.archlinux.org/mongodb-bin.git
cd mongodb-bin
makepkg -si

Enable and start the MongoDB service:

sudo systemctl enable mongodb
sudo systemctl start mongodb

Verify MongoDB is running:

mongosh --eval "db.runCommand({ ping: 1 })"

Configuration

Environment Variables

Create a .env file in the project root directory. Use .env.example as a template:

cp .env.example .env

Edit the .env file with your configuration:

HYPIXEL_API_KEY=""
DISCORD_WEBHOOK=""
DEV="true"
ENABLE_ARMOR_HEX="false"
MONGO_URI="mongodb://localhost:27017"
MONGO_DB_NAME="SkyCrypt"

Environment Variable Reference

Variable Description Default Required
HYPIXEL_API_KEY Your Hypixel API key. Obtain from Hypixel Developer Portal - Yes
DISCORD_WEBHOOK Discord webhook URL for error notifications and startup messages - No
DEV Enable development mode. Set to true for local development false No
ENABLE_ARMOR_HEX Enable hexadecimal armor color support false No
MONGO_URI MongoDB connection URI mongodb://localhost:27017 No
MONGO_DB_NAME MongoDB database name SkyCrypt No
REDIS_HOST Redis server hostname localhost No
REDIS_PORT Redis server port 6379 No
REDIS_PASSWORD Redis authentication password - No

Development

Clone the repository with submodules:

git clone --recurse-submodules https://github.com/SkyCryptWebsite/SkyCrypt-Backend.git
cd SkyCrypt-Backend

If you have already cloned the repository without submodules:

git submodule update --init --recursive

Download Go dependencies:

go mod download

Run the application:

go run main.go

Common Issues

Submodule Not Initialized

If the NotEnoughUpdates-REPO directory is empty:

git submodule update --init --recursive

About

A Backend for Hypixel skyblock stats website

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 5