Open Generative AI GitHub Repo: A Self-Hosting Teardown (2026) A developer's teardown of the Anil-matcha/Open-Generative-AI GitHub repo finds that the MIT-licensed Next.js and Electron studio, at roughly 29.7k stars and 5.4k forks as of October 6, 2026, is a bring-your-own-key front end rather than a fully self-hosted generative AI stack. The UI is self-hostable, but cloud generation routes through the Muapi.ai API with the user's own key, and true local inference exists only in the desktop app via the sd.cpp and Wan2GP engines, which require specific GPU hardware. TL;DR: If you search "open generative ai github" in 2026, the repo you land on is Anil-matcha/Open-Generative-AI : an MIT-licensed Next.js and Electron studio for image, video, and lip sync generation, at roughly 29.7k stars and 5.4k forks as of October 6. The UI is open source and self-hostable. Most of the models behind it are not. Cloud generation goes through the Muapi.ai API with your own key, and truly local inference only exists in the desktop app, through two engines with real hardware requirements. Some context on why I care. I build media features into client apps, mostly backend work: queues, webhooks, storage. When a client wants text-to-video in production, I usually call a hosted API such as AI Video API https://aivideoapi.com/?utm source=devto&utm medium=ugc&utm campaign=larssaleh&utm content=open-generative-ai-github-intro rather than run video models on our own GPUs. Open Generative AI keeps coming up as the "free, self-hosted" alternative, so I read through the repo, the package scripts, and the release assets to see what you actually get. The dev.to article that currently ranks for this search is a January 2025 list of three image projects: CompVis Stable Diffusion, DALL-E Mini, and StyleGAN3. Those are model repos. Open Generative AI is a different kind of thing: a front end that puts hundreds of hosted models behind one interface. From the README and package.json : packages/studio component library holds the studios, and packages/studio/src/models.js is the single list of model definitions. npm run dev , an Electron desktop build, and a hosted copy on muapi.ai. The same packages/studio library powers the hosted version on muapi.ai, which explains why the model list moves so fast. Model updates land in one file and ship to both. This is the part the repo description "Self-hosted, MIT licensed" glosses over. | Layer | Where it runs | What you need | |---|---|---| | UI all studios | Your machine or server | Node.js 18+, or the desktop installer | | Cloud models Flux, Kling, Veo, Sora, Seedance, Midjourney... | Muapi's API | A Muapi access key, billed by Muapi | | sd.cpp local engine | Your machine, desktop app only | CPU works; Metal on Apple Silicon, CUDA/Vulkan/ROCm elsewhere | | Wan2GP local engine | Your GPU box, desktop app only | Your own Wan2GP install on a CUDA or ROCm GPU | | Hosted web version | muapi.ai | A free account; always uses cloud APIs | The API flow is documented in the README. The app submits a job with POST /api/v1/{model-endpoint} , then polls GET /api/v1/predictions/{request id}/result until the status is completed , authenticating with an x-api-key header. Your key sits in browser localStorage and, per the README, is only sent to Muapi. So "free" means the code costs nothing. Generations on the big commercial models cost whatever Muapi charges for them. That's a perfectly reasonable design, a bring-your-own-key client, but you should budget for it before you tell a stakeholder it's free. The README is clear that most people should grab a prebuilt installer. If you want to hack on it, this is the path, and I checked each script name against package.json : submodules are required for the workflow and agent packages git clone --recurse-submodules https://github.com/Anil-matcha/Open-Generative-AI.git cd Open-Generative-AI "setup" = git submodule update + npm install + build all workspace packages plain npm install is not enough npm run setup then ONE of these npm run electron:dev desktop app Vite build, then Electron npm run dev web version on http://localhost:3000 production web build npm run build && npm run start If Next.js complains it can't find a pages directory, you're either not in the repo root or you cloned without submodules. Re-run npm run setup if packages/Vibe-Workflow or packages/agents are empty. Local generation is desktop-only. The hosted and web builds always call cloud APIs. sd.cpp bundled . Built on stable-diffusion.cpp. You install it with one click under Settings, then Local Models. It handles image models only: Dreamshaper 8, Realistic Vision 5.1, and Anything v5 SD 1.5, about 2.1 GB each , SDXL Base 1.0 6.9 GB , and Z-Image Turbo and Base, which also need a 2.4 GB Qwen3-4B text encoder and a 335 MB FLUX VAE. The README warns that Z-Image is known to hang a base 8 GB M-series Mac and recommends 16 GB of RAM. On 8 GB, stick to SD 1.5. Weights default to Electron's app-data folder ~/Library/Application Support/open-generative-ai/local-ai on macOS, ~/.config/open-generative-ai/local-ai on Linux . If you'd rather keep multi-GB weights on another drive, set OPEN GENERATIVE AI LOCAL AI DIR before launch. Wan2GP bring your own . This is where video lives. The app doesn't bundle Python or weights. You install Wan2GP yourself on a CUDA or ROCm machine, and the app either runs wgp.py from a local folder or talks to Wan2GP's MCP server on another box: python wgp.py --mcp --mcp-api-version 1 --mcp-transport streamable-http \ --mcp-host 0.0.0.0 --mcp-port 7866 You paste http://