binjgb VS sokol

Compare binjgb vs sokol and see what are their differences.

binjgb

Gameboy emulator implemented in C, that also runs in the browser (by binji)

sokol

minimal cross-platform standalone C headers (by floooh)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
binjgb sokol
6 38
514 6,062
- -
4.9 9.7
5 months ago 7 days ago
C C
MIT License zlib License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

binjgb

Posts with mentions or reviews of binjgb. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-06-13.
  • McDonald's Just Dropped a Brand New Game Boy Game in 2023
    4 projects | news.ycombinator.com | 13 Jun 2023
    This is using my gameboy emulator, binjgb[0], on the website! (well one of my gameboy emulators, heh [1][2]) It's been used as the emulator for GB Studio for a little while now, but I don't know how often people embed it in their websites, so it's really cool to see.

    [0] https://github.com/binji/binjgb

  • I added a "rewind mode" to my emulator (gem)
    2 projects | /r/EmuDev | 4 Feb 2023
    Nice work, looks great! I wrote a blog post about the way I did mine a few years back: https://binji.github.io/posts/binjgb-rewind/. You can play with the web version at https://binji.github.io/binjgb/. Reading it back, I was pretty concerned about keeping the size down, but also on reducing dependencies, so I spent a lot of time trying to have a fancy circular buffer.
  • Smolnes: A NES Emulator In
    7 projects | news.ycombinator.com | 28 Oct 2022
    Big fan of this author's work.

    They have a Gameboy emulator written in C, which can be compiled to WASM and run in the browser.

    https://github.com/binji/binjgb

    I learned a lot from the code.

    Also I love this project with a bunch of demos in hand-written WebAssembly Text (WAT) format, which is like low-level Lisp that works only with raw memory, numbers, and minimal syntax.

    https://github.com/binji/raw-wasm

    Then I discovered the same author is quite active in the WebAssembly ecosystem, including specs and tooling. Fascinating stuff!

    https://github.com/WebAssembly/spec

    https://github.com/WebAssembly/wabt

  • Ask HN: What's the best source code you've read?
    46 projects | news.ycombinator.com | 10 Sep 2022
  • Infinite Mac: An Instant-Booting Quadra in the Browser
    4 projects | news.ycombinator.com | 1 Apr 2022
    Recently I fell into a wormhole, or rather time sink, playing with a Gameboy emulator that runs in the browser.

    https://github.com/binji/binjgb

    There's something so satisfying about a virtual machine that fits in a ~106K WASM file, that can play hundreds of classic games like Teris and Super Mario Bros (via ROM collections on Internet Archive). I don't usually play games, but this emulator is so cute and fun, I keep coming back to waste time on it.

    Actually, PICO-8 was the last time I felt this kind of child-like joy about a computer.

    I get a similar feeling from this Infinite Mac project.

    https://github.com/mihaip/infinite-mac

    It's so pleasing to see a running Macintosh in the browser. That interface feels like an old friend. The underlying VM, BasiliskII, is a little less than 1MB WASM file. Amazing!

    From the entertaining article, I learned about "retrocomputing". OK, so that's what I'm into, haha.

  • Hello World - gameboy music cartridge
    4 projects | /r/chiptunes | 19 Nov 2021
    Want to create Your own music cartridge (no problem :) You can use our lsdpack-kit constructor. Multiple rom support. But keep in mind that this is still in development.Custom styled HTML emulator based on binjgb could be found here.

sokol

Posts with mentions or reviews of sokol. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-06.
  • STB: Single-file public domain libraries for C/C++
    4 projects | news.ycombinator.com | 6 Jan 2024
  • Container2wasm: Convert Containers to WASM Blobs
    16 projects | news.ycombinator.com | 3 Jan 2024
    I'm using Dear ImGui for my cross-platform code (which includes running in browsers):

    - https://floooh.github.io/visual6502remix/

    - https://floooh.github.io/tiny8bit/c64-ui.html

    - (start these samples by clicking on the little "UI" icon) https://floooh.github.io/sokol-html5/

    Platform abstraction is handled through the sokol headers: https://github.com/floooh/sokol

  • New Vulkan Documentation Website
    10 projects | news.ycombinator.com | 11 Oct 2023
    I wonder if using your library (https://github.com/floooh/sokol) instead of OpenGL will alleviate some of these issues for newcomers! There's already a sokol port of the learnopengl.com code (https://github.com/GeertArien/learnopengl-examples), so it shouldn't be too hard to match between the tutorial articles and these.
  • Meta Releases Intermediate Graphics Library
    12 projects | news.ycombinator.com | 7 Jul 2023
    If you're looking for something like this, Sokol is a much simpler alternative:

    https://github.com/floooh/sokol

    It doesn't support vulkan though, but if that's important to you you're probably much better off just using vulkan directly since it's supported on all the major platforms.

  • Why glibc 2.34 removed libpthread
    3 projects | news.ycombinator.com | 2 Jul 2023
    All I can do is give you a couple of Github ticket links where users of my libraries stumbled over the issue (and with different symptoms):

    - https://github.com/floooh/sokol/issues/376

    - https://github.com/floooh/sokol/issues/404

    - https://github.com/floooh/cimgui-sokol-starterkit/issues/6

    We then added a dummy call to a no-op pthread function, so that users can better figure out that they need to use -pthread because now they get a linker error instead of a runtime crash or hang. This has since reduced the 'support overhead' quite a bit:

    - https://github.com/floooh/sokol/pull/456

  • File for Divorce from LLVM
    9 projects | news.ycombinator.com | 29 Jun 2023
    My stuff for instance:

    https://github.com/floooh/sokol

    ...inspired by:

    https://github.com/nothings/stb

    But it's not so much about the build system, but requiring a separate C/C++ compiler toolchain (Rust needs this, Zig currently does not - unless the proposal is implemented).

  • Minimal cross-platform standalone C headers
    1 project | news.ycombinator.com | 12 Jun 2023
  • How can i play .wav file with C ?
    1 project | /r/C_Programming | 1 Jun 2023
    I have never personally used it but I'm pretty sure sokol has an audio library that might be what you are after.
  • Website with Godot?
    3 projects | /r/godot | 11 May 2023
    And I asked floooh for similar thoughts on making a website with sokol here: https://github.com/floooh/sokol/issues/825
  • I want to talk about WebGPU
    15 projects | news.ycombinator.com | 3 May 2023
    It's not Rust and TS, instead C and JS, but Emscripten has a very nice way of integrating C/C++ and JS (you can just embed snippets of Javascript inside C/C++ source files), e.g. starting at this line, there's a couple of embedded Javascript functions which can be called like C functions directly from the "C side":

    https://github.com/floooh/sokol/blob/4535a3b4be59eb912e77e04...

What are some alternatives?

When comparing binjgb and sokol you can also consider the following projects:

Peanut-GB - A Game Boy (DMG) emulator single header library written in C99. Performance is prioritised over accuracy.

bgfx - Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.

SkyEmu - Game Boy Advance, Game Boy, Game Boy Color, and DS Emulator

raylib - A simple and easy-to-use library to enjoy videogames programming

jitboy - A Game Boy emulator with dynamic recompilation (JIT)

tinyrenderer - A brief computer graphics / rendering course

lsdpack-kit

LearnOpenGL - Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com

helloworld - Custom binjgb Game Boy emulator with music rom

v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io

8086tiny - Official repository for 8086tiny: a tiny PC emulator/virtual machine

nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.