All notable changes to flompt are documented here.
Format follows Keep a Changelog.
- Prompt Audit — scans blocks for structural gaps (role, objective, examples…), scores prompt 0–100, one-click to add any missing block directly from the panel
- Prompt Score — rates the compiled output across quality dimensions with a radar chart; results cached per compiled prompt to ensure consistency
- Onboarding tour — two new steps: Audit and IDE tools; step order reworked (prompt → blocks → library → decompose → list-view → audit → project → compile → canvas-view → IDE tools); tooltip bottom-clamped so it never goes off-screen; clicking the spotlighted element advances the step
- Collision-free block positioning — blocks added from sidebar, list view, canvas bar or audit panel never overlap existing blocks; uses real canvas dimensions
- Export dropdown —
.txtand.jsonexport merged under a single "Export" button with a dropdown menu - Extension popup — now triggers after 3 compiles instead of a fixed timer post-onboarding
- Analytics — session recording always-on for all visitors; 14 new product events (app_loaded, view_toggled, audit_opened, audit_block_added, score_opened, output_format_changed, library_opened, template_applied, version_panel_opened, version_saved, version_restored, version_diff_viewed, project_renamed)
- Landing page — new "Built-in tools" section presenting Prompt Quality, Version History and Context Memory
- PromptOutput panel restructured: Copy to Clipboard, Export dropdown, Analysis section divider (Score), Third party section divider (Make.com, GitHub)
- Audit cache keyed by
rawPrompt(input); Score cache keyed by compiled output — repeated checks with no changes always return the same result - Version history diff now compares compiled output instead of raw prompt input
- Debug and Compress features hidden (temporarily disabled)
- Audit "Add" button shows "Added" state with a checkmark after clicking
- List view scrolls to bottom when a block is added
- Canvas camera no longer repositions on drag-drop or manual block add
- FR copy label → "Copier le prompt" · PT → "Copiar o prompt"
- Extension popup CSS transform glitch during open animation
- Tour backdrop was intercepting pointer events — fixed click-through to spotlighted element
- Tooltip off-screen on step 9 (bottom-clamped)
- Prompt IDE — Full integrated IDE panel with 7 new tools directly in the builder (@Refaltor77):
- Debugger — detects logical flaws and ambiguities in the prompt
- Critic — rates the prompt across 5 dimensions with a radar chart
- Compressor — reduces token count while preserving intent
- System Prompt — generates a ready-to-use system prompt from the current blocks
- Cost Estimator — live token count with cost estimate per provider
- Context Memory — persistent memory blocks (company, persona, style…) reusable across sessions via IndexedDB
- Version History — saves and restores named prompt snapshots with diff view
- Make.com integration — webhook panel to send compiled prompts directly to a Make.com scenario, with execution history and test mode (@Refaltor77)
- Template Library — 100+ categorized prompt templates with full i18n (EN/FR/ES/DE/PT/JA/TR/ZH/AR/RU) and response language selector (@Refaltor77)
- Multi-project system — local workspaces with persistence, export/import, default project and block count in navbar (@Nyrok)
- Projects step in Guided Tour onboarding (@Nyrok)
- Live star progress bar —
GET /stars-svgendpoint returns a dynamic SVG showing GitHub star count toward the 100-star goal (15-min cache, fallback on error). Displayed in README below the stars badge. - Collision-free scatter layout — after decomposition, blocks are placed randomly across the full canvas area with guaranteed no-overlap (300 attempts per block, H/V padding enforced). Layout uses real canvas dimensions via
getBoundingClientRect.
- Blocks expand by default after decomposition — no more auto-collapse on AI summary
- Edges and handles removed — canvas is no longer a flow diagram; blocks are standalone cards.
nodesConnectable=false, all<Handle>components removed, backend stops generating edges - Layout applied in
FlowCanvasonisDecomposingtransition using actual canvas size, replacing the static 2-column grid - Landing page mockup updated — handles and connection arrows removed from the SVG hero to match the current app
- Cursor jumps to end of textarea when typing in a controlled React textarea (
selectionStart/Endnow saved inonChangebefore re-render, restored inuseLayoutEffect) deploy.shCaddy check:caddy list-modulesalways exits 0 regardless of daemon state — switched to probing the admin API atlocalhost:2019/config/
1.1.0 — 2026-03-06
- Safari extension support — browser.* compatibility layer, Safari manifest, Makefile target
- Locale switcher in tab bar for mobile and extension sidebar
- GitHub button click tracking via PostHog (source label per entrypoint)
- X-Robots-Tag noindex on
/mcp/endpoint (keep MCP out of search engines)
- Extension version bumped to 1.1.0
- Locale URL synced on change to survive page reload
- Default locale always EN — removed browser auto-detection
- Arabic layout: keep LTR, apply
dir=autoonly on textareas
- Toggle button shown immediately on first toolbar insert failure
- PostHog
Script Errornoise filtered from exception tracking - Arabic RTL not inverting global layout
1.0.0 — 2026-03-05
- 10-language support: EN, FR, ES, DE, PT, JA, TR, ZH, AR, RU — each with a dedicated indexed SEO page
- Static locale pages generated at build time for crawler indexing
- Root sitemap, Twitter Cards, full meta robots coverage
- About page for Hamza Konte (bio, stack, projects, social links)
- Multilingual blog posts (EN + FR) updated for multilingual release
- Blog slugs aligned between FR and EN for locale switcher consistency
- Stack page highlights updated
0.4.0 — 2026-03-04
- Arcade interactive demo embedded in landing page
- Prompt Guard removal blog post (EN + FR) explaining the decision
robots.txtfor landing — allows public pages, disallows/api,/mcp,/appaudience,goal,chain-of-thoughtblock types- Star popup triggered on prompt inject (extension flow)
format_controlblock typechain_of_thoughtblock type (merged into chain-of-thought)- Llama-2 Guard 4 prompt validation (prompt guard)
- Mobile menu z-index (was rendering below navbar)
- Mobile menu backdrop-filter and height consistency
- Horizontal scroll on landing mobile
.btn-ctawhite text in mobile nav
0.3.0 — 2026-02-25
- Browser extension (Chrome MV3 + Firefox) — sidebar injection for ChatGPT, Claude, Gemini
✦ Enhancebutton inserted in AI platform toolbars- Bidirectional sync between sidebar and chat input via
postMessage - Resizable sidebar (300–900px drag handle)
- Custom tooltip rendered on
<body>viagetBoundingClientRect - Platform-specific input detection (ChatGPT, Claude/ProseMirror, Gemini/Quill)
- Auto-reinsert on SPA navigation
- Extension icons — SVG source + PNG at 16/32/48/128px via sharp
- Makefile for extension:
make icons,make pack,make chrome,make firefox,make safari - Guided tour (5-step interactive spotlight for first-time visitors)
- PostHog analytics — session replay, heatmaps, autocapture, error tracking
- Error boundary component → tracks
app_crashwith stack trace - Contextual error messages — overloaded (529), timeout, network, server errors
- Share button (Web Share API + clipboard fallback) in output panel
- Language block — auto-detects prompt language, inline
<select>UI - OG image as PNG (1200×630, resvg-js) for social preview compatibility
- Structured data (FAQ Schema, HowTo Schema) for Google rich snippets
- Prompt compilation is now 100% local (no
/api/compilecall) — zero latency - Block assembly via topological sort +
TYPE_PRIORITY+position.yfallback - XML output format:
<role>,<objective>,<constraints>, etc. - Landing redesign: split hero with SVG canvas mockup, before/after transformation
- Caddy routing:
/app*withframe-ancestorsfor extension iframe - Extension:
DEV_MODEflag for localhost ↔ production switching
- Extension iframe loaded landing (X-Frame-Options DENY) instead of
/app frame-ancestorswas set tochrome-extension:(wrong — host page needed)- Canvas invisible on desktop (missing
display:flexon.canvas-wrap) - Drag-on-select duplicate bug (deselect before addNode)
- Handle top clipped by overflow:hidden wrapper
0.2.0 — 2026-02-24
- Monorepo restructure:
frontend/→app/+blog/+landing/ - Next.js blog (bilingual EN/FR, static export) — 10 initial articles
- Static landing page (
landing/index.html) - Caddyfile — auto-TLS, HSTS, CSP, gzip/zstd, routing for all sub-paths
deploy.sh— one-command build + restart + health checks- GitBook documentation — 5 pages proxied at
/docs - i18n system — FR/EN with
LocaleContext+ full translation files - Canvas onboarding — spotlight for first-time desktop users with example prompt
- Drag-and-drop from sidebar onto canvas
- Auto-save indicator with timestamp
- Custom edges — gradient, glow, animated dash, hover delete
- Keyboard shortcuts overlay (
?key) - Backend status indicator in header (online/offline/checking)
- Node duplicate button on each block
- Mobile responsive — tab bar (Prompt / Canvas / Output), safe-area support
- Clipboard paste button on prompt textarea
supervisord.conffor process management (backend + Caddy)- Keepalive watchdog (
keepalive.sh) — auto-restarts supervisord every 30s - SEO — meta tags, OG image, Twitter Cards, JSON-LD, robots.txt, sitemap.xml
- Block collapse/expand, auto-resize textarea, character counter
- Undo/redo with Ctrl+Z/Y, Reset button
- Mermaid-inspired dark theme — warm
#1c1c1ebackground,#FF3570accent - All emojis replaced with Lucide React icons
- Blog switched from Next.js server to static export (
output: export) - Mobile: default tab is
inputinstead ofcanvas
- React Flow canvas height on mobile (flex vs. percentage)
- Handle overflow clipped on mobile
connectOnClickfor tap-to-connect on touch devices/api/*proxied before SPA fallback in Caddy
0.1.0 — 2026-02-23
- Initial project: React 18 + TypeScript + React Flow + Zustand (frontend)
- FastAPI + Pydantic v2 backend
- 8 block types:
role,context,objective,input,constraints,output_format,examples,chain_of_thought - AI service with Anthropic/OpenAI pluggable — heuristic fallback without API key
- Structural XML prompt compilation
- Docker Compose setup