# XBP: Universal Build & Deployment Toolkit
**XBP** helps you build, deploy, and manage Rust, Next.js, Node.js, and more—integrates tightly with Nginx and modern cloud/devops workflows. Modular, scriptable, and built with extensibility in mind.
---
## Features
- 🔥 Deploy and manage Rust, JS, Next.js, and custom multi-language projects
- 🗄️ Nginx integration and config templating
- 📦 Modular CLI with portable library core
- 💾 Easy YAML config, SSH support, secrets management
- 🕸️ Lightweight, minimal dependencies, cross-platform
---
## Quickstart
```bash
# Install (Rust, Cargo required)
cargo install xbp-cli
# Or build from source
cargo build --release
# List all running network ports
xbp ports
# Filter by port number
xbp ports -p 3000
# Example: deploy a project
git clone <repo>
cd <repo>
xbp deploy
```
## Example Output
```
Port: 53
UID PID ... CMD
---------------------------------------------------------
systemd+ 679167 ... /usr/lib/systemd/systemd-resolved
---------------------------------------------------------
Port: 80
UID PID ... CMD
---------------------------------------------------------
root 768633 ... nginx: master process ...
www-data ... worker process ...
...
---------------------------------------------------------
```
---
## Installation
- **Release binaries**: See [Releases](https://github.com/your-org/xbp/releases)
- **From source**: Requires Rust 1.72+
```bash
git clone https://github.com/your-org/xbp.git
cd xbp
cargo build --release
./target/release/xbp --help
```
---
## Architecture
- **/src/lib.rs**: Core logic (commands, config, strategies)
- **/src/commands/**: CLI subcommand implementations
- **/src/config/**: YAML config and SSH management
- **/src/logging/**: Tracing/log infra
- **/src/strategies/**: Deploy & detection logic
---
## Commands
- `xbp ports [-p <PORT>]` — List all (or filtered) active ports
- `xbp deploy` — Build & Deploy project(s)
- `xbp config` — Edit/view CLI config
- More: `xbp --help`
---
## Contributing
PRs welcome! Please document new modules and keep interfaces generic & reusable. Use [lucide-react](https://lucide.dev/icons/) for any UI icons. See `/src/lib.rs` for API docs. All code must be free of shadow and use only rounded-sm/md, text-primary/secondary, bg-background/foreground/hover/brand styles.
---
## License
MIT