You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
oabrivard 1f9f7f39d7 Phase 7: Email sending via Resend + Markdown/PDF export
Backend:
- Synthesis email sending via Resend API with HTML template (inline CSS,
  tables-based for email client compatibility) + plain-text fallback
- XSS prevention via html_escape() on all user content in email templates
- Markdown export: clean format with headers, links, summaries
- PDF export: printpdf with built-in Helvetica fonts, indigo color scheme,
  automatic page breaks, word wrapping
- 3 new endpoints: send-email, export/markdown, export/pdf
- All endpoints enforce ownership checks
- Email validation using email_address crate
- 24 new unit tests, 13 integration tests

Frontend:
- Email section on SynthesisDetail: input pre-filled with user email,
  send button with loading state, success/error feedback
- Export buttons: Markdown + PDF with per-button loading states
- File download via Blob + temporary anchor with Content-Disposition parsing
- 6 new export tests

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
3 months ago
.claude Phase 7: Email sending via Resend + Markdown/PDF export 3 months ago
backend Phase 7: Email sending via Resend + Markdown/PDF export 3 months ago
docs Finished phase 1 3 months ago
frontend Phase 7: Email sending via Resend + Markdown/PDF export 3 months ago
src Initial commit 3 months ago
.env.example Finished phase 1 3 months ago
.gitignore Finished phase 1 3 months ago
CLAUDE.md Updated Claude code config 3 months ago
README.md Initial commit 3 months ago
docker-compose.yml Finished phase 1 3 months ago
firebase-applet-config.json Initial commit 3 months ago
firebase-blueprint.json Initial commit 3 months ago
firestore.rules Initial commit 3 months ago
index.html Initial commit 3 months ago
metadata.json Initial commit 3 months ago
package-lock.json Initial commit 3 months ago
package.json Initial commit 3 months ago
tsconfig.json Initial commit 3 months ago
vite.config.ts Initial commit 3 months ago

README.md

GHBanner

Run and deploy your AI Studio app

This contains everything you need to run your app locally.

View your app in AI Studio: https://ai.studio/apps/633f0b39-1bef-446a-acd0-a427cc7be39b

Run Locally

Prerequisites: Node.js

  1. Install dependencies: npm install
  2. Set the GEMINI_API_KEY in .env.local to your Gemini API key
  3. Run the app: npm run dev