Skip to main content

Local-first FastAPI service for idea validation and markdown reports

Project description

AIdeator logo

AIdeator

AIdeator

AI-powered idea validation engine with pluggable LLM and search providers

Validate product ideas with configurable privacy modes, search-backed signals, and benchmark scoring — all from a single local-first FastAPI service.


Setup time License Python FastAPI Docker compose HTML+PDF reports

Architecture · Configuration · Quick Start · Security & Privacy · Issues


What is AIdeator?

AIdeator is a local-first idea validation engine that turns raw product ideas into structured validation reports with demand, competition, and risk scoring. It combines:

  • LLM-powered analysis via Ollama (local), OpenAI, Anthropic, or Mistral
  • Search-backed signals via built-in web fetch, Tavily, or Exa
  • Benchmark scoring with 0–100 scores and percentile comparisons
  • Privacy modes that control what data leaves your machine

Think of it as your AI research analyst for product ideas — run it locally with zero external calls, or connect cloud providers for deeper insights.

Key Features

| 🪄 Premium UI | Score interpolations, staggered reveals, and glassmorphic aesthetics | | ⚡ Real-time SSE | Live engine telemetry with status pulses and progress bars | | ⌨️ Cmd+K Palette | Pro-tier keyboard navigation for rapid system access | | 📄 HTML Export | Self-contained HTML reports with embedded animation engines | | 🔒 Privacy modes | local-only, hybrid, cloud-enabled — you control data egress | | 🤖 LLM providers | Ollama (local), OpenAI-compatible, Anthropic, Mistral | | 🔍 Search providers | Built-in (free), Tavily (AI search), Exa (semantic search) | | 📊 0–100 scoring | Demand, competition, risk with score-counting animations | | 📈 Benchmarks | Compare scores against 12 reference SaaS products | | 🖥️ Web dashboard | Server-rendered UI with status badges and kinetic pulses | | ⚙️ Config wizard | aideator config init for interactive setup |

Quick Start

# Clone and install
git clone https://github.com/ARCHITECTURA-AI/AIdeator
cd AIdeator
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -e .

# Configure (interactive wizard)
aideator config init

# Start the server
aideator serve

Default URL: http://localhost:8000

Architecture

aideator/          # Core package: CLI, paths, LLM & search providers
├── llm/           # LLM provider abstraction (Ollama, OpenAI, Anthropic, Mistral)
├── search/        # Search providers (DuckDuckGo, SearXNG, Tavily, Exa, Builtin)
api/               # FastAPI app, routes, config, middleware
engine/            # Run orchestrator, card synthesizer, benchmark
db/                # In-memory repositories (ideas, runs, reports)
models/            # Data classes (Idea, Run, Report)
templates/         # Jinja2 HTML templates (dashboard, reports, settings)
docs/              # Generated markdown reports & project documentation

Detailed overview: docs/architecture.md

Search Providers

AIdeator supports a fully-tiered search abstraction, bringing context to the LLM's idea validation:

Tier Provider Cost Setup Needed Best For
🟢 Free duckduckgo $0 None General testing, personal use
🟡 Mid tavily Paid API Key AI-optimized context gathering
🔵 High exa Paid API Key Deep semantic research
⚙️ Self-hosted searxng $0 (your infra) SearXNG Instance Power users, maximum privacy
Offline builtin $0 None URL extraction only (no search)

Configure via aideator config init or set SEARCH_PROVIDER env var.

LLM Providers

Provider Local? API Key? Notes
Ollama No Default, runs any GGUF model
OpenAI-compatible Yes GPT-4o, Groq, etc.
Anthropic-compatible Yes Claude models
Mistral-compatible Yes Mistral models

Scoring System

Every validation run produces cards with 0–100 scores and automatic bands:

Score Range Band Meaning
70–100 🟢 High Strong signal
40–69 🟡 Medium Moderate signal, needs investigation
0–39 🔴 Low Weak signal, high risk area

Scores are compared against an internal benchmark corpus of 12 known SaaS products to provide percentile rankings.

Privacy Modes

Mode External calls Use case
local-only None Fully offline, maximum privacy
hybrid Keyword-only queries (10 words max) Balanced privacy + signals
cloud-enabled Full idea context Maximum insight quality

Set via APP_DEFAULT_MODE=local|hybrid|cloud environment variable.

Docker

# Build and run
docker build -t your-org/aideator:latest .
docker run --rm -p 8000:8000 --env-file .env your-org/aideator:latest

# Or with compose
docker compose up

CLI Commands

Command Description
aideator serve Start the web server
aideator config init Interactive configuration wizard
aideator config show Display current configuration
aideator rebuild-docs Rebuild markdown report artifacts

Flags: --host, --port, --reload, --db, --docs

Development

pip install -e ".[dev]"
make lint      # Ruff linting
make test      # Pytest suite
make dev       # Dev server with reload

Seed test data:

python scripts/seed_example.py

Configuration

  • Config file: aideator.toml (auto-created by config init)
  • Environment variables: override config file values
  • CLI flags: override everything

Key variables:

Variable Default Description
APP_DEFAULT_MODE local Privacy mode
LLM_PROVIDER ollama LLM backend
LLM_MODEL mistral:7b Model name
SEARCH_PROVIDER builtin Search backend
TAVILY_API_KEY Tavily API key
EXA_API_KEY Exa API key
LLM_API_KEY LLM API key

Full reference: docs/config.md

Security

Local-only mode blocks all outbound HTTP by run-mode guardrails. See docs/security-privacy.md for:

  • Data residency guarantees per mode
  • API key handling and rotation guidance
  • Container hardening recommendations

Version History

Version Phase
1.1.0 V1.1 — UI Polish & Command Palette
1.0.0 V1.0 — Full validation engine
0.4.0 PH-D — Plugin & eval
0.3.0 PH-C — Runtime & migration
0.2.0 PH-B — Web UI
0.1.0 PH-A — Foundation

License

MIT. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aideator-0.9.7.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aideator-0.9.7-py3-none-any.whl (520.7 kB view details)

Uploaded Python 3

File details

Details for the file aideator-0.9.7.tar.gz.

File metadata

  • Download URL: aideator-0.9.7.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.13

File hashes

Hashes for aideator-0.9.7.tar.gz
Algorithm Hash digest
SHA256 c3422e36179f17052913fcd5299ad96d097667e66542a1f1ddbf0adcf26ea266
MD5 ebee62b54f8a2214365d43c2eb6bbc2e
BLAKE2b-256 8eee8f6504c0809a82864250853021fbd2dd2caa88c76a33517cdb815c2e206c

See more details on using hashes here.

File details

Details for the file aideator-0.9.7-py3-none-any.whl.

File metadata

  • Download URL: aideator-0.9.7-py3-none-any.whl
  • Upload date:
  • Size: 520.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.13

File hashes

Hashes for aideator-0.9.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8e56355c0aee111083509af9ee57a4f80e3419536b6a6f254f048784a451dfed
MD5 c6501e476b17bde35854cd5162895b47
BLAKE2b-256 f6b523f0c897be96852f92c0456f36738f5a82c757554b04f057c4f410bd6676

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page