|
2 years ago | |
---|---|---|
.github/workflows | 2 years ago | |
.vscode | 2 years ago | |
client | 2 years ago | |
server | 2 years ago | |
.gitignore | 2 years ago | |
DOCUMENTATION.md | 2 years ago | |
LICENSE | 2 years ago | |
NOTES.md | 2 years ago | |
NOTES_SUBDOMAIN.md | 2 years ago | |
README.md | 2 years ago | |
ecosystem.config.js | 2 years ago | |
package-lock.json | 2 years ago | |
package.json | 2 years ago | |
tsconfig.json | 2 years ago | |
webpack.config.js | 2 years ago |
README.md
Lean 4 Game
This is a prototype for a Lean 4 game platform. The project is based on ideas from the Lean Game Maker and the Natural Number Game (NNG) of Kevin Buzzard and Mohammad Pedramfar. The project is based on Patrick Massot's prototype: NNG4.
Progress & Contributing
Currently the interface is still undergoing bigger changes, contributions are of course welcome, but it might be better to wait with them for a bit until proper support for external games is implemented and the existing games are separated from this repository. (ca. Sept. 2023)
Documentation
For game developers, there is a work-in-progress Documentation: Create a Game. Best to talk with us directly.
For the game engine itself, documentation is missing currently.
NPM Scripts
-
npm start
: Start the project in development mode. The browser will automatically reload when client files get changed. The Lean server will get recompiled and restarted when lean files get changed. The Lean server will be started without a container. The client and server can be started separately using the scriptsnpm run start_client
andnpm run start_server
. The project can be accessed viahttp://localhost:3000
. Internally, websocket requests tows://localhost:3000/websockets
will be forwarded to a Lean server running on port8080
. -
npm run build
: Build the project in production mode. All assets of the client will be compiled intoclient/dist
. On the server side, the command will set up a docker image containing the Lean server. The two parts can be built separately usingnpm run build_client
andnpm run build_server
. -
npm run production
: Start the project in production mode. This requires that the build script has been run. It will start a server on the port specified in thePORT
environment variable or by default on8080
. You can run on a specifiv port by runningPORT=80 npm run production
. The server will serve the files inclient/dist
via http and give access to the docker-contained Lean server via the web socket protocol.
Security
Providing the use access to a Lean instance running on the server is a severe security risk. That is why we start the Lean server in a Docker container secured by gVisor.