📖 Product Overview
Welcome to wacraft – an open‑source WhatsApp Cloud Platform that bundles a battle‑ready API, modern Angular UI, and n8n‑compatible automation webhooks. This page gives you the big‑picture before you dive into the feature‑specific guides.
☁️ wacraft Console
console.wacraft.astervia.tech is the hosted, multi-tenant wacraft platform managed by Astervia. It runs the same open-source stack — no installation required. Sign up, create a workspace, add your WhatsApp phone config through the UI, and you're live.
Use the Console if you want to get started immediately without managing infrastructure. Everything in this documentation applies to both the Console and self-hosted deployments.
What's in the box?
| Layer | Component | Purpose |
|---|---|---|
| API Server | wacraft‑server |
Go REST service that proxies the WhatsApp Cloud API, stores state in PostgreSQL and exposes webhooks, workspaces, RBAC, campaigns & billing. |
| Web UI | wacraft‑client |
Angular SPA for operators: chats, templates, campaigns, phone configs, workspace members, billing. Tailwind + Angular Material, keyboard‑driven. |
| Docs | (this site) | Developer & operator handbook. Deployment recipes, usage walkthroughs and API reference. |
Fully open: The full backend (
wacraft-server) is MIT‑licensed with all features included. No lite/pro split.
Architecture at a glance
┌─────────────────────────────────────────────┐
│ wacraft │
│ │
│ ┌──────────────┐ ┌──────────────────┐ │
│ │ Angular UI │────▶│ Go API Server │ │
│ │ (wacraft- │ │ (wacraft-server) │ │
│ │ client) │ │ port 6900 │ │
│ └──────────────┘ └────────┬─────────┘ │
│ │ │
│ ┌───────────▼──────────┐ │
│ │ PostgreSQL │ │
│ └──────────────────────┘ │
└─────────────────────────────────────────────┘
│ ▲
▼ │
WhatsApp Cloud API Webhook events
Core Concepts
Workspaces
All resources are scoped to a workspace: contacts, messages, campaigns, phone configs, and webhooks. Users can belong to multiple workspaces with independent permission sets. See Workspaces & Permissions.
Phone Configs
Connect one or more WhatsApp phone numbers to a workspace via the UI — no environment variable restarts needed. See Phone Config Guide.
Policy‑based Permissions
Workspace membership comes with fine‑grained policies (e.g. message.send, campaign.run, billing.manage) that control exactly what each member can do. See Workspaces & Permissions.
Billing
Optional throughput‑based billing powered by Stripe. Users subscribe to plans at /billing; admins manage plans and subscriptions at /billing-admin. See Billing Guide.
API Reference
Interactive REST docs live under /docs of any running server instance.
Example: https://api.example.com/docs
- Built with Swagger UI / OpenAPI — try calls right from the browser.
- Use the auth endpoints to copy your
tokenand make requests. PutBearerbefore the token in Swagger UI.
Internationalisation (i18n)
| Path | Language |
|---|---|
/en |
English 🇺🇸 – default fallback |
/pt-BR |
Português (Brasil) 🇧🇷 |
https://app.example.com/en # English UI
https://app.example.com/pt-BR # Portuguese UI
Contribute translations! PRs for additional locales are welcome!
Where to next?
| Task | Guide |
|---|---|
| Use hosted platform | wacraft Console |
| Automate with n8n | n8n Integration |
| Tour the UI | UI Walkthrough |
| Configure a phone number | Phone Config |
| Manage team access | Workspaces & Permissions |
| Set up billing | Billing |
| Local / single‑VM deploy | Docker Compose |
| Minimal VM + Vercel CDN | Binary + Vercel |
| All deployment options | Deployment overview |
Need bespoke hosting or feature forks? Astervia provides consultancy – email wacraft@astervia.tech to scope a custom deployment.
Happy building 🚀