← Back to CloudAlt Docs

CloudAlt App Foundry Business Unit Architecture

Organizational Hierarchy

CloudAlt Company
├── 5 Business Units (BUs) - Self-Contained (Modular) Units
│   ├── BU #1: Stays (32 apps)
│   ├── BU #2: Friendly (4 apps)
│   ├── BU #3: Services (4 apps)
│   ├── BU #4: Lingua (5 apps)
│   └── BU #5: Life (3 apps)
│
├── 10 Divisions
│   ├── D1: Stay Overnight → Stays → Network hospitality
│   ├── D2: Twinship → Stays → Double occupancy travel partner matching
│   ├── D3: Roommate → Stays → Long-term roommate matching
│   ├── D4: altFriendly, TANDUP, Tapear → Friendly → Platonic friend & activity partner discovery
│   ├── D5: Pride City → Services → Community Marketplace
│   ├── D6: Bonjour → Services → Digital privacy and concierge service marketplace
│   ├── D7: Speech Therapy → Lingua → Speech Tree: Exercise-based rehab for stroke/TBI recovery & kids
│   ├── D8: Field Linguistics → Lingua → LingKit: Kiosk-in-hand for documenting endangered languages
│   ├── D9: Language Learning → Lingua → LingKit IPA Listen & Learn: Phonetics training & language tool
│   └── D10: Life Scheduler → Life → AI-powered task management
│
├── 47 Branded Apps
│   ├── 19 Stay Overnight apps (D1)
│   ├── 7 Twinship apps (D2: pairaway, twinship, cabinmate, vegasbuddy, resortbuddy, skibuddy, travelpairing)
│   ├── 6 Roommate apps (D3)
│   ├── 3 Friending apps (D4: altFriendly, TANDUP, Tapear)
│   ├── 1 Pride City app (D5)
│   ├── 3 Bonjour apps (D6)
│   ├── 2 Speech Therapy apps (D7)
│   ├── 1 Field Linguistics app (D8)
│   ├── 2 Language Learning apps (D9)
│   └── 3 Life Scheduler apps (D10)
│
└── 5 Django Projects - Backend Infrastructure
    ├── stays/ (port 8001) → BU1 Stays (D1, D2, D3)
    ├── friendly/ (port 8002) → BU2 Friendly (D4)
    ├── services/ (port 8003) → BU3 Services (D5, D6)
    ├── lingua/ (port 8004) → BU4 Lingua (D7, D8, D9)
    └── life/ (port 8005) → BU5 Life (D10)
        

Business Units (Strategic Layer)

Purpose:

BU #1: Stays (stays/ Django project)

Port: 8001
Database: Supabase (redacted)
Membership ID: STAY-XXXXXX

Divisions:

Total Apps: 32 branded applications

Shared Business Logic:

Why Together:

BU #2: Friendly (friendly/ Django project)

Port: 8002
Database: Supabase (redacted)
Membership ID: FREN-XXXXXX

Divisions:

Total Apps: 2 branded applications

Shared Business Logic:

Strategic Note:

BU #3: Services (services/ Django project)

Port: 8003
Database: Supabase (redacted)
Membership ID: SERV-XXXXXX

Divisions:

Total Apps: 4 branded applications

Shared Business Logic:

BU #4: Lingua (lingua/ Django project)

Port: 8004
Database: Supabase (TBD)
Membership ID: LING-XXXXXX

Divisions:

Total Apps: 5 branded applications

Shared Business Logic:

BU #5: Life (life/ Django project)

Port: 8005
Database: Supabase (TBD)
Membership ID: LIFE-XXXXXX

Divisions:

Total Apps: 3 branded applications

Shared Business Logic:

Divisions (Customer-Facing Layer)

Purpose:

Division Breakdown:

Click on any division name to see all apps and domains

Division Flagship BU Django Project # Apps Target Audience
D1: Stay Overnight stayovernight.app Stays stays/ 19 Short-term travel companions, LGBTQ+ travelers, economy of sharing enthusiasts
D2: Twinship pairaway.app Stays stays/ 7 Single travelers seeking double occupancy travel companions
D3: Roommate roommate.works Stays stays/ 6 Roommate seekers, long-term housing market, LGBTQ+ housing needs
D4: altFriendly altfriendly.app Friendly friendly/ 2 An alternative to dating, an activity-based friend matching platform
D5: Pride City pride.city Services services/ 1 LGBTQ+ community event goers
D6: Bonjour bonjour.locker Services services/ 3 Digital device privacy storage, service providers, marketplace consumers
D7: Speech Therapy speechtree.app Lingua lingua/ 2 Adults recovering from stroke/TBI, homeschool parents with speech-delayed kids
D8: Field Linguistics lingkit.app Lingua lingua/ 1 Field linguists cataloging endangered & minority languages worldwide
D9: Language Learning ipa.lingkit.app Lingua lingua/ 2 Linguistics students, language enthusiasts, polyglots mastering IPA & phonetics
D10: Life Scheduler lifescheduler.app Life life/ 3 Productivity seekers, time management enthusiasts

