|
27 | 27 | | **[FastClipboard](https://github.com/andrestubbe/fastclipboard)** | System | **2-3×** | Native vs AWT, zero bugs | |
28 | 28 | | **[FastImageView](https://github.com/andrestubbe/fastimageview)** | Graphics | **10×** | 200ms startup vs 2s Swing | |
29 | 29 | | **[FastFileIndex](https://github.com/andrestubbe/FastFileIndex)** | Filesystem | **8×** | Native mmap scan vs Files.walk() | |
| 30 | +| **[FastWindow](https://github.com/andrestubbe/FastWindow)** | UI/Engine | **8×** | Flicker-free native resize vs standard JFrame | |
| 31 | +| **[FastKeyboard](https://github.com/andrestubbe/FastKeyboard)** | Input | **16×** | RawInput vs standard AWT KeyListener | |
30 | 32 | | **[FastFileSearch](https://github.com/andrestubbe/FastFileSearch)** | Filesystem | **100-1000×** | Indexed trie vs linear search | |
31 | 33 | | **[FastFileWatch](https://github.com/andrestubbe/FastFileWatch)** | Filesystem | **10-100×** | USN Journal vs Java WatchService polling | |
32 | 34 | | **[FastFileSystem](https://github.com/andrestubbe/FastFileSystem)** | Filesystem | **Unified** | Index + Search + Watch in one API | |
33 | 35 | | [FastCore](https://github.com/andrestubbe/fastcore) | System | — | Cross-platform DLL loader | |
34 | 36 | | [FastHotkey](https://github.com/andrestubbe/fasthotkey) | System | **❌ Java can't** | Global hotkeys — no Java API | |
35 | 37 | | [FastTouch](https://github.com/andrestubbe/fasttouch) | System | **❌ Java can't** | Multi-touch pressure — no Java API exists | |
36 | 38 | | [FastStylus](https://github.com/andrestubbe/faststylus) | System | **❌ Java can't** | Pen tilt/eraser — no Java API exists | |
37 | | -| [FastTheme](https://github.com/andrestubbe/fasttheme) | UI | **❌ Java can't** | Native Windows theming — no Java API exists | |
| 39 | +| **[FastTheme](https://github.com/andrestubbe/fasttheme)** | UI | **❌ Java can't** | Native Windows theming — no Java API exists | |
38 | 40 | | [FastNotification](https://github.com/andrestubbe/fastnotification) | UI | **❌ Broken in Java** | SystemTray deprecated/broken → native WinRT | |
39 | 41 | | [FastTween](https://github.com/andrestubbe/fasttween) | Animation | **Zero overhead** | No built-in tweening — roll your own or use this | |
40 | 42 | | [FastAnimation](https://github.com/andrestubbe/fastanimation) | Animation | **Zero overhead** | No built-in timelines — pure Java, zero-GC | |
41 | 43 | | **[FastOCR](https://github.com/andrestubbe/FastOCR)** | Vision | **10× faster** | Tesseract4J slow → native WinRT OCR instant | |
42 | 44 | | **[FastAudioPlayer](https://github.com/andrestubbe/FastAudioPlayer)** | Audio | **❌ No WASAPI** | Java Sound API only — no low-latency audio | |
43 | 45 | | **[FastAudioCapture](https://github.com/andrestubbe/FastAudioCapture)** | Audio | **❌ No WASAPI** | Java Sound API only — no system audio capture | |
44 | 46 |
|
| 47 | +## Installation |
| 48 | + |
| 49 | +### Option 1: Maven (Recommended) |
| 50 | +Add the JitPack repository and the dependencies to your `pom.xml`: |
| 51 | + |
| 52 | +```xml |
| 53 | +<repositories> |
| 54 | + <repository> |
| 55 | + <id>jitpack.io</id> |
| 56 | + <url>https://jitpack.io</url> |
| 57 | + </repository> |
| 58 | +</repositories> |
| 59 | + |
| 60 | +<dependencies> |
| 61 | + <!-- FastJava Umbrella Library --> |
| 62 | + <dependency> |
| 63 | + <groupId>io.github.andrestubbe</groupId> |
| 64 | + <artifactId>fastjava</artifactId> |
| 65 | + <version>v0.1.0</version> |
| 66 | + </dependency> |
| 67 | + |
| 68 | + <!-- FastCore (Required Native Loader) --> |
| 69 | + <dependency> |
| 70 | + <groupId>com.github.andrestubbe</groupId> |
| 71 | + <artifactId>fastcore</artifactId> |
| 72 | + <version>v1.0.0</version> |
| 73 | + </dependency> |
| 74 | +</dependencies> |
| 75 | +``` |
| 76 | + |
| 77 | +### Option 2: Gradle (via JitPack) |
| 78 | +```groovy |
| 79 | +repositories { |
| 80 | + maven { url 'https://jitpack.io' } |
| 81 | +} |
| 82 | +
|
| 83 | +dependencies { |
| 84 | + implementation 'io.github.andrestubbe:fastjava:v0.1.0' |
| 85 | + implementation 'com.github.andrestubbe:fastcore:v1.0.0' |
| 86 | +} |
| 87 | +``` |
| 88 | + |
| 89 | +### Option 3: Direct Download (No Build Tool) |
| 90 | +Download the latest JARs directly to add them to your classpath: |
| 91 | + |
| 92 | +1. 📦 **[fastjava-v0.1.0.jar](https://github.com/andrestubbe/fastjava/releases)** (The Core Library) |
| 93 | +2. ⚙️ **[fastcore-v1.0.0.jar](https://github.com/andrestubbe/FastCore/releases)** (The Mandatory Native Loader) |
| 94 | + |
| 95 | +> [!IMPORTANT] |
| 96 | +> Both JARs must be in your classpath for the native JNI calls to function correctly. |
| 97 | +
|
45 | 98 | **Zero-GC.** **Zero-Copy.** **Native Speed.** |
46 | 99 |
|
47 | 100 | --- |
|
52 | 105 | | Library | Purpose | Tech | State | |
53 | 106 | |---------|---------|------|-------| |
54 | 107 | | **[FastHotkey](https://github.com/andrestubbe/fasthotkey)** | Global hotkeys | Win32 hooks | Alpha | |
55 | | -| FastMouse | Raw mouse reading | RawInput API | TODO | |
56 | | -| FastKeyboard | Raw keyboard reading | RawInput API | TODO | |
| 108 | +| **[FastKeyboard](https://github.com/andrestubbe/FastKeyboard)** | Raw keyboard reading | RawInput API | Alpha | |
| 109 | +| **[FastMouse](https://github.com/andrestubbe/FastMouse)** | Raw mouse reading | RawInput API | TODO | |
57 | 110 | | FastInputHook | Global input hooks | SetWindowsHookEx | TODO | |
58 | 111 | | **[FastTouch](https://github.com/andrestubbe/fasttouch)** | Multi-touch & pressure | Win32 touch | Alpha | |
59 | 112 | | **[FastStylus](https://github.com/andrestubbe/faststylus)** | Pen pressure, tilt | WM_POINTER | Alpha | |
|
78 | 131 | | **[FastRobot](https://github.com/andrestubbe/fastrobot)** | Screen capture & automation | DirectX, SendInput | Alpha | |
79 | 132 | | **[FastGhostMouse](https://github.com/andrestubbe/FastGhostMouse)** | GPU secondary mouse overlay | DirectComposition, D2D | Alpha | |
80 | 133 | | **[FastDisplay](https://github.com/andrestubbe/FastDisplay)** | Display/DPI monitoring | Win32, DWM | Alpha | |
81 | | -| FastWindow | Window management | Win32 API | TODO | |
| 134 | +| **[FastWindow](https://github.com/andrestubbe/FastWindow)** | Window management | Win32 API | Alpha | |
82 | 135 | | FastWindowHook | Window hooks | Win32 | TODO | |
83 | 136 | | **[FastNotification](https://github.com/andrestubbe/fastnotification)** | Native notifications | WinRT, Toast | Alpha | |
84 | 137 | | FastFileWatch | File notifications | ReadDirectoryChangesW | TODO | |
|
0 commit comments