Skip to content

Commit 605db11

Browse files
author
FastJava Team
committed
Refactor: Extract Ecosystem Map to docs/ECOSYSTEM.md and streamline README
1 parent c865aa4 commit 605db11

2 files changed

Lines changed: 261 additions & 166 deletions

File tree

README.md

Lines changed: 16 additions & 166 deletions
Original file line numberDiff line numberDiff line change
@@ -9,172 +9,22 @@
99

1010
---
1111

12-
## 🗺️ The Ecosystem Map
13-
14-
A unified directory of all FastJava modules. Categorized by functional domain, including real-world performance benchmarks.
15-
16-
### 1. Input
17-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
18-
|--------|---------------|-------------|------|--------|---------|
19-
| **[FastHotkey](https://github.com/andrestubbe/fasthotkey)** | **❌ Java can't** | Global hotkeys — no Java API | Win32 hooks | Alpha | `v0.1.0` |
20-
| **[FastKeyboard](https://github.com/andrestubbe/FastKeyboard)** | **16×** | RawInput vs standard AWT KeyListener | RawInput API | Alpha | `v0.1.0` |
21-
| **[FastTouch](https://github.com/andrestubbe/fasttouch)** | **❌ Java can't** | Multi-touch pressure — no Java API | Win32 touch | Alpha | `v0.1.0` |
22-
| **[FastStylus](https://github.com/andrestubbe/faststylus)** | **❌ Java can't** | Pen tilt/eraser — no Java API exists | WM_POINTER | Alpha | `v0.1.0` |
23-
| **[FastKeylogger](https://github.com/andrestubbe/FastKeylogger)** | **** | Global asynchronous keyboard tracking | Win32 Hooks | Alpha | `v0.1.2` |
24-
| **[FastMouse](https://github.com/andrestubbe/FastMouse)** | **** | Raw mouse reading | RawInput API | Alpha | `v0.1.0` |
25-
| FastGamepad || Controller support | XInput | TODO ||
26-
27-
### 2. Output
28-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
29-
|--------|---------------|-------------|------|--------|---------|
30-
| **[FastDWM](https://github.com/andrestubbe/FastDWM)** | **** | VSync & timing | DWM API | Alpha | `v0.1.0` |
31-
| **[FastDisplay](https://github.com/andrestubbe/FastDisplay)** | **Instant** | Native DPI/resolution/refresh-rate | Win32, DWM | Alpha | `v0.2.0` |
32-
33-
### 3. Automation
34-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
35-
|--------|---------------|-------------|------|--------|---------|
36-
| **[FastRobot](https://github.com/andrestubbe/fastrobot)** | **10-17×** | DirectX capture vs AWT Robot | DirectX | Alpha | `v0.1.0` |
37-
| **[FastUIA](https://github.com/andrestubbe/fastuia)** | **❌ Java can't** | Native UIA vs slow polling | Native UIA | Alpha | `v0.1.0` |
38-
| **[FastWindow](https://github.com/andrestubbe/FastWindow)** | **** | Flicker-free resize vs standard JFrame | Win32 API | Alpha | `v0.1.0` |
39-
| **[FastScrape](https://github.com/andrestubbe/FastScrape)** | **** | High-performance DOM scraping | Native HTML | Alpha | `v0.1.1` |
40-
| **[FastSpider](https://github.com/andrestubbe/FastSpider)** | **** | Asynchronous high-speed web crawler | NIO / Async | Alpha | `v0.1.1` |
41-
| FastProcess || Process management | Win32 API | TODO ||
42-
| FastScheduler || Task scheduler | Priority queue | TODO ||
43-
44-
### 4. Graphics
45-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
46-
|--------|---------------|-------------|------|--------|---------|
47-
| **[FastGhostMouse](https://github.com/andrestubbe/FastGhostMouse)** | **120Hz GPU** | Secondary mouse overlay | DComposition | Alpha | `v0.1.0` |
48-
| **[FastThumb](https://github.com/andrestubbe/FastThumb)** | **** | Native OS thumbnail extraction | Windows Shell | Alpha | `v0.1.0` |
49-
| **[FastPreview](https://github.com/andrestubbe/FastPreview)** | **** | Native rasterization vs slow Swing | PDFium, WV2 | Alpha | `v0.1.1` |
50-
| **[FastScreen](https://github.com/andrestubbe/fastscreen)** | **500-2000 FPS** | DXGI zero-copy vs 60 FPS Robot | DXGI, DX | Alpha | `v1.0.0-SNAPSHOT` |
51-
| **[FastOverlay](https://github.com/andrestubbe/FastOverlay)** | **** | Game overlays | DirectX | Alpha | `v0.1.0` |
52-
| **[FastImage](https://github.com/andrestubbe/fastimage)** | **10-50×** | SIMD resize/blur vs BufferedImage | SIMD, AVX2 | Alpha | `v0.1.1` |
53-
| **[FastImageView](https://github.com/andrestubbe/fastimageview)** | **10×** | 200ms startup vs 2s Swing | DirectX | Alpha | `v0.1.0` |
54-
| **[FastGraphics](https://github.com/andrestubbe/fastgraphics)** | **600%** | GPU DirectX vs Java2D software | DirectX, GPU | Alpha | `v1.0.0` |
55-
| **[FastSoftware3D](https://github.com/andrestubbe/FastSoftware3D)** | **** | Software 3D rendering pipeline | AVX2 SIMD | Alpha | `v0.1.0` |
56-
57-
### 5. Audio
58-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
59-
|--------|---------------|-------------|------|--------|---------|
60-
| **[FastAudioCapture](https://github.com/andrestubbe/FastAudioCapture)** | **❌ No WASAPI** | Real-time capture vs Java Sound | WASAPI, AVX2 | Alpha | `v0.1.1` |
61-
| **[FastAudioPlayer](https://github.com/andrestubbe/FastAudioPlayer)** | **20-30×** | Low-latency playback vs Java Sound | WASAPI, AVX2 | Alpha | `v0.1.2` |
62-
| **[FastAudioProcess](https://github.com/andrestubbe/FastAudioProcess)** | **** | Audio processing & formant analysis | WASAPI / DSP | Alpha | `v0.1.1` |
63-
| **[FastWakeWord](https://github.com/andrestubbe/FastWakeWord)** | **** | Always-on native wake-word detection | Audio DSP | Alpha | `v0.1.0` |
64-
| **[FastTTS](https://github.com/andrestubbe/FastTTS)** | **** | Text-to-speech | SIMD, Piper/Cloud | Alpha | `v0.1.2` |
65-
| **[FastSTT](https://github.com/andrestubbe/FastSTT)** | **** | Speech-to-text | Whisper | Alpha | `v0.1.2` |
66-
67-
### 6. Parsing
68-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
69-
|--------|---------------|-------------|------|--------|---------|
70-
| **[FastBytes](https://github.com/andrestubbe/fastbytes)** | **2-50×** | AVX2 bulk ops vs standard Java | SIMD, AVX2 | Alpha | `v0.1.1` |
71-
| **[FastBinary](https://github.com/andrestubbe/FastBinary)** | **** | Zero-bloat bit-packing, VarInt & endianness | Zero-Alloc | Alpha | `v0.1.0` |
72-
| **[FastJSON](https://github.com/andrestubbe/fastjson)** | **50×** | 50× faster than Jackson/Gson | SIMD, Zero-GC| Alpha | `v0.1.3` |
73-
| **[FastString](https://github.com/andrestubbe/faststring)** | **10-100×** | UTF-8 ops vs Java String | SIMD, UTF-8 | Alpha | `v0.1.1` |
74-
| **[FastANSI](https://github.com/andrestubbe/FastANSI)** | **45-48×** | Zero-allocation ANSI state parser | State Machine | Alpha | `v0.1.2` |
75-
| **[FastASCII](https://github.com/andrestubbe/FastASCII)** | **** | Zero-allocation ASCII & UTF-8 byte engine | SIMD, Byte | Alpha | `v0.1.0` |
76-
| **[FastContentParse](https://github.com/andrestubbe/FastContentParse)** | **** | Standardized content normalization & extraction | Parser | Alpha | `v0.1.4` |
77-
| **[FastEmojis](https://github.com/andrestubbe/FastEmojis)** | **34-56×** | Zero-allocation Emoji width engine | East Asian Width | Alpha | `v0.1.0` |
78-
| **[FastTokenize](https://github.com/andrestubbe/FastTokenize)** | **Sub-µs** | $O(n)$ multi-language scanner & style stream | Zero-Alloc | Alpha | `v0.1.1` |
79-
| **[FastRegex](https://github.com/andrestubbe/FastRegex)** | **2.5–13.2×** | Zero-allocation pattern scanner & SIMD normalizer | Zero-Alloc, SIMD | Alpha | `v0.1.0` |
80-
| FastHTML || HTML parser | SIMD | TODO ||
81-
82-
### 7. Math
83-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
84-
|--------|---------------|-------------|------|--------|---------|
85-
| **[FastFloat](https://github.com/andrestubbe/fastfloat)** | **5-12×** | SIMD parsing vs Float.parseFloat() | SIMD, AVX2 | Alpha | `v0.1.1` |
86-
| **[FastMath](https://github.com/andrestubbe/fastmath)** | **3-8×** | JNI SIMD + OpenCL GPU vs java.lang.Math| OpenCL, SIMD | Alpha | `v0.1.0` |
87-
88-
### 8. Filesystem
89-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
90-
|--------|---------------|-------------|------|--------|---------|
91-
| **[FastFileFormat](https://github.com/andrestubbe/FastFileFormat)** | **** | Dual text/binary streaming format with aliases | Binary / Text | Alpha | `v0.1.0` |
92-
| **[FastFileIndex](https://github.com/andrestubbe/FastFileIndex)** | **** | Native mmap scan vs Files.walk() | mmap, scan | Alpha | `v0.1.1` |
93-
| **[FastFileSearch](https://github.com/andrestubbe/FastFileSearch)** | **100-1000×** | Indexed trie vs linear search | Prefix trie | Alpha | `v0.1.0` |
94-
| **[FastFileWatch](https://github.com/andrestubbe/FastFileWatch)** | **10-100×** | USN Journal vs WatchService | USN Journal | Alpha | `v0.1.0` |
95-
| **[FastFileSystem](https://github.com/andrestubbe/FastFileSystem)** | **8-15×** | Index + Search + Watch in one API | Unified API | Alpha | `v0.1.0` |
96-
| **[FastFileScrape](https://github.com/andrestubbe/FastFileScrape)** | **5–10×** | Native file scraping vs Java IO | Tree + Content | Alpha | `v1.0-SNAPSHOT` |
97-
| **[FastFileContentIndex](https://github.com/andrestubbe/FastFileContentIndex)** | **** | High-speed 3-gram bloom filter & in-file text index | SIMD, Bloom | Alpha | `v0.1.1` |
98-
| **[FastIO](https://github.com/andrestubbe/fastio)** | **2.5-11×** | AVX2 Search, DMA Copy, mmap | AVX2, DMA | Alpha | `v0.1.1` |
99-
| **[FastGLOB](https://github.com/andrestubbe/FastGLOB)** | **13×** | Native Win32 globbing vs PathMatcher | Win32, C++ | Alpha | `v0.1.0` |
100-
| **[FastCompress](https://github.com/andrestubbe/FastCompress)** | **** | Ultra-fast native compression | SIMD, AVX2 | Alpha | `v0.1.1` |
101-
102-
### 9. System
103-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
104-
|--------|---------------|-------------|------|--------|---------|
105-
| **[FastCore](https://github.com/andrestubbe/fastcore)** | **** | Cross-platform DLL loader | JNI Loader | Alpha | `v0.1.0` |
106-
| **[FastHardware](https://github.com/andrestubbe/FastHardware)** | **** | Global hardware telemetry | PDH/WMI | TODO | `v0.1.0` |
107-
| **[FastClipboard](https://github.com/andrestubbe/fastclipboard)** | **2-3×** | Native vs AWT, zero bugs | Win32 API | Alpha | `v0.1.0` |
108-
| **[FastMemory](https://github.com/andrestubbe/FastMemory)** | **** | SIMD 32-byte aligned RAM & page locking | Unsafe, Win32 | Alpha | `v0.1.1` |
109-
| **[FastPointer](https://github.com/andrestubbe/FastPointer)** | **** | Zero-overhead native address arithmetic | JNI / Direct | Alpha | `v0.1.1` |
110-
| **[FastSharedMemory](https://github.com/andrestubbe/FastSharedMemory)** | **** | Zero-copy IPC memory mapped files | Win32 IPC | Alpha | `v0.1.1` |
111-
| **[FastSIMD](https://github.com/andrestubbe/FastSIMD)** | **** | Hardware SIMD vectorization | AVX2, NEON | Alpha | `v0.1.3` |
112-
113-
### 10. Network
114-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
115-
|--------|---------------|-------------|------|--------|---------|
116-
| FastNet || Network operations | Zero-copy | TODO ||
117-
| FastDNS || DNS resolver | Async | TODO ||
118-
| FastTLS || TLS/HTTPS | OpenSSL | TODO ||
119-
120-
### 11. Security
121-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
122-
|--------|---------------|-------------|------|--------|---------|
123-
| FastCrypto || Encryption | AES/SIMD | TODO ||
124-
| FastSecureRandom || Secure RNG | Hardware | TODO ||
125-
| FastKeychain || Credential store | Windows | TODO ||
126-
127-
### 12. AI
128-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
129-
|--------|---------------|-------------|------|--------|---------|
130-
| **[FastAI](https://github.com/andrestubbe/FastAI)** | **** | Unified provider routing & LLM client layer | Multi-Provider | Alpha | `v0.1.5` |
131-
| **[FastAIAgent](https://github.com/andrestubbe/FastAIAgent)** | **** | Autonomous agent logic, tools & planning | Agent Loop | Alpha | `v0.1.5` |
132-
| **[FastAIBot](https://github.com/andrestubbe/FastAIBot)** | **** | High-performance bot orchestrator | LLM / Runtime | Alpha | `v0.1.2` |
133-
| **[FastAIRuntime](https://github.com/andrestubbe/FastAIRuntime)** | **** | Deterministic execution engine & FastAIEventBus | Runtime | Alpha | `v0.1.0` |
134-
| **[FastAIModel](https://github.com/andrestubbe/FastAIModel)** | **** | Local ONNX & GGUF matrix inference runtime | ONNX / DirectML | Alpha | `v0.1.2` |
135-
| **[FastAIRag](https://github.com/andrestubbe/FastAIRag)** | **** | High-speed retrieval augmented generation pipeline | RAG / Hybrid | Alpha | `v0.1.1` |
136-
| **[FastAIMemory](https://github.com/andrestubbe/FastAIMemory)** | **** | Short-term & long-term conversational memory | Context Store | Alpha | `v0.1.3` |
137-
| **[FastAIVectorDB](https://github.com/andrestubbe/FastAIVectorDB)** | **** | Zero-allocation vector database with built-in Embedder | AVX2 / JNI | Alpha | `v0.1.4` |
138-
| **[FastAIMCP](https://github.com/andrestubbe/FastAIMCP)** | **** | Model Context Protocol client & stdio tool bridge | MCP | Alpha | `v0.1.0` |
139-
| **[FastAIReasoner](https://github.com/andrestubbe/FastAIReasoner)** | **** | Multi-step reasoning, CoT & heuristic planning | Tree-of-Thoughts | Alpha | `v0.1.0` |
140-
| **[FastAIGraph](https://github.com/andrestubbe/FastAIGraph)** | **** | In-memory knowledge graph & multi-hop traversal | Entity Linking | Alpha | `v0.1.0` |
141-
| **[FastAIRerank](https://github.com/andrestubbe/FastAIRerank)** | **** | Cross-encoder relevance scoring & ranking | Reranker | Alpha | `v0.1.0` |
142-
| **[FastAIHybrid](https://github.com/andrestubbe/FastAIHybrid)** | **** | Hybrid dense & sparse retrieval fusion | Fusion Engine | Alpha | `v0.1.0` |
143-
| **[FastAIState](https://github.com/andrestubbe/FastAIState)** | **** | Lock-free shared agent state & blackboard memory | Shared Memory | Alpha | `v0.1.1` |
144-
| **[FastAIMetrics](https://github.com/andrestubbe/FastAIMetrics)** | **** | Token usage, latency profiling, cost & evaluation | Telemetry / VarInt | Alpha | `v0.1.0` |
145-
| **[FastAIVision](https://github.com/andrestubbe/FastAIVision)** | **** | Local multimodal vision & UI grounding pipeline | Qwen2-VL / SmolVLM | Alpha | `v0.1.1` |
146-
| **[FastAIMatcher](https://github.com/andrestubbe/FastAIMatcher)** | **** | Automated SOX compliance & hybrid rule matching | Rule Engine / VarInt | Alpha | `v0.1.1` |
147-
148-
### 13. Vision
149-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
150-
|--------|---------------|-------------|------|--------|---------|
151-
| **[FastCamera](https://github.com/andrestubbe/FastCamera)** | **** | Native low-latency webcam capture | DirectShow | Alpha | `v0.1.0` |
152-
| **[FastOCR](https://github.com/andrestubbe/FastOCR)** | **10× faster** | WinRT OCR vs Tesseract4J | WinRT OCR | Alpha | `v0.1.0` |
153-
| FastVision || Vision-Modelle / GPU-Kernels | GPU shaders | TODO ||
154-
155-
### 14. Animation
156-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
157-
|--------|---------------|-------------|------|--------|---------|
158-
| **[FastTween](https://github.com/andrestubbe/fasttween)** | **Zero overhead** | No built-in tweening | Pool | Alpha | `v0.1.0` |
159-
| **[FastAnimation](https://github.com/andrestubbe/fastanimation)** | **Zero overhead** | No built-in timelines — pure Java | Timeline | Alpha | `v0.1.0` |
160-
161-
### 15. UI
162-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
163-
|--------|---------------|-------------|------|--------|---------|
164-
| **[FastTheme](https://github.com/andrestubbe/fasttheme)** | **❌ Java can't** | Native Windows theming | WinRT, DWM | Alpha | `v0.1.2` |
165-
| **[FastUI](https://github.com/andrestubbe/FastUI)** | **** | Core UI building blocks | Native | Alpha | `v0.1.1` |
166-
| **[FastProportion](https://github.com/andrestubbe/FastProportion)** | **** | Proportional layout engine | Core | Alpha | `v0.1.0` |
167-
| **[FastGrid](https://github.com/andrestubbe/FastGrid)** | **** | High-performance grid layout | Core | Alpha | `v0.1.0` |
168-
| **[FastNotification](https://github.com/andrestubbe/fastnotification)** | **❌ Broken** | SystemTray broken → native WinRT | WinRT, Toast| Alpha | `v0.1.0` |
169-
| **[FastConPTY](https://github.com/andrestubbe/FastConPTY)** | **** | Native Windows ConPTY connector | Win32 PTY | Alpha | `v0.1.0` |
170-
| **[FastTerminal](https://github.com/andrestubbe/FastTerminal)** | **❌ Java can't** | Double-buffered TUI blitting | Win32 console, JNI | Alpha | `v0.1.11` |
171-
| **[FastTerminal3D](https://github.com/andrestubbe/FastTerminal3D)** | **** | 3D terminal renderer for Java | Terminal | Alpha | `v0.1.0` |
172-
| **[FastTUI](https://github.com/andrestubbe/FastTUI)** | **** | Terminal UI framework for Java | Win32 Console | Alpha | `v0.1.3` |
173-
174-
### 16. Compute
175-
| Module | Speed vs Java | Key Metrics | Tech | Status | Version |
176-
|--------|---------------|-------------|------|--------|---------|
177-
| **[FastGPU](https://github.com/andrestubbe/FastGPU)** | **50–500×** | GPU Compute, SPIR-V, Vulkan Compute, Zero-Copy Buffers | Vulkan, SPIR-V, OpenCL | Alpha | `v0.1.0` |
12+
### 🗺️ The Ecosystem
13+
14+
FastJava is not a framework — it is a modular, full-stack performance ecosystem designed to remove the unnecessary distance between Java and the machine.
15+
16+
Where the standard JVM abstracts, stalls, or lacks native interfaces entirely, FastJava provides thin, near-zero-overhead JNI bridges directly into DirectX, Win32, AVX2/AVX-512 SIMD, and native OS subsystems.
17+
18+
- ⌨️ **Input & Windowing** — Global low-latency hotkeys (e.g. `FastHotkey`), RawInput (`FastKeyboard`, `FastMouse`), Stylus/Touch, native window controls (`FastWindow`).
19+
- 🖥️ **Graphics & Screen** — DXGI sub-millisecond desktop capture (`FastScreen`), bit-perfect grabber (`FastScreenCapture`), GPU overlays (`FastOverlay`, `FastGhostMouse`).
20+
-**Compute & Memory** — AVX2/AVX-512 vectorization (`FastSIMD`), page-locked off-heap RAM (`FastMemory`), pointer arithmetic (`FastPointer`), GPU Compute (`FastGPU`).
21+
- 📁 **Filesystem & I/O** — USN Journal change journal (`FastFileWatch`), mmap multi-threading (`FastFileIndex`, `FastIO`), Trie-search (`FastFileSearch`).
22+
- 🎧 **Audio & Media** — WASAPI hardware capture & loopback (`FastAudioCapture`, `FastAudioPlayer`), real-time STT/TTS, wake-word detection (`FastWakeWord`).
23+
- 🏎️ **Parsing & Strings** — SIMD-accelerated JSON (`FastJSON`), UTF-8 processing (`FastString`), state-machine ANSI (`FastANSI`), zero-alloc regex (`FastRegex`).
24+
- 🧠 **AI & Machine Learning** — Local matrix inference (`FastAIModel`), zero-alloc vector database (`FastAIVectorDB`), autonomous agents (`FastAIAgent`), knowledge graphs (`FastAIMemoryGraph`).
25+
26+
👉 **Full module directory, architecture layers & real-world benchmarks:**
27+
🔗 **[docs/ECOSYSTEM.md](docs/ECOSYSTEM.md)**
17828

17929
---
18030

0 commit comments

Comments
 (0)