|
17 | 17 | - ⚙️ **Configuration-driven** - YAML-based project configuration |
18 | 18 | - 📊 **Progress Display** - Visual progress bars and detailed error messages |
19 | 19 | - 🗑️ **Cache Management** - Clean and manage dependency cache |
| 20 | +- 🌐 **Web UI** - Visual configuration editor with proto file browser |
| 21 | +- 🏥 **Environment Check** - Doctor command to diagnose development environment |
| 22 | +- 🎯 **Project Initialization** - Quick project setup with templates |
20 | 23 |
|
21 | 24 | ## Installation |
22 | 25 |
|
@@ -75,6 +78,10 @@ protobuild gen |
75 | 78 | | `web --port 9090` | Start web UI on custom port | |
76 | 79 | | `clean` | Clean dependency cache | |
77 | 80 | | `clean --dry-run` | Show what would be cleaned without deleting | |
| 81 | +| `init` | Initialize a new protobuild project | |
| 82 | +| `init --template grpc` | Initialize with specific template (basic, grpc, minimal) | |
| 83 | +| `doctor` | Check development environment and dependencies | |
| 84 | +| `doctor --fix` | Auto-install missing Go plugins | |
78 | 85 | | `version` | Show version information | |
79 | 86 |
|
80 | 87 | ## Configuration |
@@ -256,6 +263,52 @@ The web interface provides: |
256 | 263 | - 🔌 Plugin configuration |
257 | 264 | - 🚀 One-click build, lint, format operations |
258 | 265 | - 📄 Real-time YAML preview |
| 266 | +- 📊 Project statistics dashboard |
| 267 | +- 🔍 Proto file browser with syntax highlighting |
| 268 | +- 📚 Configuration examples reference |
| 269 | + |
| 270 | +### Initialize New Project |
| 271 | + |
| 272 | +```bash |
| 273 | +# Interactive initialization |
| 274 | +protobuild init |
| 275 | +
|
| 276 | +# Use specific template |
| 277 | +protobuild init --template basic # Basic Go + gRPC project |
| 278 | +protobuild init --template grpc # Full gRPC-Gateway project |
| 279 | +protobuild init --template minimal # Minimal configuration |
| 280 | +
|
| 281 | +# Specify output directory |
| 282 | +protobuild init -o ./my-project |
| 283 | +``` |
| 284 | + |
| 285 | +### Check Development Environment |
| 286 | + |
| 287 | +```bash |
| 288 | +# Diagnose environment issues |
| 289 | +protobuild doctor |
| 290 | +
|
| 291 | +# Auto-install missing Go plugins |
| 292 | +protobuild doctor --fix |
| 293 | +``` |
| 294 | + |
| 295 | +Example output: |
| 296 | +``` |
| 297 | +🏥 Protobuild Doctor |
| 298 | +
|
| 299 | + Checking development environment... |
| 300 | +
|
| 301 | + ✅ protoc installed (v25.1) |
| 302 | + ✅ protoc-gen-go installed |
| 303 | + ✅ protoc-gen-go-grpc installed |
| 304 | + ✅ buf installed (v1.28.1) |
| 305 | + ✅ api-linter installed |
| 306 | + ✅ go installed (go1.21.5) |
| 307 | + ✅ Configuration protobuf.yaml found |
| 308 | + ⚠️ Vendor directory not found (run 'protobuild vendor') |
| 309 | +
|
| 310 | + ✅ Environment check passed! |
| 311 | +``` |
259 | 312 |
|
260 | 313 | ### Force Vendor Update |
261 | 314 |
|
@@ -378,6 +431,20 @@ protobuild |
378 | 431 | - [Multi-Source Dependencies](./docs/MULTI_SOURCE_DEPS.md) - Design document for multi-source dependency resolution |
379 | 432 | - [Design Document](./docs/DESIGN.md) - Architecture and design documentation |
380 | 433 |
|
| 434 | +## Roadmap |
| 435 | +
|
| 436 | +Upcoming features planned for future releases: |
| 437 | +
|
| 438 | +| Feature | Description | Status | |
| 439 | +|---------|-------------|--------| |
| 440 | +| 🔗 **Dependency Graph** | Visualize proto file import dependencies | Planned | |
| 441 | +| ⚠️ **Breaking Change Detection** | Detect incompatible changes between versions | Planned | |
| 442 | +| 📚 **API Documentation Generator** | Auto-generate Markdown/HTML docs from proto comments | Planned | |
| 443 | +| 🎭 **Mock Server** | Auto-start mock gRPC/HTTP server for testing | Planned | |
| 444 | +| 📝 **Proto Templates** | Quick generation of common proto patterns (CRUD, pagination) | Planned | |
| 445 | +| 📊 **Field Statistics** | Analyze field naming conventions and type distribution | Planned | |
| 446 | +| ✏️ **Online Editor** | Edit proto files directly in Web UI | Planned | |
| 447 | +
|
381 | 448 | ## License |
382 | 449 |
|
383 | 450 | [MIT License](LICENSE) |
|
0 commit comments