Initial commit: Crafty Mod Installer

This commit is contained in:
noothenoot
2026-04-18 18:53:07 +03:00
parent d7250f326f
commit f3d8e45189
9 changed files with 1423 additions and 0 deletions
+83
View File
@@ -0,0 +1,83 @@
# 🛠️ Crafty Mod Installer
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Node.js](https://img.shields.io/badge/Node.js-v18%2B-green.svg)](https://nodejs.org/)
An automated command-line tool designed to bridge **Crafty Controller** with **Modrinth** and **CurseForge**. Create servers and install complex modpacks with a single command.
---
## ✨ Features
- 🔗 **Dual Platform Support**: Seamlessly integrate with Modrinth (`.mrpack`) and CurseForge (official API).
- 🏗️ **Automatic Server Creation**: Create new Minecraft instances in Crafty directly from the CLI.
-**Local/Remote Modes**:
- **Local**: Blazing fast direct filesystem installation.
- **Remote**: Prepares files for upload or communicates via API.
- 📦 **Modpack Awareness**: Automatically handles `manifest.json`, `modrinth.index.json`, and server-side overrides.
- 💬 **Interactive Interface**: Step-by-step prompts for selecting versions, file types, and server settings.
---
## 🚀 Quick Start
### Prerequisites
- [Node.js](https://nodejs.org/) (v18 or higher)
- [Crafty Controller v4](https://craftycontrol.com/)
- [CurseForge API Key](https://console.curseforge.com/) (Optional, for CurseForge support)
### Installation
1. Clone the repository:
```bash
git clone https://github.com/yourusername/crafty-mod-installer.git
cd crafty-mod-installer
```
2. Install dependencies:
```bash
npm install
```
3. Setup environment variables:
```bash
cp .env.example .env
```
*Edit `.env` and fill in your Crafty URL, Token, and CurseForge Key.*
### Usage
Start the interactive installer:
```bash
node index.js
```
---
## 🛠️ Technical Details
### Dependencies
- `curseforge-api`: Official wrapper for CurseForge Eternal API.
- `axios`: For high-speed Modrinth and Crafty API requests.
- `inquirer`: For a polished CLI user experience.
- `adm-zip`: Robust ZIP and MRPack extraction.
### Folder Structure
- `index.js`: Orchestrator and CLI logic.
- `crafty.js`: Specialized client for Crafty v2/v4 API.
- `modrinth.js`: Modrinth-specific parsing and downloading logic.
- `curseforge.js`: CurseForge-specific parsing and manifest handling.
---
## 🤝 Contributing
Contributions, issues, and feature requests are welcome! Feel free to check the [issues page](https://github.com/yourusername/crafty-mod-installer/issues).
## 📜 License
Distributed under the MIT License. See `LICENSE` for more information.
---
*Made with ❤️ for the Minecraft Server Community.*