You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: readme.md
+10-14Lines changed: 10 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -44,15 +44,13 @@ See [below](#export-globals) for a discussion of the pros and cons of `export`.
44
44
45
45
# Library Culture and Contributing
46
46
47
-
`batteries` aims to be approachable to almost everyone, but I _do_ expect you to get your hands dirty. I'm very open to collaboration, and happy to talk through issues or shortcomings in good faith.
47
+
`batteries` aims to be approachable to almost everyone writing lua, but I _do_ expect you to get your hands dirty, which includes reading the source for docs.
48
48
49
-
Pull requests are welcome for anything - positive changes will be merged optimistically, and I'm happy to work with you to get anything sensible ready for inclusion.
49
+
As of 2026 my time is much more limited and I'm less able to accept pull requests and less open to direct collaboration. You're welcome to fork, and I'm not completely closed to collaboration, but I'm not going to optimistically merge things at this time.
50
50
51
-
If you have something "big" to contribute _please_ get in touch before starting work so we can make sure it fits. I'm quite open minded!
51
+
`batteries` is moving on a more personal trajectory, and I am also considering reverting some changes that haven't sat all that well with me for years. Any changes will be balanced against community impact, as I know the library has started to be used more widely, but I'm not going to just ignore my own opinions either.
52
52
53
-
If you've had a good look for the answer but something remains unclear, raise an issue and I'll address it. If you _haven't_ had a good look for the answer, checking the source _always_ helps!
54
-
55
-
If you'd prefer to talk with me about `batteries` in real time, I'm often available on the love2d discord.
53
+
If you'd like to talk with me about `batteries` in real time, I'm often available on the love2d discord.
56
54
57
55
# Module Overview
58
56
@@ -83,15 +81,15 @@ General utility data structures and algorithms to speed you along your way.
83
81
Modules to help work with spatial concepts.
84
82
85
83
-[`intersect`](./intersect.lua) - 2d intersection routines, a bit sparse at the moment.
86
-
-[`vec2`](./vec2.lua) - 2d vectors with method chaining, and garbage saving modifying operations. A bit of a mouthful at times, but you get used to it. (there's an issue discussing future solutions).
87
-
-[`vec3`](./vec3.lua) - 3d vectors as above.
84
+
-[`vec2`](./vec2.lua) - 2d vectors with method chaining, and garbage saving modifying operations. A bit of a mouthful at times, but you get used to it.
85
+
-[`vec3`](./vec3.lua) - 3d vectors as above, less mature.
88
86
89
87
**Special Interest:**
90
88
91
89
These modules are probably only useful to some folks in some circumstances, or are under-polished for one reason or another.
-[`colour`](./colour.lua) - Colour conversion routines. Alias `color`.
91
+
-[`async`](./async.lua) - Asynchronous/"Background" task management. Basically convenience around lua coroutines.
92
+
-[`colour`](./colour.lua) - Colour conversion and encoding routines. Alias `color`.
95
93
-[`manual_gc`](./manual_gc.lua) - Get GC out of your update/draw calls. Useful when trying to get accurate profiling information; moves "randomness" of GC. Requires you to think a bit about your garbage budgets though.
96
94
-[`measure`](./measure.lua) - Benchmarking helpers - measure the time or memory taken to run some code.
97
95
-[`make_pooled`](./make_pooled.lua) - add pooling/recycling capability to a class
@@ -113,11 +111,9 @@ Endless, of course :)
113
111
- `delta` - Detect and sync changes to objects.
114
112
- Broadphase:
115
113
- Spatial simplification systems for different needs. Probably AABB or point insertion of data.
116
-
- `bucket_grid` - Dumb 2d bucket broadphase.
114
+
- `bucket_grid` or `spatial_hash` - Simple 2d bucket broadphase.
117
115
- `sweep_and_prune` - Popular for bullet hell games.
118
116
- `quadtree`/`octree` - Everyone's favourite ;)
119
-
- UI
120
-
- Maybe adopt [partner](https://github.com/1bardesign/partner) in here, or something evolved from it.
121
117
- Image
122
118
- Maybe adopt [chromatic](https://github.com/1bardesign/chromatic) in here, or something evolved from it.
123
119
@@ -135,7 +131,7 @@ You can, of course, use the separate modules on their own, either requiring indi
135
131
136
132
I'd strongly recommend that if you find yourself frustrated with the above, stop and think why/if you really want to avoid globals for something intended to be commonly used across your entire codebase! Are you explicitly `require`ing `math` and `table` everywhere you use it too? Are you just as ideologically opposed to `require` being a global?
137
133
138
-
You may wish to reconsider, and save yourself typing `batteries`a few hundred times :)
134
+
You may wish to reconsider, and save yourself typing `batteries`many, many times :)
0 commit comments