Branded Apps (Marketing & Delivery Layer)

Purpose:

Brand Strategy:

Multiple apps per division with:

Complete App Inventory by Division:

Stay Overnight Division (19 apps):

Flagship: stayovernight.app - Direct descriptor branding

stayovernight.app        → Blue #3B82F6           → General market flagship
hostguest.app            → Teal #14B8A6           → Official Stay Overnight brand (hostguest_app)
hostguest.com            → Companion domain       → Brand protection & alt TLD
pinkguest                → Pink #F90772           → LGBTQ+ focused
purpleguest              → Purple #8A2BE2         → Alternative branding
orangeguest              → Orange #FF8C00         → Alternative branding
rainbowhost              → Rainbow gradient       → LGBTQ+ host focus
greenhost_app            → Green #228B22          → Eco-friendly angle
guestroom_city           → Urban palette          → City focus
guestroom_help           → Service colors         → Service angle
guestroom_host           → Host-centric           → Host-focused
guestroom_lgbt           → Pride colors           → LGBTQ+ focus
guestroom_pink           → Pink variant           → Pink branding
guestroom_travel         → Travel blue            → Travel TLD
homestay_international   → Global colors          → International market
homestay_lgbt            → Pride focus            → LGBTQ+ homestay
        

Roommate Works Division (5 apps):

Flagship: roommate.works - Professional/functional branding

roommate.works           → Burgundy + Slate      → General market flagship
roommate.guru            → Burgundy + Gold       → Expert positioning
roommate.help            → Burgundy + Sky Blue   → Service angle
rooms_gay                → Pride colors          → LGBTQ+ roommate focus
room_lgbt                → Pride branding        → LGBTQ+ rooms
        

Twinship Division (7 apps):

Flagship: pairaway.app - Double occupancy travel companion pairing

pairaway.app             → Indigo #4B0082        → Division flagship - travel companion pairing
twinship.app             → Indigo #4B0082        → Alt flagship - single travelers seeking companions
cabinmate.app            → Cruise Blue           → Cruise cabin mate matching
vegasbuddy.app           → Vegas Gold            → Vegas trip companion matching
resortbuddy.app          → Resort Teal           → All-inclusive resort buddy matching
skibuddy.app             → Alpine White          → Ski trip companion matching
travelpairing.app        → Indigo #4B0082        → SEO/Marketing test - generic travel pairing
        

altFriendly Division (3 apps):

Flagship: altfriendly.app - Activity-based platonic friend matching

altfriendly.app          → Primary brand         → General market flagship
tandup.app               → TANDUP                → Gay men's friend-matching app
tapear.app               → Tapear                → Real-time after-work social coordination
        

Pride City Division (1 app):

Flagship: pride.city - LGBTQ+ community hub

pride.city               → Pride colors          → LGBTQ+ community events & services
        

Bonjour Division (3 apps):

Flagship: bonjour.locker - Service Marketplace and Digital Privacy Solutions

bonjour.locker           → Primary brand         → Service marketplace flagship
bonjour.services         → Service marketplace   → Digital concierge
bonjour.buzz             → Service discovery     → Alerts and notifications
        

Total: 47 branded applications across 10 divisions

Market Positioning:

Complete App Inventory (48 Apps)

