Globe Social Network for the Mongolian Diaspora · Live
Tengri Reach
When a Mongolian lands in Seoul, Denver, or Prague, everyone they know is scattered across the map. Tengri Reach puts the whole diaspora on one living 3-D globe — see where your people are right now, find the nearest temple, restaurant, or association, and stay connected across borders.
275Notable Mongolians
205Public Places
12Map Layers
LiveIn production
Vision
The app sits at the intersection of social networking, travel journaling, and real-time presence — closer in spirit to a living atlas of your community than a conventional social feed.
The core premise is powerful and simple: show your people where you are in the world right now. Current location is always the primary data point; home location is only a fallback. Every design decision flows from this principle.
Aesthetic Identity
Dark parchment / cartographic visual language — deep dark backgrounds, gold accents, and deep greens. Creates a premium, exploratory feel that reinforces the geographic metaphor. "Tengri" references the sky deity of Mongolian/Turkic tradition — deliberate cultural resonance.
Community Model
Invite-Only Launch
New accounts require admin approval before activation. Enforces community integrity, prevents anonymous sign-ups, and maintains trust at intimate scale.
Founding Community
Mongolians and Mongolian expats — geographically dispersed but culturally connected, many living abroad or traveling extensively.
Expansion Model
Designed for intimate scale — designed to feel like everyone on the globe is someone you know. Later expandable to other expat networks and diaspora communities.
Core Features
Interactive 3-D Globe
Globe.gl (Three.js) renders users as avatar icons pinned at current coordinates. Media posts float as cards on the globe surface. Friend-connection arcs animate between users. Dream orbit ring shows community activity.
2-D Country Map
Leaflet map with preset country pills for quick navigation and a free-text country search with dropdown. Centered on relevant regions. Useful for pinpointing locations before jumping to the globe.
Social Posts & Feed
Text-only status updates and rich media posts (photo/video). Media uploads stored in Cloudflare R2. Friends pane shows all friends with last activity timestamp. Per-user profile pages with likes and comments.
Messaging
Direct messages (1:1 DM) and group chats — persistent named rooms with multiple members. Full CRUD: create, list, add members, send and receive messages. Integrated into the Friends Pane as a tab.
Profile Setup Wizard
4-step onboarding: ToS acceptance → Identity (name, Mongolian flag) → Current Location (geocoded to lat/lng via Nominatim) → About (bio, occupation). Automatic globe placement without manual coordinate entry.
Admin Panel
Full user management table for admins. View all users, current city, edit all profile fields including lat/lng for manual coordinate correction. Account approval workflow for new registration requests.
Mongolian World Map
205 curated public anchors — embassies, consulates, associations, temples, universities, Naadam events, landmarks and Mongolian restaurants worldwide. A toggleable "Layers" legend filters 12 marker groups across globe and map. Legally-sourced (public orgs + OpenStreetMap ODbL), never scraped.
Contacts & Address Book
Import your own contacts (vCard / CSV) and plot them on the map. Edit any contact inline — name, location, phone, email, notes — with profile-photo upload. Distinguishes Everyone (any account) vs Friends (connected) vs private Contacts (external). Invite-to-app flow built, staged for later.
Safety Center
Opt-in member safety tools: a disclaimer-gated public-registry deep link (no server-side scraping) and a Have-I-Been-Pwned self-check on the member's own email. Results are never persisted as profile data — privacy-first by design.
Build Status
Facebook Login (Aug 2026) — hand-rolled OAuth into the existing session; public Privacy + Data-Deletion pages live; guaranteed-unique usernames; FB-verified users auto-active. Works end-to-end, but the Meta app is still in Dev mode — not yet flipped Live for the general public.
Connect-Facebook account linking — link FB to an existing account from settings so users never end up with a duplicate
Bilingual EN/MN language switch — obvious segmented toggle on the sign-in + new-user setup screens
3-D Globe (Globe.gl) — user avatars, media cards, friend arcs, dream orbit
2-D Leaflet map — country pills, search, zoom controls
Social posts + feed — text, photo, video with Cloudflare R2 storage
Direct messaging — 1:1 DM in Friends Pane tab
Group chats — named rooms, multi-member, full CRUD
Admin panel — user management, approval workflow
Cloudflare R2 migration — avatars + media off Supabase Storage
Admin notifications — email alert on new user registration
Mongolian World Map — 205 public places, 12-layer legend, globe + map filters
OSM data ingest — 52 Mongolian restaurants worldwide (ODbL, repeatable script)
Contacts import + edit — vCard/CSV import, inline edit, profile-photo upload
Safety Center — opt-in registry deep-link + HIBP self-check (privacy-first)
Mobile layout pass — bottom tab bar, collapsible layers, responsive cards
List view + global search — shared filter/selection store (next up)
Mobile bottom-sheets + map clustering — supercluster, 44px targets
Notifications system — likes, comments, friend requests
Multilingual UI — EN/MN language switch (shipped on sign-in + setup; expanding app-wide)
Build Timeline
Aug 17, 2026
Facebook Login — live end to end
Hand-rolled FB OAuth into the existing session; public Privacy + Data-Deletion pages; applied the referral/identity DB migration; hardened signup (guaranteed-unique usernames, FB-verified users auto-active, race-safe). Plus Connect-Facebook account linking (no duplicate accounts) and an EN/MN language switch on the sign-in & setup screens. Meta app remains in Dev mode — going Live to open FB sign-in to the public is a pending step.
Aug 15, 2026
Community “town square” feed
Public community channel live; legacy posts preserved and surfaced; block/report + moderation plumbing.
Aug 9, 2026
Notable Mongolians + heritage layers
275 notable figures plotted at their birth cities on globe + map; category consolidation; overnight data batch.
Jun 2026
Safety Center & contacts
Opt-in registry deep-link + HIBP self-check (privacy-first); per-user contacts address book with vCard/CSV import; SimLife avatar system.
Apr 2026
Media platform & storage moat
Migrated all avatars + media to Cloudflare R2; photo/video posts; friends pane with last-activity; geocoding for new members.
Mar 2026
Tengri Reach launched
3-D interactive globe (Globe.gl) + 2-D map (Leaflet), custom bcrypt/HMAC auth, Supabase Postgres, direct + group messaging, admin approval workflow.
Roadmap — Aug 2026
Strategic Wedge
Win the newcomer's first 30 days. A Mongolian who just landed in Seoul, Denver or Prague needs food, temple, association, cargo, and "who do I already know here" as one map. No incumbent answers that — it's the defensible wedge every feature below serves.
Biggest Opportunity — Un-gate the Directory
The curated public-places directory (embassies, consulates, associations, temples, universities, Naadam events, landmarks, restaurants) is the app's most link-worthy, evergreen asset — yet today it sits behind the invite-only login where search engines and drop-in visitors never see it. Next step: expose the directory as a public, SEO-indexed, no-login utility — a top-of-funnel front door that pulls in diaspora traffic, with the social globe as the sign-up upsell behind it. This is a product decision + a change to the live app, not something to ship from this summary page.
P0 — Do Next
Usability Unlock
List view + global search over a shared filter/selection store
Mobile bottom-sheets + Leaflet marker clustering (supercluster)
P1 — Compounds Value
Clarity & Data
Layer parent-grouping + smart defaults (People + Food on)
"Place yourself" onboarding — drop a pin, import contacts
Wikidata enrichment — images + embassies (CC0)
P2 — Retention & Scale
Network Depth
Travel / Cargo board — highest-frequency diaspora need
Events + Naadam RSVP — a reason to reopen the app
Configurable community engine — reuse for other diasporas
Data Strategy — the Durable Moat
✅ Keep & Persist
OpenStreetMap / OverpassODbL — live now
WikidataCC0 — images, civic pts
Foursquare OS PlacesApache 2.0 — 100M POIs
Overture MapsLicense-clean base
⚠ Query Live, Never Store
Google Places / Yelp~30-day cache limit (ToS)
FB / IG / TikTok scrapingRuled out — ToS + privacy
Use
place_id as the durable key; treat address/phone/rating as refreshable, not owned. Legal, redistributable data is the moat.Architecture & Resources
Stack
FrameworkNext.js 15 (App + Pages Router)
LanguageTypeScript / React 19
DatabaseSupabase (Postgres) — custom bcrypt auth
File storageCloudflare R2 (S3-compatible)
GlobeGlobe.gl 2.x (Three.js)
MapLeaflet 1.9
GeocodingNominatim (OpenStreetMap)
HostingVercel (serverless)
Links
Live sitetengrireach.com ↗
Vercel deploytengri-reach.vercel.app ↗
GitLabwearej/tengri-reach ↗
Supabase DBAWS us-east-1 — "Tengri Reach"
Local path
~/Projects/tengri-reachStartup promptcd ~/Projects/tengri-reach and read DEPLOYMENT.md before starting
Key Files
Main shell
app/page.tsxGlobe
components/GlobePanel.tsx2-D Map
components/MapPanel.tsxFriends pane
components/FriendPane.tsxR2 client
lib/r2.tsAPI routes
pages/api/