1717- ⚙️ ** Configuration-driven** - YAML-based project configuration
1818- 📊 ** Progress Display** - Visual progress bars and detailed error messages
1919- 🗑️ ** 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
2023
2124## Installation
2225
@@ -71,8 +74,14 @@ protobuild gen
7174| ` format -w ` | Format and write changes to files |
7275| ` format --diff ` | Show diff of formatting changes |
7376| ` format --builtin ` | Use builtin formatter instead of buf |
77+ | ` web ` | Start web-based configuration UI |
78+ | ` web --port 9090 ` | Start web UI on custom port |
7479| ` clean ` | Clean dependency cache |
7580| ` 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 |
7685| ` version ` | Show version information |
7786
7887## Configuration
@@ -238,6 +247,69 @@ protobuild format --builtin
238247protobuild format -w proto/ api/
239248` ` `
240249
250+ # ## Web Configuration UI
251+
252+ ` ` ` bash
253+ # Start web UI on default port (8080)
254+ protobuild web
255+
256+ # Start web UI on custom port
257+ protobuild web --port 9090
258+ ` ` `
259+
260+ The web interface provides :
261+ - 📝 Visual configuration editor
262+ - 📦 Dependency management
263+ - 🔌 Plugin configuration
264+ - 🚀 One-click build, lint, format operations
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+ ` ` `
312+
241313# ## Force Vendor Update
242314
243315` ` ` bash
@@ -339,7 +411,11 @@ protobuild
339411│ │ └── yaml_types.go # YAML type definitions
340412│ ├── format/ # Proto file formatting (builtin)
341413│ ├── formatcmd/ # Format command (buf integration)
342- │ └── linters/ # AIP linting rules
414+ │ ├── linters/ # AIP linting rules
415+ │ └── webcmd/ # Web configuration UI
416+ │ ├── cmd.go # Web command entry
417+ │ ├── server.go # HTTP server and API
418+ │ └── templates/ # HTML templates (Alpine.js + Tailwind)
343419└── internal/
344420 ├── depresolver/ # Multi-source dependency resolver
345421 ├── modutil/ # Go module utilities
@@ -355,6 +431,20 @@ protobuild
355431- [Multi-Source Dependencies](./docs/MULTI_SOURCE_DEPS.md) - Design document for multi-source dependency resolution
356432- [Design Document](./docs/DESIGN.md) - Architecture and design documentation
357433
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+
358448## License
359449
360450[MIT License](LICENSE)
0 commit comments