graph TB
subgraph "Client Layer"
Client[heyhomie-client<br/>React.js Frontend]
AdminPanel[heyhomie-admin<br/>Rails Admin Panel]
end
subgraph "API Layer"
API[heyhomie-api<br/>Rails API Server]
PaymentRecovery[heyhomie-payment-recovery<br/>Payment Recovery Service]
end
subgraph "External Services"
Stripe[Stripe Payment Gateway]
Email[Email Service]
SMS[SMS Service]
end
subgraph "Data Layer"
PostgreSQL[(PostgreSQL Database<br/>with PostGIS)]
Redis[(Redis Cache)]
end
subgraph "Infrastructure"
Docker[Docker Containers]
Nginx[Nginx Reverse Proxy]
end
%% Client connections
Client -->|HTTP/REST API| API
AdminPanel -->|HTTP/REST API| API
%% API connections
API -->|SQL Queries| PostgreSQL
API -->|Cache| Redis
API -->|Payment Processing| Stripe
API -->|Notifications| Email
API -->|SMS Notifications| SMS
%% Payment Recovery connections
PaymentRecovery -->|SQL Queries| PostgreSQL
PaymentRecovery -->|Payment Processing| Stripe
PaymentRecovery -->|Email Recovery| Email
PaymentRecovery <-->|Recovery Triggers| API
%% Infrastructure
Docker -.->|Contains| API
Docker -.->|Contains| AdminPanel
Docker -.->|Contains| PaymentRecovery
Docker -.->|Contains| PostgreSQL
Docker -.->|Contains| Redis
Nginx -->|Proxy| API
Nginx -->|Proxy| AdminPanel
classDef frontend fill:#e1f5fe
classDef backend fill:#f3e5f5
classDef database fill:#e8f5e8
classDef external fill:#fff3e0
classDef infrastructure fill:#f5f5f5
class Client,AdminPanel frontend
class API,PaymentRecovery backend
class PostgreSQL,Redis database
class Stripe,Email,SMS external
class Docker,Kubernetes,Nginx infrastructure
Last active
June 12, 2025 00:54
-
-
Save untainsYD/8699eb411b8c5441b358c12c334966d2 to your computer and use it in GitHub Desktop.
Application system design
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment