English β’ Bahasa Indonesia β’ Documentation β’ Report Bug β’ Request Feature
MoBio is a modern, privacy-first, self-hosted Link in Bio & Personal Website built for creators, engineers, and digital professionals who want complete ownership over their online presence.
Powered by React Router 7 and Cloudflare's serverless edge infrastructure (Workers, D1 SQLite, and R2 Object Storage), MoBio delivers sub-50ms global response times with zero monthly server costs under Cloudflare's generous free tier.
Featuring MoBio Studioβa powerful admin dashboard inspired by modern design systemsβMoBio includes an integrated Real Live Preview & Visual Theme Editor, allowing you to customize colors, structural layouts, card styles, typography, and optical glass effects with instantaneous real-time feedback.
| Desktop Viewport (1440px) | Mobile Viewport (390px) |
|---|---|
![]() |
![]() |
| Light Mode Dashboard | Dark Mode Dashboard |
|---|---|
![]() |
![]() |
| 20 Structural Layouts | 10 Profile Card Styles |
|---|---|
![]() |
![]() |
- True Production Rendering: Renders the actual public website components (
FixedBackground,ProfileGlassCard,VerticalLinkList,ExploreSection,ContactSection) inside an embedded simulator canvasβnot a fake mockup. - Instant In-Memory Sync: Edits to themes, layouts, typography, and optical sliders reflect in <5ms via
postMessagewithout premature database writes. - Multi-Device Viewport Simulator: Instant preview for Desktop (1440px), Laptop (1280px), Tablet (768px), and Mobile (390px with simulated iOS bezel and status bar).
- Two-Way Dock Navigation Sync: Toolbar selector for Home, Explore, and Contact synchronizes bidirectionally with the in-canvas floating dock.
- 30 Color Themes: 15 Light and 15 Dark hand-crafted themes with gradient chips and auto-contrast indicators.
- 20 Page Layouts: Minimal Stack, Classic Hero, Bento Grid, Wide Hero, Split Column, Editorial, and more.
- 10 Profile Card Styles & 3 Sizes: Floating Glass, Hero Banner, Minimal Flat, Neumorphic, Border Glow, and Clean White.
- 24 Google Fonts: Curated typography pairings with dynamic in-browser font injection.
- Optics & Surface Sliders: Custom accent color picker with 16 curated chips, WCAG AA contrast check, glass blur (8β32px), opacity (40β95%), and specular border sheen.
- Modern Architecture: Desktop collapsible sidebar, persistent topbar, breadcrumb navigation, and mobile touch drawer.
- Strict Light & Dark Mode: Unified semantic color tokens (
AdminTokens.ts) guarantee pure, legible surfaces without dark-mode leakage. - Theme-Aware Icon Picker: Full icon search across Basic Icons, Custom Uploads, and external HTTPS URLs, preserving brand colors for YouTube, Instagram, TikTok, Spotify, WhatsApp, LinkedIn, GitHub, and X.
- Atomic Draft & Publishing: All edits are saved to an isolated draft state. Preview draft changes privately before publishing atomically to the public website with a single click.
- Cloudflare R2 Integration: Direct object storage for avatars, cover banners, background images, and background MP4/WebM videos.
- Dual-Source Android Upload: Dedicated chooser for Android Gallery vs System File Manager, resolving MIME-type and video sniffing issues on mobile browsers.
- HTTP 206 Partial Content Video Streaming: Native video background playback with
autoplay,muted,loop, andplaysInline.
- 10 Content Models: Showcase projects, articles, music, videos, books, apps, photography galleries, events, code repositories, and custom links.
- Horizontal Arrow Navigation: Smooth-scrolling arrow navigation controls with boundary-aware disabling states and touch-swipe gesture support.
- Built-in Lightbox: Fullscreen image carousel and detailed metadata view.
- Direct Contact Channels: Email, WhatsApp, Telegram, and social media channels with direct intent handlers.
- Cloudflare Access OTP: Administrative endpoints are guarded behind Zero Trust Email One-Time Pin (OTP) authentication.
- Zero-Tracker Analytics (Click Monitor): Lightweight click analytics stored locally in Cloudflare D1 without logging IP addresses, User-Agents, or third-party cookies.
- Identity Shield: Production admin emails are automatically masked in public and admin metadata.
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Cloudflare Global Edge β
βββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββ΄ββββββββββββββββββββββ
β β
βΌ βΌ
βββββββββββββββββββββββββββ βββββββββββββββββββββββββββ
β Public Link in Bio β β MoBio Studio Admin β
β (me.yourdomain.com) β β (/studio) β
ββββββββββββββ¬βββββββββββββ ββββββββββββββ¬βββββββββββββ
β β
β Cloudflare Access
β (Zero Trust Email OTP)
β β
βββββββββββββββββββββββ¬ββββββββββββββββββββββ
β
ββββββββββββ΄βββββββββββ
β React Router 7 SSR β
β (Cloudflare Worker)β
ββββββββββββ¬βββββββββββ
β
βββββββββββββββββββββββ΄ββββββββββββββββββββββ
β β
βΌ βΌ
βββββββββββββββββββββββββββ βββββββββββββββββββββββββββ
β Cloudflare D1 β β Cloudflare R2 β
β (Serverless SQLite DB) β β (Media Object Storage) β
βββββββββββββββββββββββββββ βββββββββββββββββββββββββββ
- Node.js v22.0.0 or higher
- Cloudflare Account (Free tier is 100% sufficient)
- Wrangler CLI (
npm install -g wrangler)
git clone https://github.com/dimasmong/MoBio.git
cd MoBio
npm installCopy the environment examples:
cp .env.example .env
cp .dev.vars.example .dev.varsCreate your Cloudflare D1 database:
npx wrangler d1 create mobio-studio-dbCopy the resulting database_id and paste it into wrangler.json under d1_databases.
Create your Cloudflare R2 media bucket:
npx wrangler r2 bucket create mobio-media-bucketInitialize the database schema locally:
npx wrangler d1 migrations apply mobio-studio-db --localFor remote production deployment:
npx wrangler d1 migrations apply mobio-studio-db --remotenpm run devOpen your browser at http://localhost:5173 to view the public site, or http://localhost:5173/studio to access MoBio Studio.
- Login to Cloudflare via Wrangler:
npx wrangler login
- Verify your
wrangler.jsonconfiguration:npm run check
- Deploy to Cloudflare Workers:
npm run deploy
- Configure Cloudflare Access Zero Trust for
/studio:- In Cloudflare Zero Trust Dashboard: Access β Applications β Add an Application (Self-hosted).
- Set Path:
yourdomain.com/studio*. - Add Policy: Allow your personal email via One-Time Pin (OTP).
Detailed setup instructions are available in docs/STUDIO-SETUP.md and docs/DEPLOYMENT.md.
- π Architecture Guide β Technical internals, data models, and request lifecycle.
- βοΈ Configuration Reference β Environment variables, bindings, and options.
- π Deployment Guide β Step-by-step production deployment to Cloudflare.
- π» Development Guide β Local workflow, script commands, and testing.
- π¦ Installation Guide β Complete setup instructions from scratch.
- π Studio Setup & Zero Trust β Securing MoBio Studio with Cloudflare Access.
- β Troubleshooting Guide β Solutions to common issues.
Contributions are welcome! Please read CONTRIBUTING.md and CODE_OF_CONDUCT.md before opening a pull request.
- Fork the Project (
https://github.com/dimasmong/MoBio/fork) - Create your Feature Branch (
git checkout -b feat/amazing-feature) - Commit your Changes (
git commit -m 'feat: add amazing feature') - Push to the Branch (
git push origin feat/amazing-feature) - Open a Pull Request
This project is open-source and licensed under the MIT License Β© 2026 Dimas Mong.







