DEV Community

NOORAS FATIMA ANSARI
NOORAS FATIMA ANSARI

Posted on

Yogi Buddy: Yoga with me

This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend

What I Built

Yogi Buddy: Yoga with Me is a friendly yoga companion that anyone can open and use straight away. There's no login and no sign-up: you open the page, tap start, and a calm chat guide walks you through a session.

I built it for My friends who sit at a desk all day. They wanted to start yoga but felt intimidated by videos and didn't know which poses were safe for a stiff back."

Yogi Buddy asks how you feel, how much time you have, and whether you have any pain or injuries. Then it suggests a routine for goals like stress relief, headache relief, better sleep, back and neck pain, or weight loss, with step-by-step guidance and breathing exercises. It follows safety rules: it isn't a doctor, it asks about pregnancy and injuries first, and it recommends seeing a professional for anything serious.

Demo

Code

How I Built It

  • Open-weight models through Hugging Face Inference Providers. The backend calls Hugging Face's OpenAI-compatible router, using meta-llama/Llama-3.1-8B-Instruct.
  • Ollama for local development. I started by running models locally with Ollama, then moved to a hosted open-model backend so visitors don't need to install anything.
  • Backend proxy. The Hugging Face token lives only on the server, and the chat endpoint has rate limiting, since the app has no login.
  • Swappable model. The model name and token come from environment variables (MODEL_NAME, HF_TOKEN), so I can change models without changing code.
  • Prompt design. A system prompt defines the friendly personality, the yoga knowledge (styles, poses, breathing, goal-based routines), and the safety rules.
  • Frontend: [React + Vite], deployed on Vercel. The backend is also deployed on Render.

Why Does Open Innovation Matter?

Open models let me build something personal without being locked into one vendor or one price. A few real moments from this project:

  • I could start free and local. Running Ollama on my own machine meant I could build and test the whole experience at no cost, which mattered for a weekend project.
  • I could switch models quickly. While building, a model id I picked didn't exist on the router, and another model returned empty replies. Because the model is just an environment variable, I changed it and redeployed without rewriting anything.
  • Control over a health-adjacent app. Wellness chats can feel personal. With open models I can choose where it runs, from a hosted API to my own server, and keep the option to move it fully local later.

A closed API would have worked for a demo, but it wouldn't have given me the same freedom to experiment, swap, and self-host.

Prize Categories

Render, Github Copilot

Top comments (0)