J2ME

repo: hstsethi/awesome-j2me
category: Programming Languages


Awesome J2ME Awesome

<img src="j2me-logo.jpg" align="right" width="100">

An awesome list about Java platform Micro edition(J2ME). Documentation, academic papers, tutorials, communities, IDEs, SDKs, emulators, apps, video games. J2ME is a Java specification designed for old keypad phones and PDAs. MIDP, which is built upon CLDC, is used to create Midlets, which have .jad or .jar extension, and run on platforms like old keypad phones, Symbian and PDAs. MIDP is supported till Java ME SDK 3.4.

Please give it a star(⭐) to raise awareness about J2ME community, and support the development of this project. Read about introduction, setup-process, and history of Awesome J2ME in <a href="https://hstsethi.vercel.app/posts/programming/awesome-j2me">this blog post</a>. Also check out Awesome Symbian.

Proud to be featured in Awesome, Hackclub, Awesome Java and more.

Contents

Communities

  • HackClub Retrospect J2ME - J2ME development contest by Hackclub. Features Awesome J2ME in its resources section.
  • Kahvibreak Discord - Discord community focused on preserving J2ME games.
  • Ketai Wiki - Wiki dedicated to cataloging games from Japanese Feature Phones (keitai), pre-Android/iPhone mobile devices released in Japan.
  • r/J2MEGaming - Reddit community for J2ME, Symbian, and related platforms.

Development

  • Cibyl - Environment to compile and run programs written in C, Objective-C, C++ and possibly Fortran on J2ME phones.
  • NN JSON - JSON parser for CLDC 1.1.
  • [NN JSON CLDC 1.0](https://github.com/gtrxAC/discord-j2me/tree/main/src/cc/nnproject/json) - Modified version of NN JSON for CLDC 1.0.
  • J2ME Game Script Engine - A lightweight script interpreter for building flexible J2ME games, with a BASIC-like scripting language. Runs on J2SE/J2ME/Win C++ platforms; ideal for game rapid prototyping and customization.
  • J2ME Gradle template - Gradle template for J2ME development using Microemulator.
  • Lightweight User Interface Toolkit(LWUIT) - Swing inspired widget toolkit for J2ME.

IDEs

  • Eclipse - Archive of all versions of Eclipse IDE.
  • NetBeans 6.1 - Mobility-pack, normal NetBeans and Java-ME SDK, all of them are required to set up MIDP development environment.

SDKs

  • [Extra Transit Mobile Interaction Suite](http://web.archive.org/web/20070210202710/http://www.extransit.com) - IDE and SDK for J2ME specializing in the development of internet-based applications.
  • Hecl - A mobile scripting language based on Java, capable of running on J2ME-based devices.
  • J2ME Polish - Open source, Ant-based build tool for J2ME that supports building for multiple platforms including Blackberry and Symbian.
  • MBooster - Optimizing suite for .jar files. Compresses images, audio, zip files, and optimizes API calls.
  • Micro Code - Cross-device development framework for J2ME. Supports more than 100 devices.
  • Sony Ericsson - Supports various Sony Ericsson devices. Can run Mascot capsule software too.
  • Soap ME - SOAP-compliant Web service container that supports dynamic development.
  • [Sun Java Me SDK](https://www.oracle.com/java/technologies/javame-sdk/java-me-sdk-v30.html) mirror - Successor to WTK that integrates CLDC/MIDP development.
  • Sun WTK - Official J2ME SDK by Sun.

Emulators

Finance

  • Glu Mobile 10-K archive - Archive of 10-K of Glu Mobile from it's IPO(2007) till acquisition(2021). Includes revenue breakdown by means of distribution and region, management commentary, portfolio of games etc.
  • UPI 123PAY - Official Unified Payment Interface(UPI)payments solution for feature phones by NPCI. Internet not required. Supported only in India.

Hardware

  • Mobile Phone Museum - Registered charity and museum for mobile phones. Currently has over 2,800 models over 250 brands.

Native Software

Apps

  • Discord J2ME - Unofficial Discord client for J2ME. Utilizes a proxy server for HTTP and gateway connections.
  • Hotpants - HOTP/TOTP client.
  • J2ME Emu Software - Executables, source code of various emulators that run on J2ME.
  • Jtube - YouTube client based on Invidious API.
  • MeBoy - Supports emulating GBC with sound, color, and save states.
  • Telegram Micro - Telegram client.
  • VK4ME - Unofficial client for Russian social network VK for devices supporting CLDC 1.1 and MIDP 2.0.
  • Opera FTP Archive - Official FTP archive of various versions of Opera browser for all supported platforms.
  • Pocket Gopher - Open source Gopher and Gopher+ client for J2ME.

Video Games

Reverse Engineering

  • PyLng - HandyGames .lng file parser written in Python.

Decompilers

Tutorials

Academic Articles

  • [A Testing Method for Java ME Software](https://doi.org/10.1109/EmbeddedCom-ScalCom.2009.21) - Reviews various unit testing methods for J2ME and introduces a custom one for NetBeans.
  • [Automated GUI Testing for J2ME Software Based on FSM](https://ieeexplore.ieee.org/abstract/document/5341641) - Introduces a technique for automating tests of LCDUI J2ME applications based on FSM.
  • Developing Jini applications using J2ME technology - Book on Developing networking applications using Jini and J2ME.
  • Distributed Gaming using J2ME and XML - Writeup on creating a cross-platform using Oracle XML database for gaming.
  • [Experiences of Implementing BitTorrent on Java ME Platform](https://ieeexplore.ieee.org/abstract/document/4446557) - Detailed writeup on implementing BitTorrent client on Nokia S40. Includes methodology and results.
  • Networked J2ME Applications - Paper exploring various facets of building networked MIDP 1.0 applications.
  • JSR 184: M3G Specification - Specification for Mobile Graphics 3D Graphics API(M3G), which is a file format and API for 3D graphics capabilities to J2ME devices. It has two mode: immediate and retained. The former is compatible with OpenGL ES.
[[curator]]
I'm the Curator. I can help you navigate, organize, and curate this wiki. What would you like to do?