Skip to content

orthfx/orthfx-platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

orthfx-platform Monorepo

Welcome to the orthfx-platform monorepo! This repository contains the core platforms and shared packages that power the digital infrastructure for Orthodox Christian parishes and organizations.

Architecture & Stack

This is a Vite+ monorepo using pnpm workspaces. It provides a unified toolchain for multiple decoupled frontends that share a single source of truth (the backend) and a unified design system.

Core Stack

  • Toolchain: Vite+ (vp CLI)
  • Frameworks: React 19, Vite 8, React Router v7
  • Styling: Tailwind CSS v4, shadcn/ui
  • Backend/DB: Convex (Serverless functions, database, file storage, auth)
  • Package Manager: pnpm (wrapped by vp)

Project Structure

orthfx-platform/
├── apps/
│   ├── website/            # The main orthfx.com organizational site
│   ├── sites/              # The church website builder and directory
│   ├── pledge/             # The crowdfunding/donation platform wrapper
│   └── orthodox-registry/  # Directory and mapping of Orthodox communities
│
└── packages/
    ├── backend/    # Single Convex backend (schemas, queries, mutations)
    ├── ui/         # Shared React components (shadcn) and Tailwind config
    └── config/     # Shared configuration (future)

Getting Started

  1. Install dependencies from the root of the monorepo:

    vp install
  2. Run the development servers: You can run all frontends simultaneously from the root:

    vp run dev

    Or run a specific app:

    vp run -C apps/pledge dev
  3. Run the Backend (Convex): To modify the database schema or write new backend functions, run the Convex dev server in the backend package:

    vp dlx convex dev --path packages/backend/convex

Deployment

Each app is deployed independently to Netlify. Builds trigger automatically on push to main. The netlify.toml in each app directory controls the build config — Netlify runs the command from the repo root so workspace packages are resolved correctly.

App Netlify Site URL
apps/website orthfx-platform-website https://orthfx-platform-website.netlify.app
apps/sites orthfx-platform-sites https://orthfx-platform-sites.netlify.app
apps/pledge orthfx-platform-pledge https://orthfx-platform-pledge.netlify.app
apps/orthodox-registry orthfx-platform-registry https://orthfx-platform-registry.netlify.app

Environment Variables

Variable Apps Description
VITE_CONVEX_URL pledge, sites Convex deployment URL

Linking a new machine

Each app directory contains a .netlify/state.json (gitignored) that links it to its site. To re-establish the link locally:

cd apps/<app>
netlify link --id <site-id>

Site IDs are visible in the Netlify dashboard or via netlify api listSites.

Development Philosophy

  • Unified Toolchain: Always use the vp CLI for dev, build, lint, and package management.
  • Decoupled Backend: The @orthfx/backend package handles all financial and structural primitives. Frontends act as presentation layers over this shared engine.
  • Shared UI: Build generic UI components inside @orthfx/ui to maintain consistency.
  • Pre-commit Checks: All commits are automatically verified using vp check --fix on staged files.

About

Unified monorepo for the orthfx digital ecosystem, including website, sites, pledge, and community registry.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors