Skip to content
JollyPixelPublic

Repository files navigation

JollyPixel

⚙️ Requirements

  • Node.js version 24 or higher
  • pnpm v12+ for workspaces (the repository pins it through the packageManager field)

🧭 Workspaces

Workspaces are grouped by sub-domain. Each arrow shows what one sub-domain provides to another.

JollyPixel

🤝 Collaboration

🎨 Authoring

Shell

Editors and formats

Each editor is listed with the formats it owns: the asset kinds it reads and writes, and that asset-server stores. Editors also read the formats their documents link, such as the .pixelart textures used by voxel maps and models.

UI

🗄️ Asset Management

🏗️ Build

Planned. It will turn a project's assets into the catalog manifest the runtime loads.

🎮 Runtime

Core

Renderers

🧩 Shared libraries

Generic packages used by more than one sub-domain.

🛠️ Tooling

💃 Getting started

Public packages are published on npm and can be installed with npm or yarn. The studio, editors, formats, tooling and 🚧 renderers are private workspaces.

$ npm i @jolly-pixel/engine
# or
$ yarn add @jolly-pixel/engine

Build

To install and compile all workspaces, just run the following command at the root

$ pnpm install
$ pnpm run build

Run

@jolly-pixel/studio is the full application

$ pnpm --filter @jolly-pixel/studio dev

Test

Run tests for one workspace, then run the repository type checks:

$ pnpm --filter <workspace> test
$ pnpm run typecheck

Linter

Lint all workspaces with oxlint (the script also checks package exports and CSS):

$ pnpm run lint

📦 Publishing package

Each public package has its own prepublishOnly script that builds the TypeScript source before publishing.

$ pnpm publish --filter <workspace>

Contributors ✨

All Contributors

Thanks goes to these wonderful people (emoji key):

Thomas.G
Thomas.G

💻 📖 🐛 ⚠️ 🛡️
Alexandre Malaj
Alexandre Malaj

💻 📖 🐛
PierreDemailly
PierreDemailly

💻
Clement Gombauld
Clement Gombauld

💻

📃 License

MIT

Releases

Used by

Contributors

Languages