Division App Name Domain
D1: Stay Overnight (19 apps)
D1Stay Overnightstayovernight.app
D1HOSTGUESThostguest.app
D1pinkGuestpinkguest.app
D1Pink Hostpinkhost.app
D1purpleGuestpurpleguest.app
D1Purple Hostpurplehost.app
D1Orange Guestorangeguest.app
D1Orange Hostorangehost.app
D1Rainbow Hostrainbow.host
D1GreenHostgreen.host
D1GUESTROOM Cityguestroom.city
D1GUESTROOM Helpguestroom.help
D1GUESTROOM Hostguestroom.host
D1GUESTROOM LGBTguestroom.lgbt
D1GUESTROOM Pinkguestroom.pink
D1GUESTROOM Travelguestroom.travel
D1Home Stay Internationalhomestay.international
D1HomeStay LGBThomestay.lgbt
D1Room LGBTroom.lgbt
D2: Twinship (7 apps)
D2PAIRAWAYpairaway.app
D2Twinshiptwinship.app
D2Cabin Matecabinmate.app
D2Vegas Buddyvegasbuddy.app
D2ResortBuddyresortbuddy.app
D2SkiBuddyskibuddy.app
D2The Travel Pairing Apptravelpairing.app
D3: Roommate (6 apps)
D3ROOMMATE Worksroommate.works
D3Roommate Gururoommate.guru
D3Roommate Helproommate.help
D3Roommate LGBTroommate.lgbt
D3Roommate Cityroommate.city
D3Rooms GAYrooms.gay
D4: altFriendly (3 apps)
D4altFriendlyaltfriendly.app
D4TANDUPtandup.app
D4Tapeartapear.app
D5: Pride City (1 app)
D5Pride Citypride.city
D6: Bonjour (3 apps)
D6Bonjour Lockerbonjour.locker
D6Bonjour Servicesbonjour.services
D6Bonjour Buzzbonjour.buzz
D7: Speech Therapy (2 apps)
D7Speech Treespeechtree.app
D7Speech Tree Kidsjunior.speechtree.app
D8: Field Linguistics (1 app)
D8LingKitlingkit.app
D9: Language Learning (2 apps)
D9LingKit IPAipa.lingkit.app
D9LingKit Learnlearn.lingkit.app
D10: Life Scheduler (3 apps)
D10Life Schedulerlifescheduler.app
D10Life Pushlifepush.app
D10Life Raiseliferaise.app

Django Projects (Backend Infrastructure)

Django

Our backend is organized into five Django projects—one per Business Unit. This structure was selected to optimize for three organizational priorities:

Strategic Flexibility
Each Business Unit operates as a self-contained service, enabling independent scaling, licensing, or divestiture without cross-BU dependencies.

Development Efficiency
Divisions within each BU share common business logic, authentication, and data models—reducing duplication while maintaining clear boundaries.

Operational Clarity
Each project runs on its own port with dedicated configuration, simplifying deployment, monitoring, and team ownership.

Project Structure:

cloudalt-django/
├── stays/                     # BU #1: Stays (port 8001)
│   ├── manage.py
│   ├── config/
│   ├── members/               # Universal membership (BU-level)
│   ├── stay_overnight/        # D1: Division-specific logic
│   ├── twinship/              # D2: Division-specific logic
│   └── roommate/              # D3: Division-specific logic
│
├── friendly/                 # BU #2: Friendly (port 8002)
│   ├── manage.py
│   ├── config/
│   ├── members/               # Universal membership (BU-level)
│   └── altfriendly/           # D4: Division-specific logic
│
├── services/                  # BU #3: Services (port 8003)
│   ├── manage.py
│   ├── config/
│   ├── members/               # Universal membership (BU-level)
│   ├── pride_city/            # D5: Division-specific logic
│   └── bonjour/               # D6: Division-specific logic
│
├── lingua/                    # BU #4: Lingua (port 8004)
│   ├── manage.py
│   ├── config/
│   ├── members/               # Universal membership (BU-level)
│   ├── speech_therapy/        # D7: Division-specific logic
│   ├── field_linguistics/     # D8: Division-specific logic
│   └── language_learning/     # D9: Division-specific logic
│
└── life/                      # BU #5: Life (port 8005)
    ├── manage.py
    ├── config/
    ├── members/               # Universal membership (BU-level)
    └── life_scheduler/        # D10: Division-specific logic
            

Key Architecture Principles

1. Membership Model: BU-Level, Not App-Level

Problem Solved: User signs up on pinkGuest → Should auto-login to orangeGuest, roommate_guru, etc.

Solution:

Example:
Kate signs up on pinkGuest (Stay Overnight)
→ Creates profile in stays/ Django project
→ Auto-logged into ALL Stay Overnight apps (orange, purple, green, etc.)
→ Can join Roommate with one click (same BU)
→ Would need NEW signup for altFriendly (different BU)

2. Shared vs. Division-Specific Logic

Shared at BU Level:

Division-Specific:

3. Frontend Organization

cloudalt-react/apps/
├── bu1/stays/
│   ├── stay-overnight/        # D1: 19 apps
│   │   ├── pinkguest/
│   │   │   ├── web/           # React web app
│   │   │   ├── mobile/        # React Native mobile
│   │   │   └── shared/        # Shared code
│   │   ├── stayovernight/
│   │   └── ... (17 more)
│   │
│   ├── twinship/              # D2: 7 apps
│   │   ├── pairaway/
│   │   ├── twinship/
│   │   ├── cabinmate/
│   │   ├── vegasbuddy/
│   │   ├── resortbuddy/
│   │   ├── skibuddy/
│   │   └── travelpairing/
│   │
│   └── roommate/              # D3: 6 apps
│       ├── roommate_works/
│       └── ... (5 more)
│
└── bu2/friendly/             # D4: 3 apps
│   └── altfriendly/
│       ├── altfriendly_app/
│       ├── tandup/
│       └── tapear/
│
├── bu3/services/              # D5-D6: 4 apps
│   ├── pride-city/
│   └── bonjour/
│
├── bu4/lingua/                # D7-D9: 5 apps
│   ├── speech-therapy/
│   ├── field-linguistics/
│   └── language-learning/
│
└── bu5/life/                  # D10: 3 apps
    └── life-scheduler/

