Skip to content

Deploy your AI easily on Linux/Windows/iOS/Android/Web with ⚡blazingly⚡ fast inference times and native UI. 🔥

License

Notifications You must be signed in to change notification settings

Kataglyphis/Kataglyphis-Inference-Engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

310 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

Kataglyphis-Inference-Engine

An inference engine with Flutter/Dart frontend and Rust/C++ backend, showcasing Gstreamer capabilities enhanced with AI. Read further if you are interested in cross platform AI inference.

Build + run + test on Linux natively Windows CMake (clang-cl) natively Build + test + run for web
Build + test + run android appAutomatic Dependency Submission CodeQL
Dependabot Updates TopLang Donate Twitter YouTube

Official homepage

Overview

Kataglyphis-Inference-Engine bundles a Flutter/Dart frontend, a Rust/C++ inference core, and a rich set of camera streaming pipelines powered by GStreamer. The repository acts as an end-to-end reference for building cross-platform inference products that target desktop, web, and embedded devices.

Highlights & Key Features – Kataglyphis-Inference-Engine

🌟 Highlights

  • 🎨 GStreamer native GTK integration – Leveraging users to write beautiful Linux AI inference apps.
  • 📹 GStreamer WebRTC livestreaming with ready-to-use pipelines for USB, Raspberry Pi, and Orange Pi cameras.
  • 🌉 flutter_rust_bridge integration – Ensures a seamless API boundary between Dart UI and Rust logic.
  • 🐳 Containerized development flow plus native instructions for Windows, Linux, web. For details in my build environment look into Kataglyphis-ContainerHub
  • 🐍 Python inference demos for rapid experimentation alongside the Rust core.

📊 Feature Status Matrix

Core Features

Category Feature Win x64 Linux x64 Linux ARM64 Linux RISC-V Android
Camera Streaming 📹 GStreamer WebRTC Livestream ✔️ ✔️ ✔️ ✔️ N/A
Supported Cameras 🔌 USB Devices ✔️ ✔️ ✔️ ✔️ N/A
🍓 Raspberry Pi Camera N/A ✔️ ✔️ ✔️ N/A
🟠 Orange Pi Camera N/A N/A
📱 Native Camera API N/A N/A N/A N/A ✔️

Infrastructure & Build

Category Feature Win x64 Linux x64 Linux ARM64 Linux RISC-V Android
Containerization 🐳 Dockerfile ✔️ ✔️ ✔️ ✔️ N/A
🐳 Docker Compose N/A ✔️ ✔️ ✔️ N/A
Native Integration 🎨 GTK Integration N/A ✔️ ✔️ ✔️ N/A
🪟 Win32 API ✔️ N/A N/A N/A N/A
🤖 Android NDK N/A N/A N/A N/A ✔️
Bridge Layer 🌉 flutter_rust_bridge ✔️ ✔️ ✔️ ✔️ ✔️
Compiler 🔧 Clang-CL ✔️ N/A N/A N/A N/A
🔧 GCC/Clang N/A ✔️ ✔️ ✔️ ✔️

Testing & Quality Assurance

Category Feature Win x64 Linux x64 Linux ARM64 Linux RISC-V Android
Unit Testing 🧪 Advanced unit testing 🔶 🔶 🔶 🔶 🔶
Performance ⚡ Advanced performance testing 🔶 🔶 🔶 🔶 🔶
Security 🔍 Advanced fuzz testing 🔶 🔶 🔶 🔶 🔶

Frontend Platforms

Category Feature Win x64 Linux x64 Linux ARM64 Linux RISC-V Android
Flutter UI 🦋 Flutter Web Support ✔️ ✔️ ✔️ ✔️ ✔️
💻 Flutter Desktop ✔️ ✔️ ✔️ ✔️ N/A
📱 Flutter Mobile N/A N/A N/A N/A ✔️

Platform Summary

Platform Architecture Status Notes
🪟 Windows x86-64 ✔️ Built with clang-cl, Win32 integration
🐧 Linux x86-64 ✔️ Full GTK support, Docker ready
🐧 Linux ARM64 ✔️ SBC optimized (RPi, OPi support)
🐧 Linux RISC-V ✔️ Emerging architecture support
🤖 Android ARM64/x86-64 ✔️ Native camera, NDK integration

Legend:

  • ✔️ Completed - Feature fully implemented and tested
  • 🔶 In Progress - Active development underway
  • Not Started - Planned but not yet begun
  • N/A - Not applicable for this platform

Quick Start

  1. Clone the repository with submodules:

NOTE: On Windows I use Git Bash instead of
Powershell or cmd

git clone --recurse-submodules --branch develop git@github.com:Kataglyphis/Kataglyphis-Inference-Engine.git
cd Kataglyphis-Inference-Engine
  1. Initialize submodules if needed.
    If u used --recurse-submodules while cloning you are already good.
    Otherwise you can use this 😄
    git submodule update --init --recursive

Refer to the detailed docs below for platform-specific requirements, camera streaming pipelines, and deployment workflows.

Documentation

Topic Location Description
Getting Started docs/source/getting-started.md Environment prerequisites, installation, and run commands.
Platform Guides docs/source/platforms.md Container, Windows, Raspberry Pi, and web build instructions.
Camera Streaming docs/source/camera-streaming.md GStreamer WebRTC pipelines and Python inference demos.
Upgrade guide docs/source/upgrade-guide.md How to keep things up-to-date.

Build the full Sphinx documentation from the docs/ directory when you need a browsable site.

Tests

Testing infrastructure is under active development. Track progress on the roadmap or contribute test plans via pull requests.

Roadmap

Upcoming features and improvements will be documented in this repository.
Please have a look docs/source/roadmap.md for more deetails.

Contributing

Contributions are what make the open-source community amazing. Any contributions are greatly appreciated.

  1. Fork the project.
  2. Create your feature branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

License

MIT (see here)

Acknowledgements

Thanks to the open-source community and all contributors!

Literature

Helpful tutorials, documentation, and resources:

Multimedia

Rust

Raspberry Pi

CMake/C++

Flutter/Dart

Protocols

Tooling

Android

Contact

Jonas Heinle
Twitter: @Cataglyphis_
Email: cataglyphis@jonasheinle.de

Project Links:

About

Deploy your AI easily on Linux/Windows/iOS/Android/Web with ⚡blazingly⚡ fast inference times and native UI. 🔥

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published