2026In progressWork

School Communications Editor

For a small school-photography business, I built an editor that generates communications from seven templates, shared profiles and one form, with Gmail and Drive outputs.

My contribution
I built a communications editor with shared profiles and Gmail and Drive integrations.
Who it serves
The team at a small school-photography business.
Scope
Seven templates populated from one form. Product in development.

Case overview

Web editor for school flyers with reusable templates, institution profiles and outputs ready to send, print or store in Drive.

Templates
7 reusable pieces
User
Non-technical
Output
PNG, SVG, PDF and Gmail
Integration
Drive, OAuth and Redis

School flyer editor

Web editor for producing school communications from editable data with seven templates, institution profiles, local drafts, PNG/SVG/PDF outputs, Gmail draft and Drive upload.

Anonymized product

Featured piece

The public piece uses an anonymized render from the output. The product keeps templates for families, direction, cooperative groups and folder catalogs.

View

TemplateAudienceUse
Parents editorialFamiliesfull piece with date, A/B/C folders and key information
Parents blocksFamilieshigh-contrast version for quick reading
Parents minimalFamiliesclean institutional version for formal sends
Parents noteBackpack or emailhalf piece with steps, prices and QR
DirectionInstitutionB2B proposal with logistics, payment and school value
CooperativeAssociationsbenefit, continuity and operation without cash handling
Folder catalogInternal teampack manual with prices, rules and variants

Working System

One form updates school, level, dates, prices, contact and copy. Shared profiles store institution configuration for the team.

Templates
Parents editorial, blocks, minimal; note; direction; cooperative; folder catalog
Persistence
local prisma-edit:* draft and shared profiles in Redis/Upstash
Distribution
PDF/print, PNG/SVG, Gmail draft and Drive upload
Security
Google OAuth with allowlist and server-side API routes

Case decisions

Product

The form concentrates school, level, dates, copy, contact, prices, colors and folder items. Each change updates pieces for families, direction, cooperative groups or catalog.

Operation

The app stores browser drafts, shares profiles through Redis/Upstash, restricts access with Google OAuth and creates PNG/SVG/PDF outputs, Gmail drafts or Drive files.

Facets

Tools

Next.js 16 + React 19
editor with seven templates and one data form
Tailwind v4
visual system for pieces, panels and export states
Google Drive API
upload of exported pieces to per-institution folders
Gmail API
drafts with PNG attachment from the user's OAuth account
Redis / Upstash
institution profiles shared between authenticated users
html-to-image
PNG/SVG rendering of templates from the DOM