Allow uploading or updating certificates without forcing a re-upload of an already-stored file. Repository API now accepts an optional filePath or existingFileUri and branches: a new local file is uploaded and a signed URL generated, while an existingFileUri performs a metadata-only update. Verification creation now uses the resolved fileUri; API payload uses the signed URL when available and normalizes expiry to UTC. Domain usecase and params were updated (with an assert ensuring one of filePath or existingFileUri is provided). Presentation page pre-populates the file field for edits, relaxes form validation to accept existing remote URIs, and distinguishes local vs remote paths when invoking the upload use case.
KROW Workforce Monorepo
KROW is a comprehensive workforce management platform designed to streamline operations for events, hospitality, and enterprise staffing. This monorepo contains all components of the ecosystem, from the data layer to the user-facing applications.
📍 Current Status
Latest Milestone: M4 (Released: March 5, 2026)
🚀 Repository Structure
📦 Apps (/apps)
These are the production-ready applications for our users:
web-dashboard/: The primary React/Vite dashboard for Admin, Vendors, and Clients.mobile/: Flutter applications for client and staff.client: The application for final clients to manage orders and billing.staff: The application for staff members (scheduling, clock-in/out, earnings).
⚙️ Backend (/backend)
The core data engine powering all applications:
dataconnect/: Firebase Data Connect configuration, GraphQL schemas (PostgreSQL), and auto-generated SDKs.
🛠️ Internal (/internal)
Tools and resources for the development and operations team:
launchpad/: A secure portal (DevOps Launchpad) to access internal resources, documentation, and infrastructure links.api-harness/: A technical tool for testing and validating the Data Connect API and Cloud Functions.prototypes/: Reference code and visual prototypes (synchronized from external sources).
📂 Support Directories
/docs: Project vision, technical specifications, and guides./makefiles: ModularizedMakefilelogic for project automation./scripts: Automation scripts (security, hachage, environment setup)./firebase: Global Firebase configuration (Firestore/Storage rules)./.github: GitHub Actions workflows for CI/CD and release automation.
🛠️ Tech Stack
- Frontend: React (Vite)
- Mobile: Flutter
- Backend: Firebase (Data Connect, Auth, Hosting, Functions)
- Database: PostgreSQL (managed via Cloud SQL & Data Connect)
- Infrastructure: Google Cloud Platform (GCP)
📦 Getting Started
This project uses a modular Makefile for all common tasks.
-
View available commands:
make help -
Install dependencies (Web):
make install -
Run the Web Dashboard locally:
make dev -
Run the DevOps Launchpad locally:
make launchpad-dev -
Mobile app development:
make mobile-install make mobile-client-dev-android [DEVICE=android] make mobile-staff-dev-android [DEVICE=android]
🚀 Release Process
Mobile App Releases
We use GitHub Actions for automated mobile releases:
-
Standard Release: Trigger Product Release workflow
- Auto-extracts version from
pubspec.yaml - Creates Git tags:
krow-withus-<app>-mobile/<env>-vX.Y.Z - Generates GitHub Release with CHANGELOG
- Builds and signs APK (dev/stage/prod keystores)
- Auto-extracts version from
-
Hotfix Release: Trigger Hotfix Branch Creation workflow
- Auto-increments PATCH version
- Updates
pubspec.yamlandCHANGELOG.md - Creates PR with fix instructions
See: Mobile Release Documentation for complete guide.
📚 Documentation
Core Documentation
- 00-vision.md: Project objectives and guiding principles.
- 01-backend-api-specification.md: (Legacy) Reference for data schemas.
- 02-codemagic-env-vars.md: Guide for CI/CD environment variables.
- 03-contributing.md: Guidelines for new developers and setup checklist.
- 04-sync-prototypes.md: How to sync prototypes for local dev and AI context.
- 05-project-onboarding-master.md: Comprehensive onboarding guide and project overview.
Mobile Development Documentation
- MOBILE/00-agent-development-rules.md: Rules and best practices for mobile development.
- MOBILE/01-architecture-principles.md: Flutter clean architecture, package roles, and dependency flow.
- MOBILE/02-design-system-usage.md: Design system components and theming guidelines.
- MOBILE/03-data-connect-connectors-pattern.md: Data Connect integration patterns.
- MOBILE/04-use-case-completion-audit.md: Feature implementation status and audit.
- MOBILE/05-release-process.md: Mobile app release process (quick reference).
Release Documentation
- RELEASE/mobile-releases.md: Comprehensive mobile release guide with versioning, CHANGELOGs, GitHub Actions workflows, and APK signing.
CHANGELOGs
- Staff Mobile CHANGELOG: Staff app release history (M3, M4).
- Client Mobile CHANGELOG: Client app release history (M3, M4).
🤝 Contributing
New to the team? Please read our Contributing Guide to get your environment set up and understand our workflow.
© 2026 KROW Workforce / Oloodi Technologies Inc.
