littlejsengine 1.17.11 → 1.17.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AI.md +162 -0
- package/README.md +50 -63
- package/dist/littlejs.d.ts +150 -68
- package/dist/littlejs.esm.js +323 -105
- package/dist/littlejs.esm.min.js +1 -1
- package/dist/littlejs.js +320 -104
- package/dist/littlejs.min.js +1 -1
- package/dist/littlejs.release.js +318 -101
- package/examples/electron/{build.js → build.mjs} +26 -23
- package/examples/electron/game.js +5 -50
- package/examples/electron/index.html +2 -2
- package/examples/index.html +1 -0
- package/examples/module/{build.js → build.mjs} +22 -19
- package/examples/shorts/base.html +1 -1
- package/examples/shorts/hillGlideGame.js +1 -1
- package/examples/shorts/nineSlice.js +3 -3
- package/examples/shorts/shapes.js +1 -1
- package/examples/shorts/uiSystem.js +17 -16
- package/examples/starter/build.bat +1 -1
- package/examples/starter/{build.js → build.mjs} +25 -22
- package/examples/starter/index.html +2 -2
- package/examples/typescript/build.mjs +60 -0
- package/examples/typescript/game.js +2 -2
- package/examples/typescript/tsconfig.json +11 -2
- package/package.json +2 -2
- package/plugins/pluginExport.js +1 -0
- package/plugins/uiSystem.js +143 -20
- package/reference.md +0 -1
- package/src/engine.js +16 -14
- package/src/engineAudio.js +9 -6
- package/src/{engineBuild.js → engineBuild.mjs} +95 -78
- package/src/engineDebug.js +8 -5
- package/src/engineDraw.js +16 -14
- package/src/engineExport.js +2 -1
- package/src/engineInput.js +29 -8
- package/src/engineMath.js +46 -14
- package/src/engineMedals.js +6 -3
- package/src/engineObject.js +14 -3
- package/src/engineParticles.js +8 -3
- package/src/engineRelease.js +6 -2
- package/src/engineTileLayer.js +8 -4
- package/src/engineUtilities.js +6 -2
- package/src/engineWebGL.js +11 -8
- package/src/jsconfig.json +2 -1
- package/examples/electron/build.bat +0 -7
- package/examples/module/build.bat +0 -7
- package/examples/typescript/build.bat +0 -5
- package/examples/typescript/build.js +0 -31
package/AI.md
ADDED
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
# LittleJS Project - AI Agent Instructions
|
|
2
|
+
|
|
3
|
+
These instructions are for making changes in the LittleJS repo safely. Optimize for small diffs, clarity, and ease of use.
|
|
4
|
+
|
|
5
|
+
## Non-negotiable rules
|
|
6
|
+
|
|
7
|
+
- **Prefer minimal, local changes.** Do not refactor for style unless asked.
|
|
8
|
+
- **No new runtime dependencies.** Keep LittleJS dependency-free at runtime.
|
|
9
|
+
- **Do not hand-edit generated build artifacts.**
|
|
10
|
+
- Treat `dist/` as generated output.
|
|
11
|
+
- Make changes in `src/` (and `plugins/` when appropriate), then run the build.
|
|
12
|
+
- **Match surrounding style.** Follow the conventions in the files you touch.
|
|
13
|
+
- **Avoid breaking public APIs.** If a change could break users, call it out clearly and offer a compatible alternative.
|
|
14
|
+
|
|
15
|
+
If anything in this doc conflicts with the actual repo behavior, follow the repo behavior and update this doc.
|
|
16
|
+
|
|
17
|
+
## Key resources
|
|
18
|
+
|
|
19
|
+
- `README.md` - Overview and getting started
|
|
20
|
+
- `reference.md` - API quick reference
|
|
21
|
+
- `examples/` - Working examples demonstrating engine features
|
|
22
|
+
|
|
23
|
+
## Architecture overview
|
|
24
|
+
|
|
25
|
+
LittleJS is a modular HTML5 game engine with:
|
|
26
|
+
|
|
27
|
+
- **Core engine**: `src/engine*.js` (main loop, objects, rendering, physics, input, etc.)
|
|
28
|
+
- **Plugins**: `plugins/*.js` (optional features like Box2D, post-processing, UI, audio helpers, etc.)
|
|
29
|
+
- **Build system**: `src/engineBuild.mjs` (concatenates modules into distributable bundles)
|
|
30
|
+
|
|
31
|
+
## Repo structure and file types
|
|
32
|
+
|
|
33
|
+
### Engine source (`src/*.js`)
|
|
34
|
+
- Modular architecture (one subsystem per file)
|
|
35
|
+
- Concatenated at build time (internal source does not use ES modules)
|
|
36
|
+
- Code is vanilla JavaScript with type info expressed via JSDoc comments
|
|
37
|
+
|
|
38
|
+
### Build output (`dist/`)
|
|
39
|
+
Common outputs include:
|
|
40
|
+
- `littlejs.js` - Full bundle (debug features included)
|
|
41
|
+
- `littlejs.release.js` - Production bundle (debug stripped)
|
|
42
|
+
- `littlejs.esm.js` - ES module build (import/export)
|
|
43
|
+
- `littlejs.esm.min.js` - Minified ES module
|
|
44
|
+
- `littlejs.d.ts` - TypeScript definitions
|
|
45
|
+
|
|
46
|
+
Use via script tag or ES module import:
|
|
47
|
+
- `<script src="dist/littlejs.js"></script>`
|
|
48
|
+
- `import * as LJS from './dist/littlejs.esm.js'`
|
|
49
|
+
|
|
50
|
+
Prefer adding new optional features as plugins when it keeps the core simpler.
|
|
51
|
+
|
|
52
|
+
### Examples
|
|
53
|
+
- `examples/starter/` - Plain JavaScript global usage via `<script>` (recommended starting point)
|
|
54
|
+
- `examples/module/` - ES module import pattern
|
|
55
|
+
- `examples/typescript/` - TypeScript example usage
|
|
56
|
+
- `examples/shorts/*.js` - Single-file demos loaded by the shorts harness
|
|
57
|
+
|
|
58
|
+
### Short examples (`examples/shorts/*.js`)
|
|
59
|
+
Short examples are special:
|
|
60
|
+
- Pure JS code file, no HTML
|
|
61
|
+
- No imports, do not use LJS namespace - engine APIs are available globally
|
|
62
|
+
- Override hooks: `gameInit()`, `gameUpdate()`, `gameUpdatePost()`, `gameRender()`, `gameRenderPost()`
|
|
63
|
+
|
|
64
|
+
## Coding conventions
|
|
65
|
+
|
|
66
|
+
### Factory functions vs constructors
|
|
67
|
+
Prefer factory functions for core types:
|
|
68
|
+
- `vec2(x, y)` not `new Vector2(x, y)`
|
|
69
|
+
- `rgb(r, g, b, a)` or `hsl(h, s, l, a)` not `new Color(...)`
|
|
70
|
+
- `tile(index, size)` for tile info
|
|
71
|
+
|
|
72
|
+
Use constructors for game objects and complex types:
|
|
73
|
+
- `new EngineObject(pos, size)`
|
|
74
|
+
- `new ParticleEmitter(...)`
|
|
75
|
+
- `new Sound(zzfxParams)`
|
|
76
|
+
- `new Timer(duration)`
|
|
77
|
+
|
|
78
|
+
### Naming
|
|
79
|
+
- `camelCase` for variables and functions
|
|
80
|
+
- `PascalCase` for classes
|
|
81
|
+
- `UPPER_CASE` for constants that are truly constant (like `PI`)
|
|
82
|
+
|
|
83
|
+
### Code style
|
|
84
|
+
- Use JSDoc with `@memberof` grouping (namespaces: Engine, Math, Draw, Input, Audio, Debug, Settings, etc.)
|
|
85
|
+
- Prefer single-line comments: `// comment`
|
|
86
|
+
- Use `ASSERT(condition, 'error message')` for validation (stripped in release)
|
|
87
|
+
- Use `LOG(...)` for debug output (stripped in release)
|
|
88
|
+
|
|
89
|
+
### Type checking
|
|
90
|
+
Use built-in type helpers for validation:
|
|
91
|
+
```javascript
|
|
92
|
+
isNumber(n) // true if number and not NaN
|
|
93
|
+
isString(s) // true if not null/undefined (has toString)
|
|
94
|
+
isArray(a) // true if array
|
|
95
|
+
isVector2(v) // true if valid Vector2
|
|
96
|
+
isColor(c) // true if valid Color
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### Global variables
|
|
100
|
+
- Engine time: `time`, `timeReal`, `frame`, `timeDelta`
|
|
101
|
+
- Camera: `cameraPos`, `cameraScale`, `cameraAngle`
|
|
102
|
+
- Input: `mousePos`, `mousePosScreen`, `mouseWheel`
|
|
103
|
+
- State: `paused`, `debug`, `debugOverlay`
|
|
104
|
+
- Settings are in `engineSettings.js` with corresponding setter functions
|
|
105
|
+
|
|
106
|
+
## Common patterns
|
|
107
|
+
|
|
108
|
+
### Game structure
|
|
109
|
+
```javascript
|
|
110
|
+
function gameInit() { } // Called once after engine starts
|
|
111
|
+
function gameUpdate() { } // Called every frame for game logic
|
|
112
|
+
function gameUpdatePost() { } // Called after physics, even when paused
|
|
113
|
+
function gameRender() { } // Called before objects render
|
|
114
|
+
function gameRenderPost() { } // Called after objects render
|
|
115
|
+
|
|
116
|
+
engineInit(gameInit, gameUpdate, gameUpdatePost, gameRender, gameRenderPost, ['tiles.png']);
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### Creating objects
|
|
120
|
+
```javascript
|
|
121
|
+
class Player extends EngineObject {
|
|
122
|
+
constructor(pos) {
|
|
123
|
+
super(pos, vec2(1), tile(0, 16));
|
|
124
|
+
this.setCollision();
|
|
125
|
+
}
|
|
126
|
+
update() {
|
|
127
|
+
super.update();
|
|
128
|
+
// custom logic
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### Common drawing functions
|
|
134
|
+
```javascript
|
|
135
|
+
drawRect(pos, size, color) // solid rectangle
|
|
136
|
+
drawTile(pos, size, tileInfo, color) // sprite from tile sheet
|
|
137
|
+
drawText(text, pos, size, color) // text rendering
|
|
138
|
+
drawLine(posA, posB, thickness, color) // line between points
|
|
139
|
+
drawEllipse(pos, size, color) // filled ellipse
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Common pitfalls
|
|
143
|
+
|
|
144
|
+
- **ASSERT and LOG are stripped in release builds** - Don't rely on side effects
|
|
145
|
+
- **Don't modify constant colors** - `WHITE`, `BLACK`, `RED`, etc. are frozen; use `.copy()` first
|
|
146
|
+
- **Time variables are global** - `time`, `frame` update automatically each frame
|
|
147
|
+
- **Fixed 60 FPS timestep** - Physics runs at 60 FPS regardless of display refresh rate
|
|
148
|
+
- **WebGL is enabled by default** - Set `glEnable = false` before `engineInit()` for Canvas2D only
|
|
149
|
+
- **Tile coordinates are bottom-left origin** - Y increases upward in world space
|
|
150
|
+
|
|
151
|
+
## Developer workflows
|
|
152
|
+
|
|
153
|
+
### Build
|
|
154
|
+
```bash
|
|
155
|
+
npm run build
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Debug features
|
|
159
|
+
- Press `Esc` to toggle debug overlay
|
|
160
|
+
- Number keys toggle visualizations
|
|
161
|
+
- `+`/`-` keys control time scale
|
|
162
|
+
- Debug functions: `debugRect()`, `debugCircle()`, `debugLine()`, `debugText()`
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
<div align='center'>
|
|
4
4
|
|
|
5
|
-

|
|
6
6
|
|
|
7
7
|
[![NPM Package][npm]][npm-url]
|
|
8
8
|
[![Build Size][build-size]][build-size-url]
|
|
@@ -12,128 +12,115 @@
|
|
|
12
12
|
|
|
13
13
|
</div>
|
|
14
14
|
|
|
15
|
-
## 🚂 All
|
|
15
|
+
## 🚂 All Aboard!
|
|
16
16
|
|
|
17
17
|
LittleJS is a fast, lightweight, and fully open source HTML5 game engine designed for simplicity and performance.
|
|
18
|
-
Its small footprint is packed with a comprehensive feature set including
|
|
19
|
-
The code is clean and well documented with
|
|
20
|
-
|
|
21
|
-
### 🚀 Join the LittleJS Game Jam
|
|
22
|
-
|
|
23
|
-
*The Second Annual LittleJS Game Jam will take place From Oct 3 to Nov 3! Unleash your creativity and develop amazing games using the LittleJS game engine. 🕹️🎮 [Sign up today and get more info about the jam on itch.io!](https://itch.io/jam/littlejs-game-jam-2025)*
|
|
18
|
+
Its small footprint is packed with a comprehensive feature set including rendering, physics, particles, sound, and input handling.
|
|
19
|
+
The code is very clean and well documented with many examples to get you started quickly.
|
|
24
20
|
|
|
25
21
|
<div align='center'>
|
|
26
22
|
|
|
27
|
-
## [Demos](https://killedbyapixel.github.io/LittleJS/examples) | [Docs](https://killedbyapixel.github.io/LittleJS/docs) | [Trailer](https://youtu.be/chuBzGjv7Ms) | [Discord](https://discord.gg/zb7hcGkyZe) | [
|
|
23
|
+
## [Demos](https://killedbyapixel.github.io/LittleJS/examples) | [Docs](https://killedbyapixel.github.io/LittleJS/docs) | [Trailer](https://youtu.be/chuBzGjv7Ms) | [Discord](https://discord.gg/zb7hcGkyZe) | [FAQ](https://github.com/KilledByAPixel/LittleJS/blob/main/FAQ.md)
|
|
28
24
|
|
|
29
25
|
</div>
|
|
30
26
|
|
|
31
27
|

|
|
32
28
|
|
|
33
|
-
##
|
|
34
|
-
|
|
35
|
-
LittleJS is a small but powerful game engine with many features and no dependencies.
|
|
29
|
+
## LittleJS Features
|
|
36
30
|
|
|
37
31
|
### ✨ Graphics
|
|
38
32
|
|
|
39
|
-
- Super fast WebGL2 + Canvas2D hybrid rendering
|
|
40
|
-
- 100,000+ sprites at solid 60fps
|
|
33
|
+
- Super fast WebGL2 + Canvas2D hybrid rendering system
|
|
41
34
|
- Apply [Shadertoy](https://www.shadertoy.com) style shaders for post-processing effects
|
|
42
35
|
- Robust particle effect system and [effect design tool](https://killedbyapixel.github.io/LittleJS/examples/particles/)
|
|
43
36
|
|
|
44
37
|
### 🔊 Audio
|
|
45
38
|
|
|
46
|
-
-
|
|
39
|
+
- Sound and music with mp3, ogg, or wave files
|
|
47
40
|
- Use [ZzFX](https://killedbyapixel.github.io/ZzFX/) sound effect generator to play sounds without asset files
|
|
48
|
-
- Music and sound with mp3, ogg, wave, or [ZzFXM](https://keithclark.github.io/ZzFXM/)
|
|
49
41
|
|
|
50
42
|
### 🎮 Input
|
|
51
43
|
|
|
52
|
-
- Comprehensive input handling for
|
|
53
|
-
-
|
|
54
|
-
- On screen touch gamepad designed for mobile devices
|
|
44
|
+
- Comprehensive input handling for mouse, keyboard, gamepad, and touch
|
|
45
|
+
- Customizable on screen gamepad designed for mobile devices
|
|
55
46
|
|
|
56
47
|
### 💥 Physics
|
|
57
48
|
|
|
58
49
|
- Robust arcade physics system with collision handling
|
|
59
|
-
-
|
|
60
|
-
-
|
|
50
|
+
- Fast tilemap collision and raycasting
|
|
51
|
+
- Full Box2D integration for realistic physics
|
|
61
52
|
|
|
62
53
|
### 🚀 Flexibility
|
|
63
54
|
|
|
64
|
-
- Compatible with all modern web browsers and
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
- Open Source
|
|
55
|
+
- Compatible with all modern web browsers and mobile devices
|
|
56
|
+
- TypeScript and Module support with example projects for both
|
|
57
|
+
- Great for size coding competitions like [Js13kGames](https://js13kgames.com/)
|
|
58
|
+
- Open Source and [MIT licensed](https://github.com/KilledByAPixel/LittleJS/blob/main/LICENSE)
|
|
68
59
|
|
|
69
60
|
### 🛠️ Developer Tools
|
|
70
61
|
|
|
71
62
|
- Live example browser with code editor
|
|
72
|
-
- Debug primitive rendering system
|
|
73
|
-
- Screenshot and video capture tools
|
|
74
|
-
- Node.js build system
|
|
75
|
-
- Bitmap font rendering and built in engine font
|
|
76
|
-
- Optimized for AI-assisted development
|
|
63
|
+
- Debug overlay and primitive rendering system
|
|
77
64
|
- Medal tracking system with [Newgrounds](https://www.newgrounds.com/) support
|
|
65
|
+
- Node.js build system
|
|
78
66
|
|
|
79
67
|
## How To Use LittleJS
|
|
80
68
|
|
|
81
69
|
To get started download the latest LittleJS package from GitHub or install via npm: ```npm install littlejsengine```
|
|
82
70
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
- [
|
|
86
|
-
-
|
|
87
|
-
- [
|
|
88
|
-
- [
|
|
89
|
-
- [Check out The Little JS FAQ for more help getting started](https://github.com/KilledByAPixel/LittleJS/blob/main/FAQ.md).
|
|
90
|
-
- Join our vibrant community on [Discord](https://discord.gg/zb7hcGkyZe) to get help, share your projects, and collaborate with others!
|
|
91
|
-
- For Js13k there is a [separate branch that builds to a 7KB zip](https://github.com/KilledByAPixel/LittleJS/tree/js13k)
|
|
71
|
+
- [Making Awesome Games With LittleJS](https://youtu.be/_dXKU0WgAj8?si=ZDXLYAFDWp54hrGT) - A short talk about LittleJS with some tips on how to use it.
|
|
72
|
+
- [Tutorial: Breakout](https://github.com/KilledByAPixel/LittleJS/tree/main/examples/breakoutTutorial) - Learn how to make a simple game from scratch
|
|
73
|
+
- [Tutorial: Make a ski game](https://eoinmcgrath.com/little-ski/tutorial.html) - This tutorial by eoinmcg that shows how to make a pixel art style game.
|
|
74
|
+
- [LittleJS Quick Reference Sheet](https://github.com/KilledByAPixel/LittleJS/blob/main/reference.md) - A reference sheet to help you get started.
|
|
75
|
+
- [Little JS FAQ](https://github.com/KilledByAPixel/LittleJS/blob/main/FAQ.md) - Answers to common questions about LittleJS.
|
|
76
|
+
- [JS13k Branch](https://github.com/KilledByAPixel/LittleJS/tree/js13k) - For size coding events like JS13k there is a special branch that builds to a 7KB zip.
|
|
92
77
|
|
|
93
78
|
## Examples
|
|
94
79
|
|
|
95
|
-
|
|
80
|
+
LittleJS comes with a several demos both for learning and using as starter projects to create new games.
|
|
96
81
|
|
|
97
|
-
- [
|
|
82
|
+
- [Example Browser](https://killedbyapixel.github.io/LittleJS/examples/) - Live example browser with all examples
|
|
98
83
|
- [Breakout](https://killedbyapixel.github.io/LittleJS/examples/breakout/) - Block breaking game with post-processing effects
|
|
99
84
|
- [Puzzle Game](https://killedbyapixel.github.io/LittleJS/examples/puzzle/) - Match 3 puzzle game with HD rendering and high score tracking
|
|
100
|
-
- [Platformer](https://killedbyapixel.github.io/LittleJS/examples/platformer/) - Platformer/shooter
|
|
85
|
+
- [Platformer](https://killedbyapixel.github.io/LittleJS/examples/platformer/) - Platformer/shooter that loads level data from [Tiled Editor](https://github.com/mapeditor/tiled)
|
|
101
86
|
- [Box2D Demo](https://killedbyapixel.github.io/LittleJS/examples/box2d/) - Box2D plugin demonstration and testbed
|
|
102
|
-
- [Stress Test](https://killedbyapixel.github.io/LittleJS/examples/stress/) -
|
|
87
|
+
- [Stress Test](https://killedbyapixel.github.io/LittleJS/examples/stress/) - Sprite rendering benchmark and music system demo
|
|
103
88
|
- [Particle System Designer](https://killedbyapixel.github.io/LittleJS/examples/particles/) - Particle system editor and visualizer
|
|
104
|
-
- [Example Browser](https://killedbyapixel.github.io/LittleJS/examples/) - Live example browser with all examples
|
|
105
89
|
|
|
106
90
|
## Builds
|
|
107
91
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
To rebuild the engine you must first run ```npm install``` to setup the necessary npm dependencies. Then call ```npm run build``` to build the engine.
|
|
117
|
-
|
|
118
|
-
The starter example project includes a node js file [build.js](https://github.com/KilledByAPixel/LittleJS/blob/main/examples/starter/build.js) that compresses everything into a tiny zip file using Google Closure, UglifyJS, and ECT Zip.
|
|
92
|
+
| File | Mode | Module | Use case |
|
|
93
|
+
|------|------|--------|----------|
|
|
94
|
+
| [littlejs.js](https://github.com/KilledByAPixel/LittleJS/blob/main/dist/littlejs.js) | Debug | No | Debug mode with asserts |
|
|
95
|
+
| [littlejs.release.js](https://github.com/KilledByAPixel/LittleJS/blob/main/dist/littlejs.release.js) | Release | No | Optimized for release |
|
|
96
|
+
| [littlejs.min.js](https://github.com/KilledByAPixel/LittleJS/blob/main/dist/littlejs.min.js) | Release | No | Optimized for release and minified |
|
|
97
|
+
| [littlejs.esm.js](https://github.com/KilledByAPixel/LittleJS/blob/main/dist/littlejs.esm.js) | Debug | ESM | Debug mode with asserts |
|
|
98
|
+
| [littlejs.esm.min.js](https://github.com/KilledByAPixel/LittleJS/blob/main/dist/littlejs.esm.min.js) | Release | ESM | Optimized for release and minified |
|
|
119
99
|
|
|
120
100
|
## Games Made With LittleJS
|
|
121
101
|
|
|
122
102
|
Here are a few of the many amazing games created with LittleJS...
|
|
123
103
|
|
|
124
|
-
- [Space Huggers](https://www.newgrounds.com/portal/view/819609) -
|
|
104
|
+
- [Space Huggers](https://www.newgrounds.com/portal/view/819609) - Roguelike platformer shoot-em-up game with procedural levels. by [KilledByAPixel](https://frankforce.com/)
|
|
105
|
+
- [Black Cat Squadron](https://js13kgames.com/games/black-cat-squadron) - One button shooter based on a WW2 Navy squadron. JS13k 5th place! by [repsej](https://github.com/repsej)
|
|
125
106
|
- [L1ttl3 Paws](https://github.com/KilledByAPixel/JS13K2025) - Cat glider with procedural art and levels for JS13K! by [KilledByAPixel](https://frankforce.com/)
|
|
126
|
-
- [
|
|
107
|
+
- [KleptoKitty](https://js13kgames.com/games/kleptokitty) - Cat themed heist puzzle. JS13K 22nd place. by [eoinmcg](https://eoinmcg.itch.io/)
|
|
108
|
+
- [The Way of the Dodo](https://js13kgames.com/2024/games/the-way-of-the-dodo) - Single button platformer. JS13k 5th place! by [repsej](https://github.com/repsej)
|
|
127
109
|
- [Undergrowth](https://undergrowth.squidband.uk/) - An interactive music videogame for the band Squid. by [KilledByAPixel](https://frankforce.com/)
|
|
128
|
-
- [204Snake!](https://www.newgrounds.com/portal/view/960100) - A puzzle game that combines 2048 with snake. LittleJS Jam 1st place
|
|
129
|
-
- [GATOR](https://www.newgrounds.com/portal/view/960757) - Retro platformer shooter game where you rescue animals. LittleJS Jam 2nd place
|
|
130
|
-
- [A Hedgehog's
|
|
110
|
+
- [204Snake!](https://www.newgrounds.com/portal/view/960100) - A puzzle game that combines 2048 with snake. LittleJS Jam 1st place! by [Sodoj](https://sodoj.itch.io/) and [Shai-P](https://shai-p.itch.io/)
|
|
111
|
+
- [GATOR](https://www.newgrounds.com/portal/view/960757) - Retro platformer shooter game where you rescue animals. LittleJS Jam 2nd place! by [eoinmcg](https://eoinmcg.itch.io/)
|
|
112
|
+
- [A Hedgehog's Search](https://willsm1111.itch.io/a-hedgehogs-search) - Adventure game starring a hedgehog. LittleJS Jam 3rd place! by [willsm1111](https://willsm1111.itch.io/)
|
|
131
113
|
- [Wendol Village](https://js13kgames.com/2024/games/wendol-village) - Warcraft inspired RTS game. by [sanojian](https://github.com/sanojian)
|
|
132
|
-
- [Dead Again](https://js13kgames.com/entries/dead-again) - Top down
|
|
114
|
+
- [Dead Again](https://js13kgames.com/entries/dead-again) - Top down survival horror. by [sanojian & repsej](https://github.com/sanojian/js13k_2022)
|
|
133
115
|
- [Isletopia](https://store.steampowered.com/app/1861260/Isletopia) - Relaxing strategy game of greenifying barren islands. by [Gamex Studio](https://x.com/gamesgamex)
|
|
134
116
|
- [Tetrimals](https://nixn.itch.io/tetrimals) - A puzzle game mixing Tetris with animals. by [nixn](https://nixn.itch.io/)
|
|
135
|
-
- [
|
|
136
|
-
- [
|
|
117
|
+
- [Bug&Bee](https://itch.io/jam/littlejs-game-jam-2025/results) - Low fi shoot em up with co-op gameplay. LittleJS Jam 1st place! by [eoinmcg](https://eoinmcg.itch.io/)
|
|
118
|
+
- [Little Platformer](https://psemo.itch.io/little-platformer) - Platformer with many mechanics. LittleJS Jam 2st place! by [PSEMO](https://psemo.itch.io/), [Solita666](https://itch.io/profile/solita666), [GabrielRG](https://gabrielrg.itch.io/), [Nate](https://natesassoon.itch.io/)
|
|
119
|
+
- [Rogue Pong](https://itch.io/jam/littlejs-game-jam-2025/rate/4004165) - Roguelike crossed with classic pong gameplay. LittleJS Jam 3rd place! by [webdevbrian](https://webdevbrian.itch.io/)
|
|
120
|
+
- [LittleJS Jam 2024 Results](https://itch.io/jam/littlejs-jam-2024/results) - All the games from the first LittleJS Game Jam.
|
|
121
|
+
- [LittleJS Jam 2025 Results](https://itch.io/jam/littlejs-game-jam-2025/results) - All the games from the second LittleJS Game Jam.
|
|
122
|
+
|
|
123
|
+

|
|
137
124
|
|
|
138
125
|

|
|
139
126
|
|