# Synchronization of Prototypes This document explains how to synchronize visual prototypes and POCs (Proof of Concept) into this monorepo. ## Overview Prototypes are developed in separate repositories (e.g., `client-krow-poc`). To keep this main repository clean and focused on production code, we do not commit the build artifacts of these prototypes. Instead, we use a synchronization script to bring them in locally. **Key benefits:** 1. **AI Context:** Once synced, AI tools (like Gemini) can read the prototype code to understand the intended UI/UX and logic. 2. **Local Preview:** You can view the prototypes directly through the **DevOps Launchpad**. 3. **Local Deployment:** Allows you to deploy the latest prototypes to Firebase Hosting from your machine. ## Prerequisites The synchronization script assumes that the prototype repository is cloned **adjacent** to this project directory. ```bash # Navigate to your workspace root cd .. # Clone the POC repository git clone git@github.com:Oloodi/client-krow-poc.git ``` Your folder structure should look like this: ``` /workspace ├── krow-workforce-web (This repo) └── client-krow-poc (POC repo) ``` ## How to Synchronize Run the following command from the root of this repository: ```bash make sync-prototypes ``` **What this command does:** 1. Navigates to the adjacent `client-krow-poc` repository. 2. Installs dependencies (via `pnpm`). 3. Builds the web application (`pnpm run build`). 4. Copies the resulting `dist/` folder into `internal/launchpad/prototypes/web/`. ## Git & AI Behavior * **Git:** The contents of the `prototypes/` directories are defined in `.gitignore`. They will **not** be committed to this repository. * **Gemini/AI:** These files are **not** ignored in `.geminiignore`. Once you run the sync script, the AI will be able to "see" the code and use it as a reference for your tasks. ## Deployment to Hosting If you want to make these prototypes available on the live DevOps Launchpad (`launchpad.krowwithus.com`), you must: 1. Run `make sync-prototypes` on your local machine. 2. Run `make deploy-launchpad-hosting`. --- *Note: As we add mobile prototypes (Flutter), this guide and the script will be updated to include the `flutter build web` steps.*