Théodore Billotte
← All projects

2024 · Web platform, Epitech Innovative Project (EIP)In progress

Naucto

A collaborative browser-based fantasy console, inspired by PICO-8.

Full-Stack / Core Developer (team of 6)

Naucto

Naucto is a collaborative, browser-based fantasy console inspired by PICO-8, a complete environment for making small games entirely in the browser, where several people can build the same game together in real time. It is the Epitech Innovative Project (EIP) of a team of six, currently in public beta at beta.naucto.net.

What it does

Naucto bundles everything you need to make a game into a single web app:

  • Code editor: a full IDE built on the Monaco Editor, running Lua in the browser through the Fengari VM.
  • Sprite editor: a pixel-art editor for game art and tilesets.
  • Map editor: paint levels from your sprites on a tile grid.
  • Music composer: a chiptune sequencer powered by Tone.js.

In-browser code editor with a live preview The Monaco-based code editor running a Lua game live in the browser.

Real-time collaboration

The defining feature is multiplayer authoring: several users can edit code, sprites and maps simultaneously, Google-Docs style. This is built on CRDTs (Yjs) synchronised over WebRTC / WebSockets, so edits merge without conflicts and stay consistent across everyone in a project.

Sprite editor Shared pixel-art sprite editor, with edits propagated to every collaborator instantly.

Map editor Tile-based map editor for composing levels from project sprites.

Beyond the editor

Naucto is also a community platform: projects, publishing, settings and a hub for sharing what people make.

Project management dashboard Project dashboard for organising games and collaborators.

Project settings Per-project configuration and publishing settings.

Game preview Playing a finished game directly in the browser.

My role

Full-stack / core developer in a team of six. I worked across the TypeScript stack: React front-end, NestJS API, Prisma + PostgreSQL data layer, and on the real-time collaboration core (Yjs CRDTs over WebRTC/WebSockets), all containerised with Docker and deployed on Scaleway.

Tech

TypeScript · React · NestJS · Prisma · PostgreSQL · Lua (Fengari) · Yjs · WebRTC · Tone.js · Monaco Editor · Docker · Scaleway

Team

Videos

Connections

Projects

Education

Teams