Spaces:
Sleeping
Sleeping
| # Deploying to Hugging Face Spaces (Option A) | |
| Hugging Face Spaces is the best free option for FocusFlow because it supports Docker, allowing us to compile the C++ module in the cloud. | |
| ## Step 1: Create the Space | |
| 1. Go to [Hugging Face Spaces](https://huggingface.co/spaces). | |
| 2. Click **"Create new Space"**. | |
| 3. Name your space (e.g., `FocusFlow`). | |
| 4. Select **Docker** as the SDK. | |
| 5. Choose **"Blank"** template. | |
| 6. Set visibility to **Public** or **Private**. | |
| 7. Click **Create Space**. | |
| ## Step 2: Push your code | |
| Since your code is already on GitHub, you can either: | |
| ### Method A: Connect GitHub (Easiest) | |
| 1. On your new Space page, go to the **Settings** tab (top right). | |
| 2. Scroll down to the **"Connected Repository"** or **"Github Repository"** section. | |
| 3. If you don't see your repo, click **"Connect your GitHub"** to authorize Hugging Face. | |
| 4. Select your `kush-rc/FocusFlow` repository from the list. | |
| 5. Hugging Face will automatically build and deploy whenever you push to GitHub. | |
| > [!NOTE] | |
| > If you still can't see the "Connected Repository" section, it might be because the Space was created as a "Standard" Space. Make sure you selected **Docker** as the SDK during creation. | |
| ### Method B: Manually Push via Git | |
| 1. Get the Git URL of your Space (ends in `.git`). | |
| 2. Add it as a new remote: | |
| ```bash | |
| git remote add hf https://huggingface.co/spaces/YOUR_USERNAME/FocusFlow | |
| ``` | |
| 3. Push to Hugging Face: | |
| ```bash | |
| git push -f hf main | |
| ``` | |
| ## Step 3: Monitoring the Build | |
| - Once pushed, go to the **"Logs"** tab in your Space. | |
| - You will see the Docker image building and the C++ module compiling. | |
| - Once finished, the Status will change to **"Running"**. | |
| ## Important Notes | |
| - **Port**: Hugging Face requires the app to listen on port `7860`. The `Dockerfile` and `main.py` are already configured for this. | |
| - **Webcam**: Ensure your site is accessed via `https` (Hugging Face provides this automatically) so the browser allows camera access. | |