Development Setup
This page is for contributors working on the GJSify monorepo itself. If you just want to use GJSify in your own project, head to Getting Started instead.
Prerequisites
Section titled “Prerequisites”- GJS 1.86+ (GNOME 49+)
- Node.js 24+
- Yarn 4.x (via Corepack)
- GNOME development libraries:
glib2-devel,gobject-introspection-devel,gtk4-devel,libsoup3-devel,vala,blueprint-compiler
On Fedora:
sudo dnf install gjs gtk4-devel glib2-devel gobject-introspection-devel libsoup3-devel vala blueprint-compilerClone and build
Section titled “Clone and build”git clone https://github.com/gjsify/gjsify.gitcd gjsify
# Install dependenciescorepack enableyarn install
# Build all packagesyarn build
# Run the full test suite on Node.js and GJSyarn testCommon commands
Section titled “Common commands”yarn build # Build every workspace packageyarn build:node # Only the Node.js targetsyarn build:web # Only the Web API targetsyarn check # Type-check all packagesyarn test # Run tests on Node.js and GJSyarn clear # Remove all build outputsPer-package workflows follow the same pattern:
cd packages/node/fsyarn build:gjsify # Build the packageyarn build:test:gjs # Build the GJS test bundleyarn test:gjs # Run tests under GJSyarn test:node # Run the same tests under Node.jsNext steps
Section titled “Next steps”- Architecture — monorepo structure, build system and GNOME library mappings
- TDD Workflow — how to port a new Node.js or Web API to GJS test-first