Virens
Homebrew Hub web frontend, in Nuxt 3. Powered by webassembly builds of binjgb and mGBA.
Install / Use
/learn @gbdev/VirensREADME
virens
Experimental Homebrew Hub frontend in Nuxt 3, consuming the new Homebrew Hub API.
The GB/GBC emulation is powered by the binjgb emulator, running in the browser via WebAssembly. The GBA emulation is provided in a similar fashion by mGBA.
The UI component library used is PrimeVue.
Setup
Install dependencies:
yarn
Development Server
Start the development server on http://localhost:3000
yarn dev
By default, the base API is set to https://hh3.gbdev.io, you customise this by setting the BASE_API_URL environment variable to an instance of the Homebrew Hub API (be sure to have CORS set up correctly on that side).
E.g., if you're running the backend server locally:
BASE_API_URL=http://localhost:8000 yarn dev
Production
Build the application for production:
yarn build
Locally preview production build:
yarn preview
Deploy
Deployment to hh.gbdev.io is handled by a GitHub Action:
- This GitHub repository has Pages set up to serve from the
gh-pagesbranch; - A CNAME DNS record on
hh.gbdev.iopoints to GitHub servers; - Every time there's a push to the
masterbranch, the deploy.yml GitHub Action gets triggered, runningnpm run buildand uploading the result build in thegh-pagesbranch of this repository which in turns gets served by GitHub Pages; - A "CNAME" file is in the build directory, containing "hh.gbdev.io";
- A '.nojekyll' file is needed to allow the
_nuxtfolder to be statically served (otherwise ignored by a standard Jekyll build).
Acknowledgements
@binji for the emulator and the additional browser code to make the wasm build work. mrioa and aes for their nuxt knowledge.
Virens? The name of this project comes from Flavo-virens and Atro-virens, two colors from Saccardo's chromotaxy scale, proposed by an Italian mycologist in 1894, for standardizing color naming of plant specimens. They are similar to the shades in the original Game Boy palette.
Related Skills
node-connect
344.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
96.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
344.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
344.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
