Modern microservices platform built with Go, .NET, and Next.js
Minisource is a comprehensive microservices ecosystem providing authentication, storage, notifications, payments, and more. All services are designed for scalability, observability, and developer productivity.
.
├── auth/ # Authentication & Authorization
│ ├── backend/ # Go service (JWT, RBAC, OAuth, users)
│ └── front/ # Admin panel (Next.js 15)
├── gateway/ # API gateway and edge routing
│ └── backend/
├── notifier/ # Notification service
│ ├── backend/ # Go service (email, SMS, push, in-app, WS)
│ └── front/ # Admin panel (Next.js 15)
├── storage/ # Object and file storage service
│ └── backend/
├── log/ # Centralized logging
│ └── backend/
├── scheduler/ # Distributed job scheduler
│ └── backend/
├── comment/ # Comment service with moderation
│ └── backend/
├── feedback/ # Feedback collection
│ └── backend/
├── ticket/ # Support ticket system
│ └── backend/
├── payment/ # Payment processing (.NET)
│ └── backend/
├── cms/ # Content Management System
│ └── backend/
├── doc/ # Documentation site
│ └── backend/
├── infra/ # Infrastructure-as-code
│ └── backend/
├── go-common/ # Shared Go utilities
│ └── backend/
├── go-sdk/ # Go SDK
│ └── backend/
├── go-template/ # Go project template
│ └── backend/
├── csharp-common/ # Shared C# utilities
│ └── backend/
├── csharp-sdk/ # C# SDK
│ └── backend/
├── flutter-template/ # Flutter mobile app template
│ └── backend/
├── front-template/ # Next.js frontend template (source)
│ ├── src/
│ │ ├── api/ # API layer (Axios + services)
│ │ ├── app/ # Next.js App Router pages
│ │ │ ├── (auth)/ # Login, Register, Forgot Password
│ │ │ └── (main)/ # Dashboard, Admin, Profile
│ │ ├── components/ # shadcn/ui components
│ │ ├── hooks/ # React Query hooks
│ │ ├── stores/ # Zustand state management
│ │ └── types/ # TypeScript types
│ ├── Dockerfile # Production container
│ └── docker-compose.yml # Docker Compose
├── front-template/ # Next.js frontend template (source)
└── .github/profile/README.md # This file
- auth - Authentication and authorization service (JWT, OAuth, users, RBAC)
🌐 auth.minisource.ir
- gateway - API gateway and edge routing for all services
🌐 gateway.minisource.ir
-
storage - Object and file storage service (S3-compatible)
🌐 storage.minisource.ir -
log - Centralized logging and log aggregation
🌐 log.minisource.ir
-
notifier - Notification service for emails, SMS, and push notifications
🌐 notifier.minisource.ir -
comment - Comment service with moderation
🌐 comment.minisource.ir
-
cms - Content Management System and blog platform
🌐 cms.minisource.ir -
feedback - Feedback collection and survey backend
🌐 feedback.minisource.ir -
ticket - Support ticket and helpdesk system
🌐 ticket.minisource.ir
- scheduler - Distributed job scheduler and cron service
🌐 scheduler.minisource.ir
- payment - Payment processing and gateway integration
🌐 payment.minisource.ir
A comprehensive admin dashboard for the Authentication Service built with Next.js 15, shadcn/ui, and TypeScript:
- Authentication: Email/password, Phone OTP, Google OAuth2, Registration, Password Reset
- Admin Management: Users CRUD, Roles & Permissions, Service Clients
- Profile: Profile settings, Password change, Session management, Linked Accounts
- Security: JWT tokens, RBAC, Account lockout, OTP verification, Token validation
cd auth/front
npm install
cp .env.example .env.local
npm run devA complete admin dashboard for the Notification Service built with Next.js 15, shadcn/ui, and TypeScript:
- Dashboard: Overview metrics, notification type distribution, quick actions
- Notifications: Create/send notifications (email, SMS, push, in-app), view/filter by user, mark as read
- Templates: Full CRUD with variables, provider integration, activate/deactivate
- Preferences: Per-user channel preferences, instant vs digest, frequency settings
- Admin: Users, delivery logs, system settings
cd notifier/front
npm install
cp .env.example .env.local
npm run dev- go-sdk - Go SDK with clients for all Minisource services
- go-common - Shared Go utilities, helpers, and libraries
- go-template - Go project template with best practices
- csharp-sdk - C# SDK and client libraries
- csharp-common - Shared C# utilities and helpers
-
front-template - Next.js 15 + shadcn/ui + Tailwind template
Modern frontend starter with TypeScript, Zustand, TanStack Query, Docker, and CI/CD -
infra - Infrastructure-as-code, Terraform modules, and deployment scripts
🌐 infra.minisource.ir -
doc - Documentation site and content
🌐 doc.minisource.ir
| Layer | Technologies |
|---|---|
| Backend | Go, .NET 8, Node.js |
| Frontend | Next.js 15, React 19, TypeScript |
| UI | shadcn/ui, Tailwind CSS |
| State | Zustand, TanStack Query |
| Database | PostgreSQL, Redis |
| Message Queue | RabbitMQ, Kafka |
| Storage | SILO (S3, MinIO fork — https://silo.pgsty.com/), Azure Blob |
| Observability | Prometheus, Grafana, Loki |
| Infrastructure | Docker, Kubernetes, Terraform |
| CI/CD | GitHub Actions |
| Container Registry | Docker Hub (minisource) |
Each service in backend/ contains:
- 📄 Comprehensive README with setup instructions
- 🐳 Docker Compose for local development
- ⚙️ CI/CD workflows with GitHub Actions
- 🔒 Security policy and vulnerability reporting
- 🧪 Unit and integration tests
# Start the auth service
cd backend/auth
docker-compose up -d
make run
# Start the auth frontend admin panel
cd front
npm install
npm run devService images are built by GitHub Actions and pushed to Docker Hub after a successful build on the default branch. Configure these repository secrets:
DOCKERHUB_USERNAME— Docker Hub username or organizationDOCKERHUB_TOKEN— Docker Hub access token
# Pull and run a production image
docker pull minisource/auth:latest
export TAG=latest
docker compose -f docker-compose.prod.yml up -dWe welcome contributions! Please check each repository's CONTRIBUTING.md for guidelines.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Found a security vulnerability? Please DO NOT open a public issue.
Email us at: security@minisource.ir
See our Security Policy for details.
All Minisource projects are licensed under the MIT License unless otherwise specified.
- 🌐 Website: minisource.ir
- 📧 Email: info@minisource.ir
- 🐛 Issues: Open in respective repositories
Built with ❤️ by the Minisource team