blockmine 1.19.1 → 1.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +11 -0
- package/CHANGELOG.md +8 -0
- package/backend/src/core/BotManager.js +34 -4
- package/backend/src/core/GraphExecutionEngine.js +12 -1
- package/backend/src/core/NodeRegistry.js +2 -1
- package/frontend/dist/assets/{index-DxdxTe6I.js → index-CMMutadc.js} +33 -33
- package/frontend/dist/index.html +1 -1
- package/nul +0 -0
- package/package.json +1 -1
- package/.kiro/steering/product.md +0 -27
- package/.kiro/steering/structure.md +0 -89
- package/.kiro/steering/tech.md +0 -94
package/frontend/dist/index.html
CHANGED
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
<meta name="msapplication-TileColor" content="#da532c">
|
|
43
43
|
<meta name="theme-color" content="#ffffff">
|
|
44
44
|
|
|
45
|
-
<script type="module" crossorigin src="/assets/index-
|
|
45
|
+
<script type="module" crossorigin src="/assets/index-CMMutadc.js"></script>
|
|
46
46
|
<link rel="stylesheet" crossorigin href="/assets/index-BFd7YoAj.css">
|
|
47
47
|
</head>
|
|
48
48
|
<body>
|
package/nul
ADDED
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# BlockMine Product Overview
|
|
2
|
-
|
|
3
|
-
BlockMine is an open-source centralized management and automation solution for Minecraft bots built on Mineflayer. It provides a modern web-based control panel for managing multiple Minecraft bots with advanced automation capabilities.
|
|
4
|
-
|
|
5
|
-
## Core Features
|
|
6
|
-
|
|
7
|
-
- **Web-based Dashboard**: Modern React + Tailwind CSS interface for bot management
|
|
8
|
-
- **Visual Logic Editor (No-Code)**: Drag-and-drop interface for creating bot behaviors and commands without coding
|
|
9
|
-
- **Comprehensive Bot Management**: Start/stop bots, real-time console, resource monitoring, SOCKS5 proxy support
|
|
10
|
-
- **Plugin System**: Extensible architecture with plugin browser, automatic dependency management
|
|
11
|
-
- **Permissions System**: Flexible user groups and granular command permissions
|
|
12
|
-
- **Export/Import**: Full bot backups and command sharing via ZIP/JSON export
|
|
13
|
-
|
|
14
|
-
## Target Users
|
|
15
|
-
|
|
16
|
-
- Minecraft server administrators
|
|
17
|
-
- Bot developers and automation enthusiasts
|
|
18
|
-
- Users who want to manage multiple Minecraft bots centrally
|
|
19
|
-
- Non-technical users who want bot automation without coding
|
|
20
|
-
|
|
21
|
-
## Key Value Propositions
|
|
22
|
-
|
|
23
|
-
1. **No-Code Automation**: Visual editor eliminates need for programming knowledge
|
|
24
|
-
2. **Centralized Management**: Single interface for multiple bots and servers
|
|
25
|
-
3. **Extensibility**: Rich plugin ecosystem for custom functionality
|
|
26
|
-
4. **Easy Deployment**: One-command setup via `npx blockmine`
|
|
27
|
-
5. **Professional UI**: Modern, responsive web interface accessible from any device
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
# Project Structure & Organization
|
|
2
|
-
|
|
3
|
-
## Root Level Structure
|
|
4
|
-
```
|
|
5
|
-
blockmine/
|
|
6
|
-
├── backend/ # Node.js/Express API server
|
|
7
|
-
├── frontend/ # React/Vite web application
|
|
8
|
-
├── plugins/ # Plugin ecosystem directory
|
|
9
|
-
├── stats-server/ # Separate statistics server
|
|
10
|
-
├── mptest/ # MCP (Model Context Protocol) testing
|
|
11
|
-
├── .kiro/ # Kiro AI assistant configuration
|
|
12
|
-
├── .github/ # GitHub workflows and templates
|
|
13
|
-
├── .husky/ # Git hooks configuration
|
|
14
|
-
└── image/ # Project assets and screenshots
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Backend Structure (`backend/`)
|
|
18
|
-
- **`src/`**: Main application source code
|
|
19
|
-
- **`prisma/`**: Database schema, migrations, and seed files
|
|
20
|
-
- **`storage/`**: Runtime data storage (logs, uploads, bot data)
|
|
21
|
-
- **`cli.js`**: Command-line interface entry point
|
|
22
|
-
- **`package.json`**: Backend dependencies and scripts
|
|
23
|
-
- **`nodemon.json`**: Development server configuration
|
|
24
|
-
|
|
25
|
-
## Frontend Structure (`frontend/`)
|
|
26
|
-
- **`src/`**: React application source code
|
|
27
|
-
- **`public/`**: Static assets served by Vite
|
|
28
|
-
- **`dist/`**: Built production files (generated)
|
|
29
|
-
- **`components.json`**: shadcn/ui component configuration
|
|
30
|
-
- **`tailwind.config.js`**: Tailwind CSS customization
|
|
31
|
-
- **`vite.config.js`**: Vite build configuration with Monaco Editor plugin
|
|
32
|
-
|
|
33
|
-
## Plugin System (`plugins/`)
|
|
34
|
-
Each plugin follows a standard structure:
|
|
35
|
-
```
|
|
36
|
-
plugins/plugin-name/
|
|
37
|
-
├── package.json # Plugin metadata and dependencies
|
|
38
|
-
├── index.js # Main plugin entry point
|
|
39
|
-
├── README.md # Plugin documentation
|
|
40
|
-
└── commands/ # Command definitions (if applicable)
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
Common plugin types:
|
|
44
|
-
- **Command plugins**: Add new bot commands
|
|
45
|
-
- **Event handlers**: React to Minecraft events
|
|
46
|
-
- **UI extensions**: Add dashboard features
|
|
47
|
-
- **Automation**: Background tasks and scheduled actions
|
|
48
|
-
|
|
49
|
-
## Configuration Files
|
|
50
|
-
|
|
51
|
-
### Development & Build
|
|
52
|
-
- **`package.json`**: Root workspace configuration with npm workspaces
|
|
53
|
-
- **`ecosystem.config.js`**: PM2 process manager configuration
|
|
54
|
-
- **`.versionrc.json`**: Standard-version release configuration
|
|
55
|
-
- **`commitlint.config.js`**: Commit message linting rules
|
|
56
|
-
|
|
57
|
-
### Code Quality
|
|
58
|
-
- **`.husky/`**: Git hooks for pre-commit and commit-msg validation
|
|
59
|
-
- **`frontend/eslint.config.js`**: ESLint rules for React code
|
|
60
|
-
- **`.gitignore`**: Version control exclusions
|
|
61
|
-
|
|
62
|
-
## Key Architectural Patterns
|
|
63
|
-
|
|
64
|
-
### Monorepo Organization
|
|
65
|
-
- Uses npm workspaces for dependency management
|
|
66
|
-
- Shared dependencies hoisted to root level
|
|
67
|
-
- Independent build processes for frontend/backend
|
|
68
|
-
|
|
69
|
-
### Plugin Architecture
|
|
70
|
-
- Plugins are self-contained modules with their own package.json
|
|
71
|
-
- Plugin discovery via directory scanning
|
|
72
|
-
- Automatic dependency resolution and installation
|
|
73
|
-
|
|
74
|
-
### API Structure
|
|
75
|
-
- RESTful API endpoints under `/api/`
|
|
76
|
-
- Real-time updates via Socket.IO
|
|
77
|
-
- File uploads handled via Multer middleware
|
|
78
|
-
|
|
79
|
-
### Frontend Organization
|
|
80
|
-
- Component-based architecture with Radix UI primitives
|
|
81
|
-
- Custom hooks for state management (Zustand)
|
|
82
|
-
- Path aliases (`@/`) for clean imports
|
|
83
|
-
- Responsive design with Tailwind CSS utilities
|
|
84
|
-
|
|
85
|
-
## Development Workflow
|
|
86
|
-
1. **Setup**: `npm install` installs all workspace dependencies
|
|
87
|
-
2. **Development**: `npm run dev` starts both frontend and backend with hot reload
|
|
88
|
-
3. **Building**: `npm run build` creates production frontend bundle
|
|
89
|
-
4. **Deployment**: `npx blockmine` for quick deployment or PM2 for production
|
package/.kiro/steering/tech.md
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
# Technology Stack & Build System
|
|
2
|
-
|
|
3
|
-
## Architecture
|
|
4
|
-
- **Monorepo**: Uses npm workspaces with separate frontend and backend packages
|
|
5
|
-
- **Frontend**: React 19 + Vite + Tailwind CSS
|
|
6
|
-
- **Backend**: Node.js + Express + Prisma ORM
|
|
7
|
-
- **Database**: SQLite (via Prisma)
|
|
8
|
-
- **Real-time**: Socket.IO for live updates
|
|
9
|
-
- **Bot Framework**: Mineflayer for Minecraft bot functionality
|
|
10
|
-
|
|
11
|
-
## Key Technologies
|
|
12
|
-
|
|
13
|
-
### Frontend Stack
|
|
14
|
-
- **React 19**: Latest React with modern hooks and concurrent features
|
|
15
|
-
- **Vite**: Fast build tool with HMR for development
|
|
16
|
-
- **Tailwind CSS**: Utility-first CSS framework with custom design system
|
|
17
|
-
- **Radix UI**: Headless component library for accessibility
|
|
18
|
-
- **React Flow**: Visual node editor for no-code logic builder
|
|
19
|
-
- **Monaco Editor**: VS Code editor for code editing features
|
|
20
|
-
- **Zustand**: Lightweight state management
|
|
21
|
-
- **React Router**: Client-side routing
|
|
22
|
-
|
|
23
|
-
### Backend Stack
|
|
24
|
-
- **Express.js**: Web framework with validation middleware
|
|
25
|
-
- **Prisma**: Type-safe ORM with SQLite database
|
|
26
|
-
- **Socket.IO**: Real-time bidirectional communication
|
|
27
|
-
- **Pino**: High-performance logging
|
|
28
|
-
- **JWT**: Authentication tokens
|
|
29
|
-
- **Multer**: File upload handling
|
|
30
|
-
- **Node-cron**: Task scheduling
|
|
31
|
-
|
|
32
|
-
### Development Tools
|
|
33
|
-
- **ESLint**: Code linting with React-specific rules
|
|
34
|
-
- **Husky**: Git hooks for code quality
|
|
35
|
-
- **Commitlint**: Conventional commit message enforcement
|
|
36
|
-
- **Standard-version**: Automated versioning and changelog
|
|
37
|
-
- **Nodemon**: Development server with auto-restart
|
|
38
|
-
- **Concurrently**: Run multiple npm scripts simultaneously
|
|
39
|
-
|
|
40
|
-
## Common Commands
|
|
41
|
-
|
|
42
|
-
### Development
|
|
43
|
-
```bash
|
|
44
|
-
# Install dependencies
|
|
45
|
-
npm install
|
|
46
|
-
|
|
47
|
-
# Start development servers (both frontend and backend)
|
|
48
|
-
npm run dev
|
|
49
|
-
|
|
50
|
-
# Frontend dev server only (http://localhost:5173)
|
|
51
|
-
npm run dev --workspace=frontend
|
|
52
|
-
|
|
53
|
-
# Backend dev server only (http://localhost:3001)
|
|
54
|
-
npm run dev --workspace=backend
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### Production
|
|
58
|
-
```bash
|
|
59
|
-
# Build frontend for production
|
|
60
|
-
npm run build
|
|
61
|
-
|
|
62
|
-
# Start production server
|
|
63
|
-
npm start
|
|
64
|
-
|
|
65
|
-
# Quick deployment via npx
|
|
66
|
-
npx blockmine
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
### Release Management
|
|
70
|
-
```bash
|
|
71
|
-
# Create patch release
|
|
72
|
-
npm run release:patch
|
|
73
|
-
|
|
74
|
-
# Create minor release
|
|
75
|
-
npm run release:minor
|
|
76
|
-
|
|
77
|
-
# Create major release
|
|
78
|
-
npm run release:major
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
### Database
|
|
82
|
-
```bash
|
|
83
|
-
# Generate Prisma client
|
|
84
|
-
npx prisma generate --schema=./backend/prisma/schema.prisma
|
|
85
|
-
|
|
86
|
-
# Run database migrations
|
|
87
|
-
npx prisma migrate dev --schema=./backend/prisma/schema.prisma
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
## Build Configuration
|
|
91
|
-
- **Vite proxy**: Frontend proxies `/api` and `/socket.io` to backend during development
|
|
92
|
-
- **Monaco Editor**: Integrated via vite plugin for code editing features
|
|
93
|
-
- **Path aliases**: `@/` resolves to `frontend/src/`
|
|
94
|
-
- **Tailwind**: Custom design system with CSS variables and animations
|