Clouding is a developer-first infrastructure management platform that enables users to visualize, configure, and deploy infrastructure with visual drag-and-drop simplicity. The platform consists of a Go-based REST API backend and a modern Next.js frontend.
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Frontend β β Backend β β Database β
β (Next.js) βββββΊβ (Go/Gin) βββββΊβ (PostgreSQL) β
β Port: 3000 β β Port: 8080 β β Port: 5432 β
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
- Framework: Next.js 15.2.4 with App Router
- Language: TypeScript 5
- Styling: Tailwind CSS + Shadcn/ui
- UI Components: Radix UI primitives
- Diagrams: React Flow (@xyflow/react)
- Authentication: Supabase Auth integration
- State Management: React Context + React Hook Form
- Language: Go 1.23.4
- Framework: Gin Web Framework
- Database: PostgreSQL with SQLX
- Query Builder: Squirrel
- Authentication: JWT with Supabase integration
- Logging: Zerolog
- Configuration: Viper
- Cloud: AWS SDK (Secrets Manager)
This documentation is organized into the following sections:
π Getting Started
- Prerequisites and installation
- Environment setup
- Running the application
- Development workflow
ποΈ Backend Documentation
- API architecture and design patterns
- Database schema and models
- Authentication and middleware
- API endpoints reference
- Component architecture
- Page structure and routing
- UI component library
- Styling and theming
ποΈ Database Documentation
- Schema design
- Entity relationships
- Migration management
- Data models
π API Reference
- REST API endpoints
- Request/response schemas
- Authentication flows
- Error handling
- Available infrastructure components
- Component categories and usage
- Custom node types
- Configuration options
π οΈ Development Guide
- Code standards and conventions
- Testing strategies
- Deployment procedures
- Contributing guidelines
π§ Configuration
- Environment variables
- Configuration management
- Secrets management
- Production setup
- Drag-and-drop infrastructure components
- Visual configuration builder
- Real-time preview and validation
- Component relationship mapping
- Web Servers: Nginx, Apache
- Languages: Java, Go, Python, Node.js, PHP
- Databases: PostgreSQL, MySQL, MongoDB, Redis, Kafka
- Containers: Docker, Kubernetes
- Security: SSL, Firewall, VPN
- Monitoring: Prometheus, Grafana, ELK Stack
- User authentication and authorization
- Host/server management
- SSH credential management
- Multi-user support
- Responsive design with mobile support
- Dark/light theme support
- Glass morphism design effects
- Smooth animations and transitions
- β Backend API with user and host management
- β Frontend homepage and dashboard structure
- β Database schema with PostgreSQL
- β Authentication middleware
- β Component library and UI system
- β Infrastructure component definitions
- π Infrastructure builder with React Flow
- π Host configuration and deployment
- π SSH key management
- π Real-time updates and notifications
- π Infrastructure templates
- π Deployment automation
- π Monitoring integration
- π Cost optimization recommendations
Please read our Development Guide for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
For support and questions:
- Create an issue in the repository
- Check existing documentation
- Review API reference for integration help
Last Updated: December 2024
Version: 0.1.0
Maintainers: Development Team