June 18, 2025
Added proper sanitization to all inputs from client to API backend with proper schema check too.
Added proper subscription handling with multiple payment gateways based on user's country. WhatsYour.Info is ready to handle all of DIT's platforms plans and billings.
Combined WYI (stands for WhatsYour.Info) with DITBlogs for payments and billing managements on behalf of DITBlogs.
Added support for webhooks with the current OAuth setup for instant data updates to your apps.
Added proper categories and tags managment through dashboard.
Added proper inputs for both categories selection and tags addition to blog posts.
Added proper support for newsletters with cron job for auto sending of emails, without being spammy.
✅ What I Built
Today, I shipped the first working version of DITBlogs, a multi-tenant, API-first blogging platform designed for businesses and content teams.
Here's what was implemented:
🔧 Core Architecture
Multi-tenant org model (org-based user scoping, content isolation)
Robust authentication system (JWT + RBAC roles: Admin, Editor, Writer)
RESTful API routes for posts, users, orgs (scoped and secure)
Seamless onboarding: state-aware signup flow based on invite status, roles
🧑💼 Organization Management
Admin-only email invitation system (Nodemailer integration)
Role-based permissions on UI + API
Org creation and switching with scoped sessions
✍️ Blog Editor
Integrated Tiptap editor with support for:
Headings, bullet lists, images, code blocks, etc.
Auto-save draft support (local/session for now)
Clean, distraction-free writing interface
📈 Analytics Dashboard
Initial version with Chart.js showing:
Post views
Top-performing posts
Author-wise contribution
💡 Why It Matters
Setting up a blog for your startup shouldn’t take 5 hours of fiddling with WordPress or headless CMS setup.
DITBlogs removes the friction and gives startups a clean, scalable, dev-friendly way to add a blog — with proper collaboration and analytics built in.
I wanted to build something that:
Doesn’t assume you want a full website — just the blog.
Doesn’t lock you into one frontend or stack.
Doesn’t require a CMS admin panel to be useful.
Just plug in the API, drop in the UI components (or build your own), and you’re ready to blog.
🛠️ Stack Used
Backend: Node.js, Express, Prisma, PostgreSQL
Auth: JWT, RBAC, hashed invites
Frontend: Next.js (App Router), Tiptap, TailwindCSS
Analytics: Chart.js (frontend), custom API (backend)
Infra: Railway (temp), will move to dedicated VPS
Dev Tools: Hackatime, Postman, GitHub
📅 Next Up
🌐 Public Org Blog API (for client consumption)
🖼️ OG Image generation per post (auto + custom)
💬 Comments support (starting with static, maybe dynamic later)
🔄 Scheduled publishing & post version history
✨ Onboarding animation & skeleton states
🧠 Key Learnings
Building a clean multi-tenant system early saves a ton of headache later.
Email invites + org scoping sounds simple… until you start layering RBAC and API permissions.
Tiptap is amazing, but has a steep learning curve with custom extensions — totally worth it though.
Tired of spinning up a whole new WordPress site or struggling with a clunky CMS just to add a blog to your company's website? DITBlogs is the solution. DITBlogs is an API-first, multi-tenant blogging platform that provides the backend, a powerful editor, and the infrastructure you need. You simply connect it to your website via its API to create a seamless, beautifully integrated blog that matches your brand. It's built for teams, designed for performance, and focused on one thing: making your organization's content management a joy. 🎯 Who is it For? DITBlogs is built for a modern workflow and is perfect for: 🏢 Businesses & Startups who want to add a content marketing channel to their existing website without a complex technical overhaul. ✍️ Content Teams that need a collaborative environment with different roles (Admins, Editors, Writers) to manage their content pipeline. 🏗️ Developers looking for a flexible, headless CMS that provides a clean API, robust authentication, and a solid foundation to build upon. 🌟 Key Features DITBlogs is packed with features designed for a professional content workflow: 🌐 Headless Architecture: Use the secure API to fetch and display your posts on any frontend framework (Next.js, React, Vue, Svelte, etc.). 🏢 Multi-Tenant Organizations: Each organization gets its own secure workspace. Users, posts, and analytics are all scoped to the organization. 🔐 Role-Based Access Control (RBAC): Org Admin: Manages members, settings, and has full content control. Editor/Writer: Can create, edit, and publish any post within the organization. ✨ Modern Block-Based Editor: A beautiful and intuitive writing experience powered by Tiptap, with support for rich text, images, code blocks, and more. 📧 Email Invitation System: Admins can easily invite new members to their organization via email, powered by Nodemailer. 📊 Scoped Analytics Dashboard: A beautiful, interactive dashboard (using Chart.js) that provides admins with key insights into their organization's content performance, including views, top posts, and top authors. 👋 Seamless User Onboarding: A multi-step, state-aware onboarding flow that intelligently guides new users based on their role, pending invitations, or application status. 🔒 Secure by Design: All API endpoints are protected and context-aware, ensuring a user from one organization can never access the data of another.
Added proper contact us page with its api endpoint to save the message and email our support team immediately
Added proper schema markup for dynamic user's data from MonogDB/Redis.
Added proper caching for user's profiles, smart redirects and their avatars for faster experience. Also added official, business, and personal categories with profile vissiblity option for more user privacy. Improved the badges according to the profile type and plan.
Improved the overall process of OAuth with better and faster flow.
Fixed many OAuth issues with proper scope handling.
Added proper 2FA system with robustness.
Deployed the full robust webapp on Vercel with all required MongoDB, Redis and other connections.
Made changes to the whole project to make it ready for production.
Up Next:
- Fixing the payment issues
- Fixing email sending issues
Added proper UI for handling gallery images with custom gallery modal too.
Added support for developers to use our OAuth 2.0 with our generated client id and secret with very robust design.
Added proper validation for username, which will be checked before assigning for already existance of that username or its a reserved page on our website
Added a feature to upload custom header and background image for both free(limited to just headers image) and pro users.
Added option for creating and downloading business card based on whatsyour.info's profile with premium features.
Added proper header image + BG image support for pro users.
Improved the UI for the profile of user at: username.whatsyour.info or whatsyour.info/username
Improved the UI by a lot and added more features on the profile of user. Also added advanced customization for pro users.
Added proper SDKs in four most popular languages i.e. JS, Python, GO, and PHP. and added proper avatars uploading and fetching using our public API.
Added all the basic files and structure for starting this platform.
WhatsYour.Info is a free and open digital identity platform where users can create a personalized public profile — accessible via both a unique subdomain (yourname.whatsyour.info) and path (whatsyour.info/yourname). Inspired by platforms like Gravatar and About.me, it goes further by combining: 🔐 In-house authentication system with SSO capabilities for use across other DishIs products like DITMail and FreeCustom.Email 🔧 Developer-friendly APIs for integrating login/auth features into 3rd-party platforms 🧠 AI-powered profile generator (using Google Gemini 1.5 Flash) for bios, tags, and link summaries 🎯 Professional landing pages with options to capture leads, book appointments, embed galleries, and remove branding for Pro users 🛡️ Privacy-first and cost-free core service — no ads, no trackers, no reselling of data It’s more than a profile page — it's a decentralized identity system for developers, creators, and everyday users alike. 🚀 Tech Stack: Frontend: Next.js 15 (App Router), TailwindCSS Backend: MongoDB, Redis, custom REST API with secure authentication AI Integration: Google Gemini 1.5 Flash API Deployment: Vercel or self-hosted VM with wildcard DNS for subdomain support
Storage: GridFS (for attachments)
Added proper storage calcualtion and limiting it according to the organization's plans whenever a new email reaches thier inbox. Also added proper threaded email handling with better UI.
Added draft features, which will be able to save, retrive, show, and use the drafts again very efficiently.
Added the ping icon for indicating unread emails
Devlog Textwhile the sidebar is collapsed.
Edit various options for bulk edits and improved the overall UI of MessageList component.
Created the whole navigation system from mini composer to main composer to reply composer.
Next: sending data through navigation for instant UI
Improved this mini composer with autocompletion of contacts and with proper navigation to main composer.
🛠️ Devlog: Smarter Inline Composer + Better Draft UX
We're continuing to refine the DITMail experience, and this update focuses heavily on productivity and user comfort while composing, replying, or forwarding emails.
✨ What’s New:
✅ Redesigned Inline Composer
Replying and forwarding now happen seamlessly within the conversation thread. No pop-ups, no redirects—just a clean, focused inline editor that keeps you in context.
🖥️ Maximized Composer Mode
Need more room? The composer now supports a maximized view, giving you full control over long-form emails, formatting, and attachments — without losing sight of your workflow.
💾 Improved Draft Saving
All replies and forwards now auto-save in real-time — even inline. Accidentally close the tab? No worries. Your draft will be right where you left it.
🎯 UX Enhancements
Clear visual indicators for reply vs. forward
Smooth transitions between inline and fullscreen modes
Better keyboard accessibility and focus management
DITMail is shaping up to be a truly user-first email platform, and we’re just getting started.
Up next: Undo Send + Smart Signatures 🚀
🛠️ Devlog Update: Inline Replies + Bigger Composer!
We’ve just pushed a fresh UI/UX upgrade to DITMail! Here's what's new:
✍️ Inline Email Replies
Now you can reply to emails directly inline within the thread — no more jumping between pages. It feels natural, keeps the context visible, and improves the overall flow of conversations.
🧾 Bigger, Better Composer
Say goodbye to cramped spaces! The new resizable and expanded email composer gives you more room to write with clarity. Rich formatting, attachment previews, and keyboard shortcuts all in one seamless editor.
⚡ Performance Tweaks
Faster rendering of threaded emails
Optimized message draft saving
Composer loads 2× faster with lazy init
We're getting closer to a polished, production-ready release. Feedback is always welcome!
Next up: Draft autosave + undo send 👀
🛠️ Devlog – System Status Component Added
We’ve just added a new System Status component to our temp mail dashboard! It now shows real-time operational stats like:
📥 Queued Emails: 82,057 and counting...
⛔ Denied Emails: 59,593 and counting...
This makes it easier to monitor backend performance and spot any delivery issues.
Stay tuned — next up, live graphs and uptime history 👀
Today I focused on refining the backend and improving the inbox rendering speed. Optimized the Haraka SMTP plugin queue to reduce message delivery latency and added Redis Pub/Sub-based live updates for real-time message visibility in the UI. Also cleaned up the frontend codebase and modularized the domain selector and inbox list components in Next.js for easier future scaling.
📦 Improvements:
Redis-based real-time inbox updates
Custom Haraka queue plugin patched for async delivery
Frontend refactor: modular inbox + domain selector
UI cleanup + Tailwind consistency
Added support for multiple active domains in the backend
🧠 Stack:
Next.js + Tailwind CSS
Redis + MongoDB (GridFS)
Node.js (Express) API
Haraka SMTP
📨 FreeCustom.Email – Disposable Email That Respects You A fully open, dev-first temporary email service focused on simplicity, speed, and self-hostability. 🧰 Tech Stack Frontend: Next.js + Tailwind CSS + TypeScript Backend: Node.js, Express, MongoDB, Redis SMTP Server: Haraka with custom plugins Real-time updates: Redis Pub/Sub Storage: GridFS (for attachments) Deploy: Cloudflare (Edge functions), Vercel, AWS (SMTP) ⚙️ Core Features 📝 Custom inbox names — not random strings 🌐 Multiple domains for email aliasing 🗂️ Live inbox (no refresh) using WebSockets/Redis 📦 Open-source frontend on GitHub (plug-and-play) 🔐 No user tracking, no cookies, no ads 🔌 Public API (RapidAPI) for developers ✉️ SMTP + IMAP stack in progress 🔧 Built-in admin tools for domain & message management 🧪 Built for extensibility (own domain, white-label, more) 🔓 Open Source & Self-Host Ready The frontend is MIT licensed and designed for self-hosting. You can fork and deploy your own version using your own domains and storage backend. SMTP queueing is done via Redis, and Haraka handles all SMTP processing with plugin hooks for delivery, spam handling, and DKIM. 🧑💻 Built for: Hackers needing burner emails for testing Devs building SaaS sign-up flows Privacy-first users avoiding spam Teams running self-hosted temp mail under their own domain
Improving webmail UI with better search filters and looks.
Replaced direct usage of Nodemailer with a scalable worker-based system for sending emails, ensuring high throughput and reliability. Instead of sending emails directly from the application thread, I implemented a job queue using Redis and BullMQ, where email sending tasks are offloaded to background workers. This architecture decouples the mail delivery process from the main application logic, enabling efficient handling of high-volume outbound mail traffic without blocking user interactions.
Each worker processes jobs asynchronously, performing tasks like SMTP authentication, DKIM signing, logging delivery status, and retrying failed deliveries based on custom logic—replicating patterns used by production-grade email infrastructures.
In parallel, I set up a dedicated WebSocket server built on Express and ws, separate from the main web application. This server handles real-time events such as incoming emails, read receipts, new folder/tag creation, and user status updates. It maintains persistent WebSocket connections for all logged-in users, and uses Redis Pub/Sub to broadcast updates from the backend in real-time.
This separation of concerns (API server, email workers, and WebSocket server) improves system reliability, scalability, and responsiveness—making it suitable for enterprise-level email platforms like Zoho Mail or ProtonMail.
Significantly improved the Webmail UI by redesigning it for performance, responsiveness, and usability. The updated interface delivers a clean and modern user experience with features like real-time inbox updates, instant tag/folder creation, intuitive message threading, and efficient search/filter options.
Optimized the frontend with lazy loading, virtualized message lists, and minimal network requests to ensure smooth performance even with large mailboxes. Leveraged modern frontend technologies (e.g., React with Tailwind or similar frameworks) to maintain consistency across devices and screen sizes.
On the backend, implemented Redis caching and asynchronous job queues to drastically reduce the time taken for fetching, sending, and organizing emails. These changes allowed near-instant email actions such as sending, labeling, and moving between folders.
Overall, the improvements target enterprise-level performance, aiming to match the speed and experience of leading platforms like Zoho Mail and Google Workspace—both in UI fluidity and backend email operations.
Resolved critical issues in SMTP and MX servers, ensuring stable relaying and receiving of emails from various sources. Integrated a fast, fully functional Webmail UI. Implemented proper validation for DKIM, SPF, DMARC, rDNS, and MX records, along with spam filtering and virus scanning to enhance email security and deliverability.
Implemented Redis caching to significantly boost the performance of email fetch/send operations and enable instant tag or folder creation. Aimed to match the responsiveness of large-scale email infrastructures like Zoho and Google Workspace.
Implemented enterprise-grade domain validation with integrated user management.
Made it easier to test this app
Currently developing the frontend + API for the DITMail email infrastructure.
Wrapping up the SMTP Server setup and config files.
Separated the MX and SMTP for a more professional experience.
Implementing email relaying with Haraka.
Refining the SMTP server with more Haraka plugins.
Developing an SMTP server for DITMail.
DITMail is a next-generation mail server platform built for modern developers, startups, and enterprises who need full control over sending and receiving email—whether for personal inboxes, businesses, or temporary email use cases. Powered by Haraka, enhanced with DKIM/TLS security, and designed for Dockerized scalability, DITMail offers a flexible email ecosystem that supports: 🌐 Custom domain hosting 🔐 End-to-end authenticated SMTP 📥 Catch-all or per-user inbox routing 🧩 Modular plugin system for anti-spam, DKIM, queueing, and user validation ⚙️ Built-in DKIM key generator and TLS provisioning 🚀 Webmail-ready architecture with IMAP extensibility (via Dovecot) 🧪 Developer-friendly APIs and logs for integration and testing DITMail supports both temporary email applications (like public inboxes or disposable addresses) and professional-grade email services (with authentication, Maildir inboxing, and domain-based identity). Whether you're building: A temp mail site like freecustom.email A Zoho Mail-like pro SaaS for clients with custom domains Or your own personal mail server with full transparency and control …DITMail is your all-in-one, open, and modular email infrastructure toolkit.
Just added a new feature to save the history of your analysis on the client only.
Adding AI functionality to get a detailed explanation of a question.
I believe this is the only CUET 2025 response marksheet analyzer available.
🔍 Overview ExamAnalyzer is a comprehensive response sheet analysis tool designed for competitive exam aspirants in India, including those preparing for exams such as CUET, JEE, and NEET. With just a response sheet link from Digialm, students can instantly: - View their total score. - Analyze question-level accuracy - Identify the correct/incorrect responses with AI explaination - Track performance metrics like attempts, skips, and accuracy - Whether you're preparing for college entrance exams or reviewing performance post-exam, ExamAnalyzer delivers instant, clear insights — no more manual checking or Excel sheets! 💻 Desktop Experience - A modern UI with a smooth form for uploading response sheets and viewing performance breakdown - Users get a detailed table of all questions, correct vs. incorrect answers, and a marks breakdown - Summary stats like accuracy, completion, and total scores are calculated instantly. 📱 Mobile Optimized - Mobile users can easily access the full feature set - Designed responsively with dropdowns and stacked UI elements - Perfect for students reviewing their scores on the go after exams 🛠️ Tech Stack - Frontend: NextJs + TailwindCSS - Backend: Node.js for data extraction - Database: Prisma ORM with MySQL - Deployment: Netlify 🔥 Why It's Cool - Real-world use case for lakhs of students across India - Saves hours of manual effort - Accurate and fast — results in seconds - Clean design + great UX 🧠 Future Improvements - Auto-detect the exam and subject from the uploaded file - Add support for more exam formats. - User accounts to track progress over time
This was widely regarded as a great move by everyone.