cloudalt-flutter/apps/         # Same BU structure
└── (mirrors React structure)

packages/                      # Shared code
├── ui/                        # Cross-division UI components
├── ui-twinship/               # Division-level UI components
├── theme/                     # Brand color tokens (21 themes)
├── types/                     # TypeScript types
└── services/                  # API clients
            

4. Brand Theming System

Theme (T01-T22) → Colors only | UX Profile (R01-R15) → Typography, spacing, shapes, shadows, animations

// Theme Layer (colors) - 22 themes
theme['T01-pink'].colors.primary = '#F90772'     // pinkGuest
theme['T02-orange'].colors.primary = '#FF8C00'   // orangeGuest
theme['T03-purple'].colors.primary = '#9370DB'   // purpleGuest

// UX Profile Layer (non-color properties) - 15 profiles
uxProfile['R01-warm'].typography.scale = 1.2
uxProfile['R01-warm'].spacing.base = 8
uxProfile['R01-warm'].animation.duration = 'moderate'

// Note: Division is an organizational grouping, NOT a token layer
            

Brand Colors:

Brand Hex Used By
Pink #F90772 pinkGuest
Orange #FF8C00 orangeGuest
Purple #8A2BE2 purpleGuest, roommate_guru
Green #228B22 greenHost
Burgundy #800020 Stay Overnight flagship, Roommate apps

Delivery & Deployment

Backend Deployment:

GCP Cloud Run (containerized)
├── stays-api:8001        → BU1 Stays (D1, D2, D3)
├── friendly-api:8002    → BU2 Friendly (D4)
├── services-api:8003     → BU3 Services (D5, D6)
├── lingua-api:8004       → BU4 Lingua (D7, D8, D9)
└── life-api:8005         → BU5 Life (D10)

Each with:
- Auto-scaling
- Load balancing
- Supabase managed PostgreSQL
- Cloud Storage (GCP) for media
- Firestore for real-time chat
        

Frontend Deployment:

Cloudflare Pages (static sites)
├── pinkguest.com         → D1 Stay Overnight / pinkguest
├── stayovernight.app     → D1 Stay Overnight / flagship
├── pairaway.app          → D2 Twinship / flagship
├── twinship.app          → D2 Twinship / alt flagship
├── roommate.works        → D3 Roommate / flagship
├── altfriendly.app       → D4 altFriendly / flagship
├── pride.city            → D5 Pride City / flagship
├── bonjour.locker        → D6 Bonjour / flagship
├── lingkit.app           → D8 Field Linguistics / flagship
├── lifescheduler.app     → D10 Life Scheduler / flagship
└── ... (48 total apps)

Each with:
- Global CDN
- Cloudflare Access (GitHub OAuth)
- GitHub Actions auto-deploy
        

Summary

Layer Purpose Count Example
Business Units Strategic grouping, self-contained units 5 Stays, Friendly, Services, Lingua, Life
Django Projects Backend infrastructure 5 stays/, friendly/, services/, lingua/, life/
Divisions Customer-facing brands 10 D1-D3 (Stays), D4 (Friendly), D5-D6 (Services), D7-D9 (Lingua), D10 (Life)
Branded Apps Marketing channels, delivery 46 stayovernight, pinkguest, pairaway, twinship, roommate.works, etc.

Workflow

User opens pinkGuest app (branded app)
→ Uses Stay Overnight division (customer-facing brand)
→ Calls stays/ API (Django project)
→ Managed by Stays BU (strategic unit)
→ Shares membership with ALL Stays apps

Production Logic

← Back to CloudAlt Docs

Stay Overnight Division - All Apps & Domains

Roommate Works Division - All Apps & Domains

D2: Twinship Division - All Apps & Domains

altFriendly Division - All Apps & Domains

Pride City Division - All Apps & Domains

D6: Bonjour Division - All Apps & Domains

D7: Speech Therapy Division - All Apps & Domains

D8: Field Linguistics Division - All Apps & Domains

D9: Language Learning Division - All Apps & Domains

D10: Life Scheduler Division - All Apps & Domains