This is a submission for the Postmark Challenge: Inbox Innovators.
What I Built
Unfiltered is an anonymous inbox for the internet, where people share their thoughts, secrets, rants, regrets, and reviews, no sign-up required. Just email your thoughts to share@unfiltered.frikishaan.com and it will be published to the wall.
Demo
Live demo is available here - https://unfiltered.frikishaan.com/
Code Repository
Code is available here -
frikishaan
/
unfiltered
Anonymous inbox for the internet 🌐📧
Unfiltered
Unfiltered is an anonymous inbox for the internet, where people share their thoughts, secrets, rants, regrets, and reviews, no sign-up required. Just email your thoughts to share@unfiltered.frikishaan.com and it will be published to the wall.
This app is created for a hackathon on Dev.
Tech Stack
Installation
Follow the below steps to install the app -
Clone repository
git clone https://github.com/frikishaan/unfiltered.git
Install dependencies
composer install
npm install
Migrate database
php artisan migrate
Optionally, you can run the following command to seed the database with test data:
php artisan db:seed
Copy environment variables
cp .env.example .env
For security, I have used Basic Auth with Postmark webhook. Replace the POSTMARK_WEBHOOK_USERNAME
and POSTMARK_WEBHOOK_PASSWORD
with your own values.
Add the webhook in Postmark
Add the webhook in Postmark to send inbound email to https://username:password@<your-domain>/webhooks/inbound
.
Replace the username and password with the values from the .env
…
How I Built It
I leveraged Postmark’s inbound email service to receive and parse incoming emails. My app includes a webhook endpoint that captures the parsed email content as JSON, along with relevant metadata.
To secure this endpoint, I implemented HTTP Basic Authentication, which is fully supported by Postmark, to ensure safe and reliable communication.
I utilized Postmark's SpamAssassin headers X-Spam-Status
and X-Spam-Score
to identify and discard spam emails.
Additionally, I implemented a profanity filter to detect and remove offensive language from incoming messages.
Tech stack
- Postmark for inbound email parsing.
- Laravel (PHP) for backend.
- Inertia.js (Vue) for frontend.
- Tailwind CSS for UI.
Top comments (0)