** Inspiration**
As designers, we’ve all faced it. Chasing clients across email threads, trying to locate scattered feedback, downloading drafts, exporting designs, and manually crafting approval requests. It’s a slow, error-prone loop. While Adobe Express makes design easy, client communication remains outside the creative flow. I asked: Why can't client approvals live where creativity starts? And thus, ApproveFlow was born.
What it does
ApproveFlow is an Adobe Express Add-on that enables designers to:
- Securely request design approvals via OAuth-authenticated emails
- Auto-generate approval request emails with AI-powered text drafting
- Attach live design previews
- Get approval decisions logged instantly in a centralized dashboard
- Capture optional reviewer comments for better feedback All this from within Adobe Express, without ever switching tabs.
How we built it
The current core of ApproveFlow was built using the Adobe Express Add-on SDK, leveraging the sandboxed iframe environment to run custom UI logic. The in-app interface is developed with HTML, JavaScript, and the Add-on SDK API, enabling direct interactions inside Adobe Express. While we cannot send emails or access LLMs directly from within the SDK environment, our system is designed to offload these capabilities to an external backend.
Challenges we ran into
- Adobe Express SDK limitations: The sandboxed environment restricts direct use of network APIs (like email or AI services), so we architected around this by planning secure backend integrations.
- OAuth setup: Designing a compliant OAuth flow (e.g., for Gmail) with short-lived access tokens and least-privilege scopes.
- Approval security: We had to consider protections against spoofing and impersonation if links are sent via email
- UI flexibility: Creating a responsive, intuitive UI while staying within Adobe's iframe constraints.
Accomplishments that we're proud of
- Prototyped a full workflow for design approvals within Adobe Express.
- Built a dynamic UI that supports real-time snapshot generation and action logging.
- Architected an extensible backend-first model that integrates external tools securely.
- Delivered a functional demo showing approval log management and design tracking—all embedded in Adobe Express.
What we learned
- How to design around limitations of SDK-sandboxed environments using backend offloading.
- The importance of token-based authorization and OAuth for integrating secure services.
- How to preserve UX continuity even when bridging in-app tools with external services.
- Design considerations for scalable, user-friendly collaboration tools for creatives.
What's next for Approve Flow
- Integrate actual email delivery via Gmail API and secure OAuth 2.0 consent.
- Add AI drafting through OpenAI or Claude for context-aware, branded communications.
- Support multi-channel approval via Slack, Microsoft Teams, and SMS.
- Release analytics dashboards to provide insight into approval workflows.
- Transition the prototype into a production-ready Express Add-on, with verified domain hosting and email security protocols in place.
- Explore Adobe Firefly integration or LLM-enhanced templates to deepen creative support.


Log in or sign up for Devpost to join the conversation.