c12ca950e108eace0d94662a82149413f6e7aa61
Some checks failed
CI / Format (push) Failing after 3s
CI / Clippy (push) Failing after 4s
CI / Security Audit (push) Has been skipped
CI / Tests (push) Has been skipped
CI / Format (pull_request) Failing after 3s
CI / Clippy (pull_request) Failing after 4s
CI / Security Audit (pull_request) Has been skipped
CI / Tests (pull_request) Has been skipped
CI / Deploy (push) Has been skipped
CI / Deploy (pull_request) Has been skipped
Add three responsive breakpoints (1024px, 768px, 480px) to make the dashboard fully usable on tablets and phones. The sidebar now slides in as an overlay on mobile with a hamburger toggle in a fixed header bar. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CERTifAI
Self-hosted, GDPR-compliant GenAI infrastructure dashboard
About
CERTifAI is a SaaS dashboard for administering self-hosted private GenAI infrastructure. It gives companies and individuals a single pane of glass to manage LLMs, Agents, MCP Servers, and other GenAI-related services -- without sending data to non-EU cloud providers.
Why? Protect your intellectual property from being used as training data. Stay fully GDPR-compliant with infrastructure you own.
Features
| Area | Capabilities |
|---|---|
| User Management | Add, remove, set roles, permissions, and restrictions |
| SSO / OAuth / LDAP | Connect to company identity providers and sync users |
| Feature Flags | Toggle GenAI features on or off per-org |
| Billing | View seat usage and token consumption per billing cycle |
| Support | Request support or new features via feedback form |
| GenAI Tools | Manage LLMs, Agents, MCP Servers; launch Langchain, Langfuse, Tavily; view endpoints and generate API keys |
Dashboard
The main dashboard provides a news feed powered by SearXNG and Ollama:
- Topic-based search -- Browse AI, Technology, Science, Finance, and custom topics. Add or remove topics on the fly; selections persist in localStorage.
- Article detail + AI summary -- Click any card to open a split-view panel. The full article is fetched, summarized by Ollama, and a follow-up chat lets you ask questions.
- Sidebar (visible when no article is selected):
- Ollama Status -- green/red indicator with the list of loaded models
- Trending -- keywords extracted from recent news headlines via SearXNG
- Recent Searches -- last 10 topics you searched, persisted in localStorage
Tech Stack
| Layer | Technology |
|---|---|
| Frontend | Dioxus 0.7 (fullstack + router), Tailwind CSS 4, DaisyUI 5 |
| Backend | Axum, tower-sessions, Dioxus server functions |
| Database | MongoDB |
| Auth | Keycloak 26+ (OAuth2 + PKCE, Organizations) |
| Search | SearXNG (meta-search) |
| LLM | Ollama (local inference) |
Getting Started
Prerequisites
- Rust 1.89+
- Dioxus CLI (
dx) - MongoDB
- Keycloak
- SearXNG (optional)
- Ollama (optional)
Setup
# Clone the repository
git clone https://gitea.meghsakha.com/sharang/certifai.git
cd certifai
# Configure environment
cp .env.example .env
# Edit .env with your Keycloak, MongoDB, and service URLs
# Run the dev server
dx serve
External Services
| Service | Purpose | Default URL |
|---|---|---|
| Keycloak | Identity provider / SSO | http://localhost:8080 |
| MongoDB | User data and preferences | mongodb://localhost:27017 |
| SearXNG | Meta-search engine for news | http://localhost:8888 |
| Ollama | Local LLM for summarization | http://localhost:11434 |
Project Structure
src/
components/ Frontend-only reusable UI components
infrastructure/ Server-side: auth, config, DB, server functions
models/ Shared data models (web + server)
pages/ Full page views composing components + models
assets/ Static assets (CSS, icons, manifest)
styles/ Tailwind/DaisyUI input stylesheet
bin/ Binary entrypoint
Git Workflow
We follow the feature branch workflow. The main branch is the default and protected branch.
- Conventional Commits are required for all commit messages
- We follow SemVer for versioning
CI
CI runs on Gitea Actions with runner tag docker.
Built with Rust, Dioxus, and a commitment to data sovereignty.
Description
The purpose of
https://dash-dev.meghsakha.com
CERTifAIis to provide self-hosted and GDPR-Compliant GenAI infrastructure to companies who do not wish to subscribe to non-EU cloud providers to protect their intellectual property from being used as training data.
Languages
Rust
47.4%
CSS
26.3%
HTML
18.9%
JavaScript
4%
TypeScript
3.1%
Other
0.3%