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.9.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.9-py3-none-any.whl (561.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aideator-0.9.9.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.9.tar.gz
Algorithm Hash digest
SHA256 13a113101433574d11b60152f60a08fca24454943e968c5d99645f7934d2e519
MD5 7584f51b271cd3b88e013e34a8acb0cf
BLAKE2b-256 b490851edc30cdd263391667a030f998b76e940c419ccb4f1cbcd1731b84faf1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aideator-0.9.9-py3-none-any.whl
  • Upload date:
  • Size: 561.2 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.9-py3-none-any.whl
Algorithm Hash digest
SHA256 a701421cb0c4489ef7271b640b397774511e4336d2ee10d21839b9c9000e031a
MD5 62bb98b8be0498db203719668b00b36a
BLAKE2b-256 dccbf0360737d1abfeb2c4e268b09c311c13ad2d120c00747822833d0a618c37

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