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.
Install dependencies:
yarn
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
Build the application for production:
yarn build
Locally preview production build:
yarn preview
Deployment to hh.gbdev.io is handled by a GitHub Action:
- This GitHub repository has Pages set up to serve from the
gh-pages
branch; - A CNAME DNS record on
hh.gbdev.io
points to GitHub servers; - Every time there's a push to the
master
branch, the deploy.yml GitHub Action gets triggered, runningnpm run build
and uploading the result build in thegh-pages
branch 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
_nuxt
folder to be statically served (otherwise ignored by a standard Jekyll build).
@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.