Skip to content

Commit f50541c

Browse files
committed
feat: merge C++ port branch (port-cpp-puzzle-logic-to-java)
2 parents 8d09fad + 71f3a17 commit f50541c

1 file changed

Lines changed: 39 additions & 112 deletions

File tree

‎README.md‎

Lines changed: 39 additions & 112 deletions
Original file line numberDiff line numberDiff line change
@@ -1,130 +1,57 @@
1-
🛠️ ALPHA SOFTWARE UNDER CONSTRUCTION — Use at your own risk. Backwards compatibility not guaranteed.
1+
# Jules Autopilot (Go Primary Runtime)
22

3-
```text
4-
╔══════════════════════════════════════════════════════════════════════════════╗
5-
║ ║
6-
║ ██╗ ██╗███╗ ██╗██████╗ ███████╗██████╗ ║
7-
║ ██║ ██║████╗ ██║██╔══██╗██╔════╝██╔══██╗ ║
8-
║ ██║ ██║██╔██╗ ██║██║ ██║█████╗ ██████╔╝ ║
9-
║ ██║ ██║██║╚██╗██║██║ ██║██╔══╝ ██╔══██╗ ║
10-
║ ╚██████╔╝██║ ╚████║██████╔╝███████╗██║ ██║ ║
11-
║ ╚═════╝ ╚═╝ ╚═══╝╚═════╝ ╚══════╝╚═╝ ╚═╝ ║
12-
║ ║
13-
║ ██████╗ ██████╗ ███╗ ██╗███████╗████████╗██████╗ ║
14-
║ ██╔════╝██╔═══██╗████╗ ██║██╔════╝╚══██╔══╝██╔══██╗ ║
15-
║ ██║ ██║ ██║██╔██╗ ██║███████╗ ██║ ██████╔╝ ║
16-
║ ██║ ██║ ██║██║╚██╗██║╚════██║ ██║ ██╔══██╗ ║
17-
║ ╚██████╗╚██████╔╝██║ ╚████║███████║ ██║ ██║ ██║ ║
18-
║ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚══════╝ ╚═╝ ╚═╝ ╚═╝ ║
19-
║ ║
20-
║ █████╗ ██╗ ██████╗ ██╗ ██╗ █████╗ ║
21-
║ ██╔══██╗██║ ██╔══██╗██║ ██║██╔══██╗ ║
22-
║ ███████║██║ ██████╔╝███████║███████║ ║
23-
║ ██╔══██║██║ ██╔═══╝ ██╔══██║██╔══██║ ║
24-
║ ██║ ██║███████╗██║ ██║ ██║██║ ██║ ║
25-
║ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ║
26-
║ ║
27-
║ ╔══════════════════════════════════════╗ ║
28-
║ ║ ⚠️ ALPHA SOFTWARE ⚠️ ║ ║
29-
║ ║ EXPECT BREAKING CHANGES & BUGS ║ ║
30-
║ ║ NOT READY FOR PRODUCTION USE ║ ║
31-
║ ╚══════════════════════════════════════╝ ║
32-
║ ║
33-
╚══════════════════════════════════════════════════════════════════════════════╝
34-
```
35-
36-
---
37-
# EXTREME WIP ALPHA DEVELOPED "IN THE OPEN," DON'T BOTHER TRYING TO USE IT UNLESS YOU PLAN ON HACKING ON IT TO GET IT WORKING
38-
39-
# bob's game
40-
41-
This repository contains the modernized source code for "Bob's Game" (2012), updated to run on modern Java 21 infrastructure.
3+
> **The ultra-fast, autonomous command center for Google Jules.**
424
43-
## Architecture
5+
Jules Autopilot is a high-performance, minimalist orchestration platform for the Google Jules AI agent. It replaces slow official interfaces with a unified, real-time dashboard, powered by a robust Go backend runtime.
446

45-
The project is split into three Gradle modules:
7+
## 🚀 The Stack
468

47-
- **`:client`**: The game client (LWJGL 3, OpenGL, OpenAL).
48-
- **`:server`**: The backend infrastructure (Game Server, Index Server, STUN Server).
49-
- **`:shared`**: Shared logic, networking packets, and utilities.
9+
This project has been pivoted to a Go-first architecture to ensure maximum performance, operational reliability, and zero friction:
5010

