gb-studio

GitHub

A quick and easy to use drag and drop retro game creator for your favourite handheld video game system

9,351 stars TypeScript
RAW Doc

Repository: chrismaltby/gb-studio


Stars: 9259

README.md

GB Studio

![Github Actions Status](https://github.com/chrismaltby/gb-studio/actions?query=branch%3Adevelop) ![Storybook](https://chrismaltby.github.io/gb-studio/storybook) ![Code Coverage](https://chrismaltby.github.io/gb-studio/coverage)

Copyright (c) 2019-2026 Chris Maltby, released under the MIT license.

Patreon: gbstudiodev
Twitter: @maltby
Reddit: /r/gbstudio
Discord: Join Chat

GB Studio is a quick and easy to use retro adventure game creator for Game Boy available for Mac, Linux and Windows.
For more information see the GB Studio site

!GB Studio

GB Studio consists of an Electron game builder application and a C based game engine using GBDK.

Installation

Download a release for your operating system from the GB Studio Downloads page.

Or to run from source, clone this repo then:

- Install NodeJS (required version is given in .nvmrc)

bash
cd gb-studio

corepack enable

yarn

npm run fetch-deps

npm start

After checking out a new version you may also need to fetch dependencies again to ensure you have the latest version of GBVM + GBDK etc.

bash
cd gb-studio

npm run fetch-deps

GB Studio currently uses Node 21.7.1. If you have NVM installed you can use the included .nvmrc to switch to the supported Node version.

bash
cd gb-studio

nvm use

GB Studio CLI

Install GB Studio from source as above then

bash
npm run make:cli

yarn link

From any folder you can now run gb-studio-cli


$(yarn bin gb-studio-cli) -V

4.1.2
$(yarn bin gb-studio-cli) --help

Update the CLI

Pull the latest code and run make:cli again, yarn link is only needed for the first run.

bash
npm run make:cli

CLI Examples

- Export Project

bash
> $(yarn bin gb-studio-cli) export path/to/project.gbsproj out/

Export GBDK project from gbsproj to out directory

- Export Data

bash
> $(yarn bin gb-studio-cli) export -d path/to/project.gbsproj out/

Export only src/data and include/data from gbsproj to out directory
- Make ROM

bash
> $(yarn bin gb-studio-cli) make:rom path/to/project.gbsproj out/game.gb

Make a ROM file from gbsproj

- Make Pocket

bash
> $(yarn bin gb-studio-cli) make:pocket path/to/project.gbsproj out/game.pocket

Make a Pocket file from gbsproj

- Make Web

bash
> $(yarn bin gb-studio-cli) make:web path/to/project.gbsproj out/

Make a Web build from gbsproj

Documentation

GB Studio Documentation

Note For Translators

If you'd like to help contribute new language localisations to GB Studio you can do so by submitting pull requests adding or updating the JSON files found here https://github.com/chrismaltby/gb-studio/tree/develop/src/lang

If you're looking to update an existing translation with content that is missing, there is a handy script that lists keys found in the English localisation that are not found and copies them to your localisation

bash
npm run missing-translations lang

e.g. npm run missing-translations de


e.g. npm run missing-translations en-GB