FinDrop is a Drupal CMS 2.0 (Drupal 11.3) demo site showcasing AI-powered content creation with the Canvas page builder.
- Install DDEV following the documentation
- Open the command line and
cdto the root directory of this project - Set up your environment:
cp .env.template .ddev/.envThen open .ddev/.env and set your OpenAI and/or Anthropic keys.
- From the root of the project, run:
ddev demo-setupAfter making changes in Drupal, use these commands to export content back into the recipes:
| Command | What it exports |
|---|---|
ddev export-all-content |
All content entities (canvas pages, nodes, media, menu links, taxonomy terms) |
ddev export-canvas-pages |
Canvas pages only |
ddev export-media |
Media and file entities only |
ddev export-ai-context |
AI Context items and usage records |
ddev backup |
Database and files directory snapshot to .backups/ |
A static audit of all 12 Canvas AI agents was conducted to evaluate prompt quality, context injection, tool design, and security.
| Document | Description |
|---|---|
| Static Audit Report | Full findings for all 12 agents — system prompts, context gaps, red flags, test coverage |
| Infrastructure Plan | DDEV service composition, Drush inspection, Playwright testing harness |
| Open Questions | Unresolved questions from the audit |
| Next Session Handoff | Priorities and environment state for continuing work |
| Embeddings Handoff | Instructions for setting up OpenAI key and indexing content |
The DrupalCon driesnote demo script was executed via Playwright against a live DDEV instance:
| Step | Prompt | Result | Screenshot |
|---|---|---|---|
| 01.A | Paste copy deck | Pass — preflight questions asked | Building |
| 01.B | Travel Managers / whitepaper downloads | Pass — full page built | Built |
| 02 | Switch hero to photography | Expected fail — no OpenAI key | Screenshot |
| 03 | Create FAQ from content | Pass — 3 accordion items | Screenshot |
| 04 | Add internal cross links | Expected fail — no search index | Screenshot |
| 05 | Create AEO schema | Pass — JSON-LD applied | Screenshot |
| Skill | Description |
|---|---|
| Canvas AI Audit | Repeatable 8-step driesnote demo test with Playwright |
| AI Observability | Enable/configure contrib ai_observability module |
| Canvas Webapp Testing | Playwright patterns and selectors for Canvas AI |
| File | Purpose |
|---|---|
| CLAUDE.md | Project guide for Claude Code |
| Test Scenarios | 27 test scenarios across 7 phases |
| Demo Prompts | DrupalCon driesnote demo script |
| Canvas Patch README | How to regenerate the Canvas combined patch |