Looking to Connect?

Contact Us
Get in touch

Talk to us about Firefly.

Tell us what you’re building, what you’d want from a forkable WordPress base, or which corner of this demo broke first. A real human reads every message — usually within a day.

alex@fireflycreative.io
every message routes to a real inbox · claude.md welcome


Behind this form

You just used a Firefly block.

The three inputs above aren’t a contact-form plugin. They’re a single firefly/contact-form block — markup in render.php, behavior in contact.js, snippet in source control. Edit it in Gutenberg, sync to a snippet file, ship to live with one CLI command.


01 · The block

firefly/contact-form

Three fields, one submit. Placeholder copy and the button label are editable as block attributes — the markup is fixed so JS bindings stay stable across the editor and frontend.

block.json
render.php
index.js

01 · The wiring

contact.js handles submit

The frontend script binds to #send-message-btn, validates the three inputs, and POSTs to a custom REST route. Pure vanilla JS — swap it out per project without touching the block.

vanilla js
custom-api/v1
wp_mail

01 · The deploy

firefly import default

Saving in Gutenberg syncs the block markup back to snippets/pages/contact.html. One CLI command pushes that file to live dev or production. No FTP, no plugin upload.

snippet sync
cli deploy
git-tracked
Other channels

Or skip the form.

Email alex@fireflycreative.io directly. Open a GitHub issue at fireflycreativeio/firefly-collective. Or fork the repo and start sending PRs — that counts as the loudest possible message.