Easy, Fast, and Free!

Launch sites in < 5 seconds!

Demo, Develop, and Deploy.

Share recipes and templates.

Free for 30 days.

Driesnote Chicago

Try out the Driesnote demo from DrupalCon Chicago 2026. You must follow the steps to add an OpenAI key and an Anthropic key to run this demo. Get help at #drupalforge.

Add your API keys

This template ships with the OPENAI_KEY and ANTHROPIC_API_KEY configured as environment variables, but your DrupalForge container will not have these set. You have two options:

Option 1 — Set the environment variables in DevPanel (recommended)

Follow the same steps used in the Vienna Driesnote template, which includes a video walkthrough:

  1. Launch the demo app on this page.
  2. If you are not logged in, save the app.
  3. Press the Manage button. This takes you to the main branch of your project in DevPanel.
  4. Open the Secret Manager tab in your project's horizontal tab bar.
  5. Add an OPENAI_KEY field and paste in a secret key from the OpenAI API. Submit and return to the main branch of your project.
  6. Repeat the previous step for ANTHROPIC_API_KEY, pasting in a secret key from the Anthropic API.
  7. Open the Configuration tab in the left side bar.
  8. Press the Apply Configuration button. When the configuration update is complete, the app is ready.

Option 2 — Store the keys directly in the Key module (easier)

If Option 1 feels complicated, you can bypass the environment variables entirely and store the keys as config values in Drupal's Key module:

  1. Log in to the Drupal site (default credentials are admin / admin).
  2. Go to Configuration → System → Keys (/admin/config/system/keys).
  3. Edit the OpenAI key. Change Key provider from Environment to Configuration, paste in your OpenAI API key, and save.
  4. Edit the Anthropic key and do the same with your Anthropic API key.

⚠️ Security note: Storing keys as configuration means anyone who can log in to the site can read them. The default admin credentials on DrupalForge are admin / admin. If you use this method, either change the admin password to something secure, delete the keys when you are done, or delete the DrupalForge container after the demo.

Steps to recreate the demo:

  1. Create the product page from the copy deck — Open Canvas AI and prompt:

    "Here's the copy for the new FinDrop product page — create this product page from the copy below"

    Paste the contents of travel-page-text-only-v2.md.

  2. Provide audience + goal context when Canvas asks:

    "Audience is Travel Managers. Goal is to get whitepaper downloads."

  3. Swap the hero image — prompt:

    "Switch the hero to photography with Cindy Liu."

  4. Generate an FAQ block — prompt:

    "Use the content in section 'Learn How We Make Travel Expense Management Easy' to write a new FAQ block above the CTA. Use the current content and rewrite the heading as questions."

  5. Add internal cross-links — prompt:

    "Review the page and add internal cross links."

  6. Generate AEO schema — prompt:

    "Create an AEO schema for this page."

  7. Start a new session (refresh the browser to simulate time passing).
  8. Trigger the performance agent — prompt:

    "This page is underperforming against its Google Analytics goals. Not performing to bounce threshold. Review the page layout and provide suggestions to improve the failing metric(s)."

  9. Edit the CTA — prompt:

    "Edit the CTA Title to 'Go live in 10 business days, not 6+ months like with SAQ'."

  10. Pre-publish review — prompt:

    "Please review before I publish live."

Reference material:

Screenshots