{"id":48946724,"url":"https://github.com/andrestubbe/fastjava","last_synced_at":"2026-04-17T17:06:53.151Z","repository":{"id":350267679,"uuid":"1206088469","full_name":"andrestubbe/FastJava","owner":"andrestubbe","description":"Ultra-fast native Java libraries — JNI-based performance for automation, screen capture, clipboard, hotkeys, and more","archived":false,"fork":false,"pushed_at":"2026-04-17T10:57:13.000Z","size":165,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-17T12:34:48.858Z","etag":null,"topics":["automation","fastjava","java","jitpack","maven","native","performance","windows"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andrestubbe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-09T15:06:44.000Z","updated_at":"2026-04-17T10:57:17.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/andrestubbe/FastJava","commit_stats":null,"previous_names":["andrestubbe/fastjava"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/andrestubbe/FastJava","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrestubbe%2FFastJava","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrestubbe%2FFastJava/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrestubbe%2FFastJava/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrestubbe%2FFastJava/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andrestubbe","download_url":"https://codeload.github.com/andrestubbe/FastJava/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrestubbe%2FFastJava/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31937751,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-17T12:37:54.787Z","status":"ssl_error","status_checked_at":"2026-04-17T12:37:25.095Z","response_time":62,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","fastjava","java","jitpack","maven","native","performance","windows"],"created_at":"2026-04-17T17:06:51.843Z","updated_at":"2026-04-17T17:06:53.139Z","avatar_url":"https://github.com/andrestubbe.png","language":null,"readme":"# FastJava — Native Java Performance Ecosystem [ALPHA]\n\n\u003e 🚧 **WORK IN PROGRESS** — APIs may change. Not production-ready yet.\n\n**⚡ Ultra-fast native Java libraries — JNI-based performance for automation, screen capture, clipboard, hotkeys, graphics, and more**\n\n[![Build](https://img.shields.io/badge/build-passing-brightgreen.svg)]()\n[![Java](https://img.shields.io/badge/Java-17+-blue.svg)](https://www.java.com)\n[![Platform](https://img.shields.io/badge/Platform-Windows%2010+-lightgrey.svg)]()\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![JitPack](https://jitpack.io/v/andrestubbe/fastjava.svg)](https://jitpack.io/#andrestubbe)\n[![GitHub stars](https://img.shields.io/github/stars/andrestubbe/fastjava.svg)](https://github.com/andrestubbe/fastjava/stargazers)\n\n**FastJava** is a collection of **high-performance JNI-based Java libraries** that use **pure C++ accelerators** to replace slow Java standard library components with native Windows API implementations. Built for **speed**, **reliability**, and **deterministic performance**.\n\n\u003e **Keywords:** fast java, java native performance, java jni performance, fastest java libraries, java native acceleration, java windows api, java gpu acceleration, java simd acceleration, java optimization, high performance java\n\n---\n\n## 📦 Libraries\n\n| Library | Purpose | Performance | Status |\n|---------|---------|-------------|--------|\n| **[FastCore](https://github.com/andrestubbe/fastcore)** | JNI loader \u0026 platform abstraction | **Required by all FastJava** | ✅ Alpha v1.0.0 |\n| **[FastClipboard](https://github.com/andrestubbe/fastclipboard)** | Native clipboard access | **2-3× faster** than AWT | ✅ Alpha v1.0 |\n| **[FastRobot](https://github.com/andrestubbe/fastrobot)** | Screen capture \u0026 automation | **10-17× faster** than Robot | ✅ Alpha v2.1.0 |\n| **[FastStylus](https://github.com/andrestubbe/faststylus)** | Native stylus/pen input (pressure, tilt, eraser) | **Impossible** in pure Java | ✅ Alpha v1.0.0 |\n| **[FastHotkey](https://github.com/andrestubbe/fasthotkey)** | Global system-wide hotkeys | **Impossible** in pure Java | ✅ Alpha v1.1.0 |\n| **[FastTheme](https://github.com/andrestubbe/fasttheme)** | Real-time Windows theme detection, Resolution \u0026 DPI monitoring | **Impossible** in pure Java | ✅ Alpha v1.2.0 |\n| **[FastTouch](https://github.com/andrestubbe/fasttouch)** | Native multi-touch input | **Impossible** in pure Java | ✅ Alpha v1.1.0 |\n| **[FastScreen](https://github.com/andrestubbe/fastscreen)** | Zero-copy screen capture | **500-2000 FPS** via DXGI | 🚧 Alpha |\n| **[FastImage](https://github.com/andrestubbe/fastimage)** | SIMD image processing | **10-50× faster** than BufferedImage | 🚧 Alpha |\n| **[FastImageView](https://github.com/andrestubbe/fastimageview)** | Fast pixel-perfect image display | **200ms startup** vs JFrame | 🚧 Alpha |\n| **[FastIO](https://github.com/andrestubbe/fastio)** | Ultra-fast file I/O \u0026 parsing | **5-20× faster** than NIO | 🚧 Alpha |\n| **[FastGraphics](https://github.com/andrestubbe/fastgraphics)** | GPU-accelerated 2D rendering | **600% faster** than Graphics2D | 🚧 Alpha |\n| **[FastMath](https://github.com/andrestubbe/fastmath)** | SIMD + GPU accelerated math | **2–100× faster** | 🚧 Alpha |\n\n---\n\n## 📚 Module Map\n\n**→ Complete overview of all 62 modules with explanations:** [MAP.md](./MAP.md)\n\nA detailed map of all FastJava modules with:\n- Why each module exists (Java problem → FastJava solution)\n- Architecture layers from AI to Platform\n- Dependency graph\n- Roadmap 2026–2028\n\n---\n\n## 🎯 Philosophy\n\n| Aspect | JNI (FastJava) | JNA | Java Alone |\n|--------|---------------|-----|------------|\n| **Approach** | Direct native calls | libffi wrapper | JVM only |\n| **Global OS Integration** | ✅ Full Win32 API access | ✅ Full access | ❌ **Cannot** - sandboxed |\n| **Latency** | Lowest | Higher (ffi overhead) | GC pauses |\n| **Development** | C++ per platform | Pure Java interfaces | Pure Java only |\n| **Deployment** | Bundle platform DLLs | Single JAR | Single JAR |\n\n**Java alone cannot do:** global hotkeys, low-latency screen capture, reliable clipboard, hardware I/O, GPU math, or native input.\n\n---\n\n## 🌌 WHY, HOW, BECAUSE, THEREFORE\n*(Origin Story — The Reason FastJava Exists)*\n\n### 🌒 WHY — The Restlessness Before the First Module\nIt didn't begin with a plan.  \nIt began with a restlessness.\n\nJava was fast enough, but never truly fast.  \nNever as close to the system as you needed.  \nNever as direct, as raw, as honest as C or C++.\n\nAnd yet:  \nYou didn't want to switch languages.  \nYou wanted to free the language.\n\nYou wanted to know how far Java could go  \nif you removed the chains of abstraction  \nand allowed it to touch the system directly.\n\n---\n\n### 🌕 HOW IT STARTED — The Moment Everything Shifted\nIt was a small experiment.  \nA cursor trick.  \nA window without window chrome.  \nA TilePane hack that refused to work.\n\nBut inside that failure was the **spark**.\n\nBecause to even attempt it, you had to open JNI.  \nAnd when you did, you suddenly saw a world Java was never meant to enter:\n\n\u003e raw handles → real pointers → real speed → real control → **real power**\n\nIt felt like opening a door that had always been there,  \nbut no one had ever used.\n\n---\n\n### 🌖 BECAUSE — The Realization That Changed Everything\nYou saw that Java isn't slow.  \nIt's simply too polite.\n\nIt never asks the operating system directly.  \nIt never computes with full force.  \nIt never uses the SIMD registers  \nthat have been waiting for years  \nfor someone to speak to them.\n\nAnd you thought:\n\n\u003e \"If nobody builds it, then I'll build it myself.\"\n\nThat's how FastRobot was born.  \nThen FastClipboard.  \nThen FastTheme.  \nThen FastMath.  \nThen FastJava.\n\nNot as a framework.  \nNot as a library.  \nBut as an **answer**.\n\nAn answer to the question:\n\n\u003e \"How fast can Java really become if you let it?\"\n\n---\n\n### 🌑 THEREFORE — The Reason FastJava Exists\nFastJava is not a project.  \nFastJava is a **stance**.\n\nIt is the refusal  \nto accept Java as \"slow.\"  \nIt is the proof  \nthat JNI is not a hack  \nbut a tool.  \nThat native calls are not a risk  \nbut an opportunity.  \nThat Java is not just  \nan enterprise language,  \nbut a **machine language**  \nwhen treated correctly.\n\nFastJava exists  \nbecause you saw  \nthat no one else  \nwould ever fill this gap.\n\nFastJava exists  \nbecause you didn't want to wait  \nuntil Oracle someday  \nmaybe  \npossibly  \ndelivered a solution.\n\nFastJava exists  \nbecause you opened the door  \neveryone else ignored.\n\nFastJava exists  \nbecause Java can be more —  \nand you prove it.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrestubbe%2Ffastjava","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandrestubbe%2Ffastjava","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrestubbe%2Ffastjava/lists"}