natu
badger
natu | badger | |
---|---|---|
2 | 4 | |
212 | 73 | |
- | - | |
6.8 | 0.0 | |
3 months ago | over 2 years ago | |
Nim | Nim | |
GNU General Public License v3.0 or later | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
natu
-
How difficult is it to make a game for a gameboy advance
• libtonc - a low-level C library providing direct access to the hardware • Butano - a high-level modern C++ engine • gbaplusplus - a low-level modern C++ library • gba-modern - a batteries-included modern C++ project template • BPCore - an engine that uses Lua scripting, similar to PICO-8 • gbsenpai - can be used to port GB Studio (v2.0 only) games to GBA • agb * - a crate for Rust users • libseven * - a new replacement for libtonc • ugba * - a C library that can also target PC • Natu * - a toolkit using the Nim language
- How to get clean simple C output?
badger
- How to get clean simple C output?
-
The Toit language is now open source
Nothing about the entire ecosystem I was talking about. But my initial work on the keyboard firmware can be found here: https://github.com/PMunch/badger/tree/final. There are many different projects in Nim running on microcontrollers though, but not something on a common ecosystem.
HHL?
-
Nim Version 1.6 Released
Well no language is perfect, but Nim can be used in almost every domain because of it's compilation targets(C, C++, JS) and it's fast compile times(who needs interpretation when compile times are that fast!):
* Shell scripting, I still assume most people will just use Bash tho: https://github.com/Vindaar/shell
* Frontend: https://github.com/karaxnim/karax or you could bind to an existing JS library.
* Backend: For something Flask-like: https://github.com/dom96/jester or something with more defaults https://github.com/planety/prologue
* Scientific computing: the wonderful SciNim https://github.com/SciNim
* Blockchain: Status has some of the biggest Nim codebases currently in production https://github.com/status-im?q=&type=&language=nim&sort=
* Gamedev: Also used in production: https://github.com/pragmagic/godot-nim and due to easy C and C++ interop, you get access to a lot of gamedev libraries!
* Embedded: this is a domain I know very little about but for example https://github.com/elcritch/nesper or https://github.com/PMunch/badger for fun Nim+embedded stuff!
Most of the disadvantages come from tooling and lack of $$$ support.
-
Looking into Zig
I think the fact that Nim compiles to C is neat in that you can use it on any platform that has a C compiler.
Here is a recent project that uses nim for AVR platforms, for example: https://github.com/PMunch/badger
What are some alternatives?
butano - Modern C++ high level GBA engine
jester - A sinatra-like web framework for Nim.
gba-modern - An attempt to create a Game Boy Advance game using Modern C++
skybison - Instagram's experimental performance oriented greenfield implementation of Python.
gbsenpai - GB Studio Extended Nominal Player Adaptation/Interface
ulisp - A version of the Lisp programming language for ATmega-based Arduino boards.
zig-bootstrap - take off every zig
toit-color-tft
toit-lsm303dlhc - Driver for the LSM303DLHC
cps - Continuation-Passing Style for Nim 🔗
nimbus-eth2 - Nim implementation of the Ethereum Beacon Chain
beartype - Unbearably fast near-real-time hybrid runtime-static type-checking in pure Python.