go-iam-ui is the admin interface for go-iam — a lightweight, multi-tenant Identity and Access Management (IAM) system built with Golang.
This UI provides a clean, easy-to-use dashboard for managing authentication providers, clients, users, roles, and resource permissions. It’s designed to make managing your IAM server intuitive and accessible.
✅ Admin UI: go-iam-ui
🐳 Docker Setup: go-iam-docker
🔐 Backend: go-iam
📦 SDK: go-iam-sdk
🚀 Examples: go-iam-examples 💬 Reddit Community: r/GoIAM
- 🔀 Multi-Tenant Management: Easily switch between and manage multiple projects.
- 🔐 Auth Provider Configuration: Integrate and manage providers like Google, Microsoft, GitHub etc.
- 🧩 Client Management: Manage applications (clients) connected to your IAM instance.
- 👤 User Management: View and assign roles to users.
- 🧱 RBAC: Create roles, assign resources, and manage permissions visually.
- 💡 Dynamic API Integration: Uses environment variable to connect with any running
go-iambackend.
| Component | Tech |
|---|---|
| Framework | React + Vite |
| Styling | Tailwind CSS |
| State | Hookstate |
| Package Manager | PNPM |
| API | REST (via go-iam) |
- Node.js (v18+)
- PNPM
- A running go-iam backend
git clone https://github.com/melvinodsa/go-iam-ui.git
cd go-iam-ui
pnpm install
cp sample.env .envpnpm devUse the official go-iam-docker repo to spin up everything with Docker Compose, including:
- MongoDB
- Redis
- go-iam (backend)
- go-iam-ui (admin frontend)
git clone https://github.com/melvinodsa/go-iam-docker.git
cd go-iam-docker
cp sample.env .env
docker compose up -d- Admin UI: http://localhost:4173
- API: http://localhost:3000
- API Docs: http://localhost:3000/docs
Some important environment variables used in .env:
| Variable | Description |
|---|---|
VITE_API_SERVER |
URL for go-iam backend - eg: http://localhost:3000 |