This repository contains multiple packages with separate releases. Nanoforge is a powerful game engine for web browser.
The full documentation can be found at: https://nanoforge-dev.github.io/docs/engine
To use Nanoforge Engine, please refer to the CLI documentation !
First, install the CLI :
npm install -g @nanoforge-dev/cliAnd then create a new project :
nf new@nanoforge-dev/common(source) - Common interfaces and utilities used by Nanoforge Engine@nanoforge-dev/core(source) - A core package that contains game main loop@nanoforge-dev/ecs-lib(source) - A powerful data structure for managing game entities (do not use this in your projects)@nanoforge-dev/ecs-client(source) - A wrapper of@nanoforge-dev/ecs-libfor client-side usage@nanoforge-dev/ecs-server(source) - A wrapper of@nanoforge-dev/ecs-libfor server-side usage@nanoforge-dev/config(source) - A wrapper ofclass-validatorandclass-transformerto imports validation and transformation decorators@nanoforge-dev/graphics-2d(source) - A base 2D graphics library@nanoforge-dev/asset-manager(source) - A manager for loading assets to uniform workwith between client and server@nanoforge-dev/network-client(source) - A network lib with tcp and udp support for client-side usage@nanoforge-dev/network-server(source) - A network lib with tcp and udp support for server-side usage@nanoforge-dev/input(source) - An input manager for handling keyboard and mouse events@nanoforge-dev/music(source) - A music player for your game@nanoforge-dev/sound(source) - A sound manager for your game
Please read through our contribution guidelines before starting a pull request. We welcome contributions of all kinds, not just code! If you're stuck for ideas, look for the good first issue label on issues in the repository. If you have any questions about the project, feel free to ask them on Discussions. Before creating your own issue or pull request, always check to see if one already exists! Don't rush contributions, take your time and ensure you're doing it correctly.
If you don't understand something in the documentation, you are experiencing problems, or you just need a gentle nudge in the right direction, please ask on Discussions.
