VadimBoev/FlappyBird logo

VadimBoev/FlappyBird

Free

Less than 100 Kilobytes. Works for Android 5.0 and above

FreeFree tier
Type
Open Source

About VadimBoev/FlappyBird

VadimBoev/FlappyBird is an open-source implementation of the classic Flappy Bird game written in C, specifically designed for Android. The project's standout feature is its incredibly small APK size of under 100 kilobytes. It uses rawdrawandroid, OpenGL ES 2 for graphics, OpenSL ES for audio playback (with MP3-compressed sounds), and the upng library for PNG decoding. The game targets Android 5.0 and above and can be built on Windows using Visual Studio Code or on Linux/macOS via a Makefile. The repository includes 11 releases and is licensed under a permissive copyright statement (author claims no copyright; rights belong to DotGEARS). This project serves as an educational example of creating a minimalist native Android game in C, demonstrating low-level graphics, audio, and packaging techniques.

Key Features

APK size under 100 kilobytes
Written entirely in C
Uses OpenGL ES 2 for rendering and shaders
Audio playback via OpenSL ES with MP3 compression
PNG image decoding using the upng library
Built on Android Native Activity and rawdrawandroid
Supports Android 5.0 (API level 21) and above
Open source with 11 releases on GitHub
Cross-platform build options: VS Code (Windows) and Makefile (Linux/macOS)

Pros & Cons

Pros
  • Extremely small APK size (<100KB) demonstrating efficient packaging
  • Completely open source with permissive license (no copyright claimed)
  • Educational value for C and Android native development
  • Well-documented build process for multiple operating systems
  • Uses standard Android graphics/audio APIs for broad compatibility
  • Active repository with multiple releases and community stars (2.4k)
Cons
  • Only available for Android; no iOS, Web, or desktop versions
  • Gameplay is a simple clone of Flappy Bird with no original mechanics
  • Requires familiarity with C and Android NDK to build and modify
  • No graphical configuration or settings UI
  • Asset files (sounds, graphics) are pre-compiled and not easily swappable

Best For

Learning low-level Android game development in CExploring minimal APK size optimization techniquesPorting classic arcade games to mobile platformsStudying OpenGL ES 2 and OpenSL ES integration on AndroidBuilding native Android applications without a Java/Kotlin frontend

FAQ

What is the APK size of this Flappy Bird clone?
The APK size is less than 100 kilobytes, making it one of the smallest Android game APKs.
What Android version is required?
The game works on Android 5.0 (API level 21) and above.
How can I build the game from source?
On Windows, use Visual Studio Code with the provided build.bat script. On Linux or macOS, use the Makefile. Detailed instructions are in BUILDING.md.
What libraries and APIs are used?
The game uses OpenGL ES 2 for graphics, OpenSL ES for audio playback, the upng library for PNG decoding, and rawdrawandroid for native activity handling.
Is this game copyrighted?
The author does not claim any copyright. The rights to the game concept and resources belong to DotGEARS.
Can I use this project to learn native Android development?
Yes, the project is an excellent example of building a minimal Android game in C with native APIs and is open source for learning purposes.