Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/moderrek/jsgl
Client-side JavaScript library for creating web 2D games. Focusing at objective game. JS Game Library
https://github.com/moderrek/jsgl
2d-game animation canvas game game-development game-objects gamedev graphics html javascript javascript-game javascript-library sprite
Last synced: 7 days ago
JSON representation
Client-side JavaScript library for creating web 2D games. Focusing at objective game. JS Game Library
- Host: GitHub
- URL: https://github.com/moderrek/jsgl
- Owner: Moderrek
- License: mit
- Created: 2023-03-23T17:23:35.000Z (over 1 year ago)
- Default Branch: release
- Last Pushed: 2024-05-16T20:47:24.000Z (6 months ago)
- Last Synced: 2024-10-30T02:37:09.310Z (16 days ago)
- Topics: 2d-game, animation, canvas, game, game-development, game-objects, gamedev, graphics, html, javascript, javascript-game, javascript-library, sprite
- Language: TypeScript
- Homepage: https://moderrek.github.io/JSGLDoc/
- Size: 290 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# About The Project
Client-side JavaScript library for creating web 2D games. Focusing at objective game.
Use the JSGL to create 2D games.
## Features
* Creating 2D Games in HTML Canvas
* Auto canvas scaling to size
* Game Settings (autoCanvasResize...)
* Creating OOP game objects
* Easy events system
* Resources loading system
* Easy management objects with Transform and Vector2
* No need to write HTML. The JSGL.ExampleHTML/JSGL.DefaultGame can render default game page.
## Required
* DOM
# Getting Started
## Browser
To include JSGL in browser add script tag to body element. Like below or check [examples](https://github.com/Moderrek/JSGL/tree/release/examples/).
```html
...
...
```
## Node
To include JSGL in Node, first install with npm.
```
npm i @moderrkowo/jsgl
```
Example node code
```js
const { Vector2 } = require('@moderrkowo/jsgl');
const exampleVector2 = new Vector2(5, 10);
console.log(exampleVector2);
// Vector2 { x: 5, y: 10 }
```# Documentation
* [JSGL Reference](https://moderrek.github.io/JSGLDoc/)
* [JSGL Wiki](https://github.com/Moderrek/JSGL)
* [JSGL Examples](https://github.com/Moderrek/JSGL/tree/release/examples)
* [JSGL Changelogs](https://github.com/Moderrek/JSGL/tree/release/doc/changelogs)
# Developers
## Must have
Installed [**git**](https://git-scm.com/downloads) and [**Node.js**](https://nodejs.org/en/download)
## Building JSGL
1. First clone repository
```bash
git clone https://github.com/Moderrek/JSGL.git
```
2. Enter the JSGL directory and install development dependencies
```bash
cd JSGL
npm install
```
3. Run build script
* `npm run build` - Builds deployment bundle, types declaration and docs -> `/dist` and `/docs`
* `npm run build:prod` - Builds deployment bundle -> `/dist`
* `npm run build:dev` - Builds mapped bundle -> `/dist`
* `npm run build:types` - Builds types declaration -> `/dist`
* `npm run build:docs` - Builds web docs for JSGL -> `/docs`
# License
Distributed under the MIT License. See ``LICENSE.md`` for more information.
# Contact
Tymon Woźniak *(owner)* <[[email protected]](mailto:[email protected])>
Project: [https://github.com/Moderrek/JSGL](https://github.com/Moderrek/JSGL)