51-
For a detailed breakdown of the project structure and dependencies, see [STRUCTURE.md](STRUCTURE.md).
11+
- **Backend/Runtime:** [Go](https://go.dev) (High-performance API, WebSocket server, Scheduler, and Static SPA host)
12+
- **Frontend:** [Vite](https://vitejs.dev) + [React 19](https://react.dev) (Pure SPA, no SSR overhead)
13+
- **Database:** [GORM](https://gorm.io) + SQLite (Zero-config local persistence)
14+
- **Queue & Automation:** Native Go task queue and RAG indexer
15+
- **Styling:** [TailwindCSS v4](https://tailwindcss.com)
5216

53-
## Prerequisites
17+
## 🛠️ Getting Started
5418

55-
- JDK 21
56-
- Docker (optional, for server deployment)
57-
58-
## Building
59-
60-
To build all modules:
19+
### Prerequisites
20+
- [Go 1.21+](https://go.dev) installed.
21+
- [Node.js](https://nodejs.org) and [pnpm](https://pnpm.io) for frontend development.
6122

23+
### Installation
6224
```bash
63-
./gradlew build
64-
```
25+
# Clone the repository
26+
git clone https://github.com/your-repo/jules-autopilot.git
27+
cd jules-autopilot
6528

66-
## Running the Client
29+
# Install frontend dependencies
30+
pnpm install
6731

68-
```bash
69-
./gradlew :client:run
70-
```
71-
72-
## Running the Editor
73-
74-
To run the legacy Swing-based Level Editor:
75-
76-
```bash
77-
./gradlew :client:runEditor
32+
# Build the frontend and shared packages
33+
pnpm run build
7834
```
7935

80-
**New Editor Features:**
81-
- **Select All (Ctrl+A)**: Selects the entire map, sprite, or tileset in the respective editors.
82-
- **Replace Color**: New menu item in "Palette Tools" to swap a color index globally across the tileset.
36+
### Running the Command Center
37+
You can run the entire stack via the Go backend (which serves the built frontend):
8338

84-
## Running the Server
39+
1. **Start the Go Runtime:**
40+
```bash
41+
cd backend-go
42+
go run main.go
43+
```
44+
*The dashboard will be available at `http://localhost:8080`.*
8545

86-
You can run the server locally or via Docker.
46+
2. **Frontend Dev Mode (Optional):**
47+
```bash
48+
pnpm run dev
49+
```
8750

88-
### Local
51+
## 🏗️ Architecture
8952

90-
```bash
91-
./gradlew :server:run
9253
```
93-
94-
### Docker
95-
96-
Build and start the full stack (Game Server, STUN Server, MySQL Database):
97-
98-
```bash
99-
docker-compose up --build
100-
```
101-
102-
Configuration is handled via Environment Variables (see `docker-compose.yml`) or a `server.properties` file in the working directory.
103-
104-
## Features
105-
106-
- **Modern Tech Stack**: Java 21, Gradle 8.5, LWJGL 3, Netty 4, HikariCP.
107-
- **Security**: BCrypt password hashing with automatic legacy migration.
108-
- **Containerization**: Full Docker support.
109-
- **CI/CD**: GitHub Actions workflow included.
110-
111-
## Changelog
112-
113-
### Modernization Phase (Current)
114-
- **Migrated to Gradle**: Multi-module project structure.
115-
- **Updated Java**: Targeted Java 21.
116-
- **Upgraded LWJGL**: Migrated from 2 to 3 (GLFW, OpenAL, STB).
117-
- **Upgraded Netty**: Migrated from 3 to 4.
118-
- **Security**: Added BCrypt password hashing.
119-
- **Infrastructure**: Added Docker and CI/CD support.
120-
- **Editor**: Re-enabled legacy Swing Editor, added 'Select All' and 'Replace Color' features.
121-
122-
## Roadmap
123-
124-
- [x] Modernize Build System (Gradle)
125-
- [x] Upgrade Java to 21
126-
- [x] Migrate Networking to Netty 4
127-
- [x] Migrate Graphics to LWJGL 3
128-
- [x] Re-enable Level Editor
129-
- [ ] Port Editor to LibGDX / Scene2D (Future)
130-
- [ ] Implement remaining TODO items
54+
┌──────────────────────────────────────────┐
55+
│ Browser (Vite SPA) │
56+
│ http://localhost:3006 (Dev) │
57+
│ http://localhost:8080 (Prod)

0 commit comments

Comments
 (0)