Show HN: Syna – Minimal ML and RL Framework Built from Scratch with NumPy
Show HN (score: 5)Description
I built Syna to understand how modern ML frameworks like PyTorch actually work — from the ground up.
It’s a minimal, define-by-run (dynamic graph) framework inspired by DeZero, written entirely with NumPy. Unlike most libraries, Syna includes a basic reinforcement learning module right inside the same framework — no separate packages.
It’s not about speed or GPUs — it’s about clarity, simplicity, and learning the internals of machine learning. Great for students, educators, and anyone curious about what’s really happening under the hood.
GitHub: https://github.com/sql-hkr/syna
I also built a web app that visualizes how neural networks learn in real time — perfect for beginners exploring training dynamics:
GitHub: https://github.com/sql-hkr/xor Demo: https://sql-hkr.github.io/xor/
Happy hacking!
More from Show
Show HN: Widen – Open-source Mac Postgres GUI with local or cloud text-to-SQL
Show HN: Widen – Open-source Mac Postgres GUI with local or cloud text-to-SQL Github: <a href="https://github.com/betocmn/widen" rel="nofollow">https://github.com/betocmn/widen</a><p>I was paying for DataGrip for several years as my desktop database GUI but if I wanted text-to-SQL with LLMs I'd have to pay even more on top. So I decided to build my own and I've been using it for a few weeks now.<p>At any time I'm usually working with 3 to 6 databases, and having them set up in something like Conductor (for parallel agentic coding), but for Postgres databases, lets me quickly start a session, ask questions to my database in plain English, get a data export, move on and close the session. It's been working well and I thought I would share it here.<p>It's a native Mac app (Swift), free and open source (MIT). For the LLM you bring your own OpenRouter key, or there's an experimental on-device mode using Apple's local model, where nothing leaves your Mac. Cloud mode only sends the question and schema metadata, not your data, unless you explicitly turn that on per connection.
Show HN: Play SNES, gba, in your terminal, even in tmux
Show HN: Play SNES, gba, in your terminal, even in tmux rom is a ~5k-line C libretro frontend that plays games in the terminal. It renders native pixels with the kitty graphics protocol in Ghostty or kitty, inline! even in tmux!<p>Nine platforms: SNES, NES, GB/GBC, GBA, Genesis, PC Engine, N64, Doom/Heretic/Hexen, Wolfenstein. macOS and Linux, MIT.<p><a href="https://github.com/jhickner/rom" rel="nofollow">https://github.com/jhickner/rom</a>
No other tools from this source yet.