30 open-source projects similar to golang/mobile, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Pygame is a framework for building interactive 2D applications and games using the Python programming language. It functions as a 2D graphics rendering engine, a game input and event manager, and a multimedia audio toolkit. The project serves as a wrapper for the Simple DirectMedia Layer, providing a Python interface for low-level access to graphics, audio, keyboard, mouse, and joystick hardware. Its capabilities cover 2D graphics rendering and image manipulation, digital audio playback and streaming, and the management of game entities and physics simulations. It also includes tools for rea
SFML is a cross-platform C++ multimedia library designed for building 2D games and interactive applications. It provides a unified interface for hardware-accelerated graphics, audio playback, and window management, allowing developers to create visual software that functions consistently across different operating systems. The library abstracts native windowing and graphics APIs, enabling the use of object-oriented primitives to render shapes, sprites, and text. It includes a dedicated audio engine that supports sound effects and music with controls for volume, pitch, and spatial positioning,
This repository is a comprehensive collection of reference implementations and sample libraries for the Universal Windows Platform. It provides practical examples of how to use Windows Runtime APIs to build cross-device applications, including detailed guidance on XAML-based declarative user interfaces and DirectX-integrated rendering. The project distinguishes itself by providing a wide array of hardware integration suites, covering low-level communication with USB, Serial, I2C, SPI, and GPIO peripherals. It includes specialized implementations for mixed reality holographic rendering, advanc
react-use is a collection of reusable state and effect hooks for managing common logic in React applications. It serves as a comprehensive library for implementing state management patterns and wrapping various browser APIs into consistent hook interfaces. The project provides a specialized toolkit for DOM interaction and browser API integration, allowing components to track element dimensions, manage cookies, and monitor hardware sensors. It includes a suite of animation and timing utilities for physics-based numeric interpolation and frame-synced state updates. Beyond basic state managemen
Pixel is a 2D game library and graphics engine for the Go programming language. It provides a hardware-accelerated renderer for drawing sprites, geometric shapes, and text, utilizing an optimized system of batching and transformation matrices. The project functions as a comprehensive toolkit for two-dimensional interactive applications, combining a graphics engine with a 2D vector math library for affine transformations and coordinate space projections. It includes a dedicated input manager that tracks keyboard presses and mouse movements using a polling-based system rather than asynchronous
Skia is a high-performance 2D graphics rendering library used for drawing text, geometries, and images on digital surfaces. It functions as a hardware-accelerated graphics engine that offloads drawing operations to the GPU, a vector graphics processor for SVG and complex paths, and a typography engine for shaping and drawing characters with Unicode support. The project provides a cross-platform image codec for encoding and decoding standard image formats into raw pixel data across multiple operating systems. It also enables the development of user interfaces that maintain visual consistency a
Pixi.js is a high-performance 2D graphics engine used to render interactive animations, sprites, and visual effects in web browsers. It functions as a WebGL 2D rendering engine and HTML5 graphics library designed to produce high-performance two-dimensional visuals. The project operates as a 2D sprite framework and a web-based visual effects engine, providing tools to apply filters, blend modes, and masks to real-time graphics. It also serves as an interactive web canvas API for handling multi-touch and mouse input to build responsive graphical user interfaces. The framework covers a broad se
Ebiten is a cross-platform 2D game engine and framework for the Go programming language. It provides a hardware-accelerated 2D renderer and a multi-input handling library to develop two-dimensional games with a single codebase. The engine is designed for broad deployment, allowing applications to be compiled and run across desktops, mobile devices, web browsers, and gaming consoles. It distinguishes itself by integrating custom shader programming for specialized visual effects and providing haptic feedback control for mobile devices and gamepads. The framework covers core game development ca
Macroquad is a Rust game engine and 2D graphics library designed for developing cross-platform games and graphical applications. It functions as a rendering engine that enables the deployment of a single codebase to desktop, mobile, and web targets. The engine utilizes an immediate mode rendering model, which allows for the creation of user interfaces and game worlds that render in a single pass within the main application loop. This approach is paired with hardware-accelerated 2D rendering and automatic draw call batching to optimize the display of geometry across different hardware devices.
LÖVE is a cross-platform game engine and framework for developing two-dimensional games using the Lua programming language. It provides a 2D graphics API for rendering shapes, images, and sprites across multiple desktop and mobile platforms. The framework enables the development of a single codebase that can be deployed to Windows, macOS, Linux, Android, and iOS. It utilizes a Lua-based scripting interface to control internal engine systems. The project covers 2D game development, mobile game development, and cross-platform game deployment.
SFML is a cross-platform multimedia framework for C++ designed for creating 2D graphics, audio, and network applications. It functions as a unified set of libraries that provides a 2D graphics rendering engine, an audio processing library, a network socket library, and a cross-platform window manager. The framework allows for the development of interactive software by coordinating real-time 2D graphics rendering, audio playback, and user input handling. It provides a standardized interface for creating and controlling application windows across multiple operating systems. Its capability surf
JUCE is a comprehensive C++ audio framework and digital signal processing library used to build cross-platform audio applications, audio plug-ins, and high-performance user interfaces. It serves as a development kit for creating audio processors compatible with industry-standard plugin formats for digital audio workstations, as well as a tool for MIDI and Open Sound Control communication between musical hardware and software. The framework is distinguished by its ability to maintain a single codebase for native desktop and mobile applications across multiple operating systems. It provides a f
Phaser is a cross-platform 2D web game engine and framework designed for creating interactive experiences that run on desktop and mobile web browsers. It serves as a GPU-accelerated rendering library and WebGL graphics engine for building two-dimensional games using HTML5 Canvas and WebGL. The engine features a dual-backend rendering pipeline that allows developers to switch between rendering paths. It distinguishes itself through high-performance graphics capabilities, including GPU-driven sprite batching for large-scale image management, a dynamic lighting system with self-shadows, and the
ggez is a 2D game framework for the Rust programming language. It provides a hardware abstraction layer for accessing keyboard, mouse, sound, and graphics hardware, alongside a dedicated game loop manager that synchronizes input processing, state updates, and frame rendering for real-time applications. The framework includes a hardware-accelerated rendering engine for drawing sprites, shapes, and text using shader programs. It also features a resource management system that uses a filesystem abstraction to load and manage game assets from physical directories or compressed archives. Addition
LittleJS is a lightweight HTML5 2D game engine designed for building web games using Canvas and WebGL without external dependencies. It integrates a WebGL sprite renderer, a 2D physics engine for arcade-style collisions and rigid-body dynamics, and a grid-based A* pathfinding system for entity navigation. The engine is distinguished by its procedural audio synthesizer, which generates music and sound effects at runtime using parameter arrays to minimize file sizes. It also features a comprehensive graphics pipeline that supports custom fragment-shader post-processing and a dynamic 2D lighting
melonJS is a lightweight HTML5 game engine for building 2D games in the browser using JavaScript. It provides a complete framework for sprite animation, tilemap loading, physics simulation, input handling, and audio playback, with a unified rendering system that automatically switches between WebGL and Canvas2D backends without code changes. The engine distinguishes itself through several integrated capabilities. It features a per-sprite shader pipeline for custom fragment shader effects, a SAT-based collision engine with swappable physics adapters (including built-in SAT, Matter.js, and Plan
Flame is a 2D game engine for Flutter and Dart. It provides a component-based game framework for managing entities and their lifecycles through a hierarchical architecture, alongside a dedicated system for game asset management and input handling. The engine distinguishes itself through a specialized integration layer for external physics engines to handle rigid body dynamics and collision detection. It also features a high-performance task model that uses isolates to offload heavy computations and prevent main thread blocking. The framework covers a broad range of capabilities including vis
Hilo is an HTML5 game engine for building 2D games that run across browsers and devices. It renders graphics through Canvas, DOM, or WebGL backends, automatically selecting the best option for the target environment. The engine provides a complete game development solution with sprite, skeletal, and particle animation, along with a texture atlas system for efficient image loading and rendering. The framework distinguishes itself through its integration of the DragonBones skeletal animation engine, which drives bone-based character movement without frame-by-frame sprites, and its Chipmunk phys
Musicbox is a terminal-based music player and command-line interface client for NetEase Cloud Music. It functions as a keyboard-driven audio player that enables users to stream music, manage playlists, and browse charts directly within a terminal environment. The project utilizes a headless music daemon to separate background audio playback and authentication from the command-line interface. This architecture allows for audio control via external commands or agents and includes a desktop lyrics overlay capable of dual-line rendering and foreign language translations. The system covers high-f
CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web applications. It provides a lightweight toolkit with minimal configuration, organizing application logic into controllers, models, and views for clean separation of concerns. The framework includes a fluent query builder for constructing SQL statements programmatically, PSR-4 autoloading with namespace mapping, and a service-based dependency injection container for managing shared class instances. The framework distinguishes itself through its comprehensive set of built-in tools
Mio is a low-level I/O library for Rust that provides an event-driven framework for monitoring multiple network sockets and file descriptors. It acts as a portable wrapper for operating system native polling systems, including epoll, kqueue, and IOCP, allowing applications to trigger events when resources are ready for reading or writing without blocking the execution thread. The library provides a non-blocking socket interface for managing TCP, UDP, and Unix sockets. It distinguishes itself through a vectored I/O implementation, enabling scatter-gather reads and writes across multiple buffer
This repository is a comprehensive collection of functional 2D and 3D demo projects and implementation samples for the Godot Game Engine. It serves as an interactive tutorial and reference library, providing a working codebase to demonstrate how to apply engine features in real-world scenarios. The collection focuses on practical implementation guides, covering a wide array of technical capabilities from basic engine fundamentals to advanced rendering and scripting techniques. It allows users to study the application of node-based composition, asset pipelines, and game logic through direct ex
cocos2d-iphone is a framework for 2D game development and the creation of two-dimensional graphical applications. It enables cross-platform development for iOS and macOS using Objective-C and high-performance graphics rendering. The project provides tools for building interactive environments, including the creation of orthogonal, isometric, or hexagonal tile-based maps. It supports the implementation of rigid body dynamics and collision detection through a 2D physics simulation system. The framework covers a broad range of capabilities, including sprite-based rendering, audio playback manag
ZSWatch is a real-time operating system for wearable devices featuring a touch display and Bluetooth Low Energy connectivity. It provides a comprehensive software suite that includes a Bluetooth LE communication stack, an embedded UI framework for round displays, and a complete firmware toolchain for compiling, flashing, and simulating wearable hardware. The project is distinguished by its specialized wearable capabilities, such as a graphical framework for designing reactive screens and watchfaces via a visual editor. It implements a publish-subscribe messaging system to decouple hardware se
Expo is a universal mobile framework designed to build native iOS and Android applications from a single codebase using web-standard technologies. It provides a comprehensive development environment that includes a unified runtime for testing, cloud-based infrastructure for compiling and signing native binaries, and automated tools for managing the entire mobile release lifecycle, including app store submission. The framework distinguishes itself through a plugin-based native configuration engine that programmatically modifies project files, allowing developers to integrate native modules wit
Opentui is a terminal user interface framework for building interactive command line applications. It provides a component-based system featuring a flexbox layout engine, a virtual node component tree, and a low-level 2D cell array renderer. The project is distinguished by a sophisticated keyboard binding engine that maps complex multi-stroke sequences and chords to named commands using prioritized, reactive layers. It also implements a plugin architecture that allows external modules to inject custom UI components into designated layout slots and extend input logic at runtime. Its capabilit
Nannou is a creative coding framework for Rust designed for building interactive visual and audio sketches. It provides a loop-based API with hardware-accelerated 2D and 3D rendering, serving as a toolkit for generative art production and multimedia installation design. The framework is distinguished by its comprehensive hardware communication interface, which bridges software with physical devices via MIDI, OSC, DMX, serial, and laser DAC protocols. It also includes specialized projection mapping tools for warping visual output to fit non-standard physical surfaces and a dedicated GPU shader
TIC-80 is a fantasy console platform and multi-language game engine that provides a virtual retro game development environment. It operates via a bytecode virtual machine that executes game logic within fixed memory and resolution constraints. The project distinguishes itself by offering integrated asset editors for pixel art, tile maps, and a pattern-based chiptune audio workstation all within a single environment. It supports multi-language scripting, allowing developers to write logic in Lua, JavaScript, or Ruby, and provides a standalone game exporter to package projects into native execu
LibGDX is a Java-based framework designed for cross-platform game development, enabling the creation and deployment of 2D and 3D games across desktop, mobile, and web environments from a single codebase. It functions as a comprehensive library that abstracts hardware-accelerated graphics, audio, input, and file system access, providing a unified interface for developers to manage game logic and application lifecycles. The framework distinguishes itself through a high-performance architecture that prioritizes efficiency and native interoperability. It utilizes a batch-oriented graphics pipelin
LearnOpenGL is an educational resource and collection of C++ graphics implementations designed to teach the OpenGL graphics API. It provides code samples and reference implementations for real-time rendering, focusing on the creation of 2D and 3D visuals. The project includes practical examples of GLSL shaders for rendering 3D geometry and visual effects. These implementations are organized as a cross-platform graphics project, allowing the code to be built and executed across different operating systems. The repository covers the fundamental concepts of graphics programming, including shade