Welcome to My Documentation¶
Complete user and developer documentation for My - the centralized management platform.
What is My?¶
My is a comprehensive management platform that provides:
- Centralized Authentication using Logto as Identity Provider
- Hierarchical Organization Management (Owner, Distributor, Reseller, Customer)
- Role-Based Access Control (RBAC) with dual-role system
- System Monitoring with real-time inventory and heartbeat tracking
- User Management with automatic welcome emails and self-service features
Documentation Structure¶
📚 User Guide¶
Complete guides for end users and administrators:
-
Getting Started
Learn how to log in, manage your profile, and understand user roles.
-
Organizations
Create and manage the business hierarchy: Distributors, Resellers, and Customers.
-
Users
Create users, assign roles, and manage permissions across your organization.
-
Systems
Create and monitor systems, view status, and manage system credentials.
-
Registration
Register external systems with My platform using system secrets.
-
Monitoring
Configure inventory collection and heartbeat monitoring for your systems.
💻 Developer Documentation¶
Technical documentation for developers and integrators:
- Backend API - Go REST API server with JWT authentication
- Collect Service - Inventory and heartbeat collection service
- Sync Tool - RBAC synchronization CLI tool
- Project Overview - Complete project documentation and architecture
Quick Start¶
🧑 For End Users¶
- Log in with your credentials
- Create organizations based on your business hierarchy
- Add users and assign appropriate roles
- Create systems for your customers
- Register systems to enable monitoring
🧑💻 For Developers¶
- Clone the repository
- Read the Project documentation
- Set up your development environment
- Follow the RBAC configuration guide
Key Features¶
🔐 Security First¶
- Argon2id secret hashing (memory-hard, GPU-resistant)
- Token Split Pattern for system credentials
- JWT-based authentication with token blacklisting
- RBAC with hierarchical permissions
🏢 Business Hierarchy¶
Each level manages only their downstream organizations.
👥 Dual-Role System¶
Organization Roles (business hierarchy): - Owner, Distributor, Reseller, Customer
User Roles (technical capabilities): - Admin, Support, and more
Effective permissions = Organization Role + User Role
📊 Real-Time Monitoring¶
- Heartbeat tracking every 5 minutes
- Inventory collection every 6 hours
- Automatic change detection with diff analysis
- Status indicators: Active 🟢 / Inactive 🟡 / Unknown ⚪ / Deleted 🔴
🔄 System Lifecycle¶
graph LR
A[Create System] --> B[Receive secret]
B --> C[Register System]
C --> D[Get system_key]
D --> E[Send Inventory]
D --> F[Send Heartbeat]
E --> G[Monitored]
F --> G Getting Help¶
For Users¶
- Browse the User Guide sections
- Check the troubleshooting sections in each guide
- Contact your system administrator
For Developers¶
- Read the component-specific READMEs
- Check the API documentation
- Review the architecture documentation in DESIGN.md
- Open an issue on GitHub
Technology Stack¶
- Backend: Go 1.24+ with Gin framework
- Database: PostgreSQL with migrations
- Cache: Redis for high-performance caching
- Identity: Logto for authentication and RBAC
- Frontend: Vue.js 3 (see separate repository)
Version Information¶
Current version: 0.0.3 (Pre-production)
This documentation is continuously updated. Last update: 2025-11-06
-
Ready to Start?
Begin with the authentication guide to log in and explore My.
-
Contribute
My is open source. Contribute on GitHub!