A modern web application for calculating the most profitable shard fusion recipes in Hypixel SkyBlock, featuring real-time bazaar data and an intuitive interface.
- Real-time Profit Calculations: Automatically calculates profit margins for all shard fusion recipes using live bazaar data
- Interactive Web Interface: Modern Next.js frontend with responsive design
- Price History Tracking: Monitor price trends over time for better trading decisions
- Automatic Data Updates: Background refresh of bazaar prices and profit calculations
- Comprehensive Recipe Database: All fusion recipes from community-sourced data
- Sorting & Filtering: Find the most profitable recipes quickly
- Next.js 14 with TypeScript
- Tailwind CSS for styling
- SQLite database with better-sqlite3
- Real-time API endpoints for data fetching
- Responsive design with modern UI components
- Python scripts for data processing and database initialization
- Original calculation logic (now ported to TypeScript)
- Utility scripts for data migration and batch processing
- Node.js 18+
- Python 3.9+ (for legacy scripts)
# Navigate to frontend directory
cd frontend
# Install dependencies
npm install
# Start development server
npm run devThe application will be available at http://localhost:3000
If you need to initialize the database from scratch:
# Install Python dependencies
pip install -r requirements.txt
# Run the database builder (creates shard_recipes.db)
python build_database.pyhypixel-fusion-project/
├── frontend/ # Next.js application (main)
│ ├── app/
│ │ ├── api/ # API endpoints
│ │ │ ├── items/ # Get recipe data
│ │ │ ├── update-data/ # Refresh bazaar data
│ │ │ └── price-history/ # Historical pricing
│ │ ├── components/ # React components
│ │ ├── lib/ # Utility functions
│ │ └── page.tsx # Main page
│ ├── data/ # SQLite database
│ └── public/ # Static assets (shard icons)
│
├── backend/ (legacy) # Python scripts
│ ├── build_database.py # Database initialization
│ ├── calculate_profits.py # Profit calculations
│ ├── fetch_info.py # Bazaar data fetching
│ └── main.py # Legacy orchestrator
│
├── data/ # Source data files
│ ├── Full Fusion List.csv # Community fusion recipes
│ └── shards_cleaned.json # Shard metadata
│
└── README.md
- Start the application:
cd frontend && npm run dev(orcd frontend; npm run devin Windows) - View recipes: Browse all available fusion recipes sorted by profit
- Update data: Click the refresh button or use the
/api/update-dataendpoint - Monitor trends: Check price history for market timing
The application features a Boring/Cope toggle switch that affects profit calculations:
- Boring Mode (Default): Standard profit calculations using current bazaar prices
- Cope Mode: Enhanced calculations that account for the 20% chance of reptile shards to double fusion output
When Cope Mode is enabled, recipes containing reptile family shards will show increased revenue (multiplied by 1.2) to reflect the expected value from the doubling chance. This helps you make more informed decisions when working with reptile shards like those from the Reptile family.
Toggle between modes using the switch in the top-left corner of the interface.
GET /api/items- Fetch all recipes with profit calculationsPOST /api/update-data- Refresh bazaar data and recalculate profitsGET /api/last-update- Get timestamp of last data updateGET /api/price-history/:productId- Get price history for a specific item
- Frontend development in
frontend/app/ - API endpoints in
frontend/app/api/ - Utility functions in
frontend/app/lib/
shard_recipes- Raw fusion recipes from CSVshard_to_productid- Shard metadata and bazaar IDsshard_recipes_processed- Recipes with bazaar IDs for calculationsbazaar_info- Current bazaar pricesshard_profit_data- Calculated profit dataproduct_price_history- Historical pricing data
Create a .env.local file in the frontend directory:
HYPIXEL_TOKEN=your_hypixel_api_key_here # Optional but recommended- Fusion Recipes: Community Spreadsheet
- Credit to HsFearless, MaxLunar & WhatYouThing for data collection
- Sheet created by @lunaynx
- Shard Metadata: HypixelShardOptimizer by Dazzlepuff (Check this fork for an updated version of the data here)
- Bazaar Data: Hypixel SkyBlock API
- Price History: Coflnet API
The Python scripts in the root directory are legacy tools that have been ported to TypeScript in the frontend. They can still be used for:
- Database initialization from scratch
- Batch data processing
- Development and testing
To use legacy scripts:
pip install -r requirements.txt
python main.pyContributions are welcome! Please feel free to submit issues and pull requests.
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request