DEV Community

Cover image for Prof. Postmark
goker
goker

Posted on

Prof. Postmark

This is a submission for the Postmark Challenge: Inbox Innovators.

What I Built

Alright, Postmark Challengers & Fellow Devs! 🚀 Get ready to have your mind BLOWN by Prof. Postmark – the AI sidekick that's about to revolutionize how you get photo feedback (and maybe a whole lot more)!

Think of Prof. Postmark as your new remote teacher, or just a way cooler AI. This bad boy doesn't just glance at photos you email in; it gets them. We're talking an AI that dives deep, powered by OpenAI's GPT-4o Vision and a custom-built annotation engine that doodles feedback right onto your images, sketch-style, like your chillest art prof.

The mission? To ditch boring old grading and bring in something interactive, insightful, and honestly, a LOT more fun. You just email your pics, and Prof. P zaps back pro-level scores, those cool sketch-style critiques, and feedback that actually helps you level up your game. It’s all built on a speedy FastAPI backend, jamming with Postmark for a super slick email-to-AI-to-email workflow.

Demo

Peep the magic in action! Check out the demo video right here:https://youtu.be/6XGwPXZDYsY
(Psst, bro! You'll probably wanna add some killer screenshots of Prof. Postmark doing its thing right here too!)

Testing Instructions:
To see Prof. Postmark strut its stuff, you'd typically:

  1. Configure your Postmark inbound email address to hit the /webhook endpoint of a running Prof. Postmark instance.
  2. Send an email to that address with a JPEG or PNG photo attached.
  3. Sit back and wait for Prof. P to work its AI magic and email you back with the scored and annotated image! (No public test credentials for this one, as it's all about that email loop with your own setup!)

Code Repository

Wanna dive into the code and see how the sausage is made? Go for it, my friend! The whole shebang is up on GitHub:https://github.com/gokerDEV/prof-postmark

How I Built It

Alright, so here's the lowdown on how Prof. Postmark came to be. From the moment I decided to jump into this Postmark Challenge to right now, it's been a wild ride of about 36 hours, give or take. 🌪️
My first thought was actually something way more gnarly – I was gonna try and use BERT for some fancy classification stuff to trigger API calls. But, you know how it is, sometimes you gotta pivot, bro. I switched gears to this project, which, while maybe a bit more straightforward on the surface (less wrestling with super complex NLP models, at least), still took a good chunk of time and brainpower to bring to life. This version is more focused on a clean API integration with OpenAI for the vision smarts and Postmark for making that email magic happen.

The Tech Stack Stack-up:

  • Backend Brains: FastAPI (because speed is the name of the game, and async is just how we roll)
  • AI Visionary: OpenAI GPT-4o Vision (this thing sees your photos, for real)
  • Image Doodler: Pillow (for all that sweet, sweet image manipulation and annotation)
  • Email MVP: Postmark (handling those inbound webhooks and outbound feedback emails like a champ – super smooth to work with for this email-centric flow!)
  • Python: The glue holding it all together.
  • And a whole lotta coffee, probably. ☕

The whole process was a blast, even with the occasional "why isn't this working?!" moments. It's always cool to see an idea go from "huh, what if?" to a fully functioning thing.
Honestly, I just hope Prof. Postmark either helps someone out, inspires another cool project, or at the very least, makes someone go, "Whoa, that's pretty neat!" That'd be a win in my book.

Top comments (3)

Collapse
 
dotallio profile image
Dotallio

Really love how you turned grading into something playful and interactive with the live image doodles - feels like it could work way beyond just photos. Have you thought about adapting this for other kinds of visual feedback or creative projects?

Collapse
 
gokerdev profile image
goker

yep, we can actually adapt this to many analytics and feedback tools.
I love the human-like annotated comments for feedback. It helps a lot to understand the missing points. If you want another specific example, we can draw natal charts for users (pypi.org/project/natal/) and annotate them like remote wtich/warlock :)

Collapse
 
gokerdev profile image
goker

By the way, you can try the annotation system via Goker-ish chatgpt.com/g/g-6812b37f51888191a0...