feat(contact): implement Formspree contact form submission
Some checks failed
CI / lint-and-test (push) Has been cancelled

- Enable contact form fields with component IDs
- Add callback for Formspree POST with JSON/AJAX
- Include honeypot spam protection (_gotcha field)
- Handle validation, loading, success/error states
- Clear form on successful submission
- Add lessons learned documentation

Closes #92, #93, #94

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-01 14:26:02 -05:00
parent f58b2f70e2
commit a5d6866d63
5 changed files with 307 additions and 15 deletions

View File

@@ -1,5 +1,5 @@
"""Application-level callbacks for the portfolio app."""
from . import sidebar, theme
from . import contact, sidebar, theme
__all__ = ["sidebar", "theme"]
__all__ = ["contact", "sidebar", "theme"]