Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/subratomandal/dyeink/llms.txt

Use this file to discover all available pages before exploring further.

What is Dyeink?

Dyeink is a modern SaaS blogging platform designed for creators who want to focus on writing without the complexity of traditional content management systems. Built with performance and user experience at its core, Dyeink provides everything you need to create, publish, and manage your blog.

Lightning fast

Built on React and Vite for instant page loads and smooth interactions

Minimalistic editor

A distraction-free writing experience that gets out of your way

Custom domains

Connect your own domain or use a Dyeink subdomain

Secure by default

Enterprise-grade authentication powered by Auth0

Key features

Writing experience

Dyeink’s editor is designed to be invisible. No complex formatting menus, no distractions - just you and your words. The toolbar provides essential formatting options when you need them:
  • Rich text formatting (bold, italic, underline)
  • Lists (ordered and unordered)
  • Blockquotes and links
  • Image uploads with automatic compression
  • Text alignment controls
All images are automatically compressed and optimized before upload to ensure fast page loads for your readers.

Design

Every aspect of Dyeink is carefully crafted with attention to detail:
  • Dark mode support - Seamless switching between light and dark themes
  • Responsive layout - Beautiful on every device, from mobile to desktop
  • Clean typography - Optimized for readability
  • Smooth animations - Delightful micro-interactions throughout

Publication management

1

Configure your publication

Set your publication name, description, and social links
2

Choose your identity

Use a Dyeink subdomain (e.g., yourname.dyeink.com) or connect your custom domain
3

Start writing

Create posts, save drafts, and publish when ready
4

Track performance

Monitor views, engagement, and subscriber growth

Architecture overview

Dyeink is built on a modern, scalable architecture:

Frontend

  • Framework: React 18 with Vite for lightning-fast builds
  • Language: TypeScript for type safety
  • Styling: Tailwind CSS for responsive design
  • State: Zustand for lightweight global state management
  • Routing: React Router for client-side navigation
  • Auth: Auth0 SPA SDK with local storage persistence

Backend

  • API: Fastify - one of the fastest Node.js web frameworks
  • Database: MongoDB with Mongoose ODM
  • Authentication: Auth0 with JWT verification
  • Storage: Cloudflare R2 for image hosting
  • Deployment: Cloudflare Workers for edge computing
Dyeink can be deployed to Cloudflare Workers for global edge performance, or to traditional Node.js hosting platforms like Railway or Render.

Data flow

  1. Authentication: Users authenticate via Auth0, receiving a JWT token
  2. API requests: Frontend makes authenticated requests to the Fastify backend
  3. Data storage: Posts and settings are stored in MongoDB
  4. Media uploads: Images are uploaded to Cloudflare R2 storage
  5. Domain routing: Custom domains are managed via Vercel DNS

Security

Dyeink implements multiple layers of security:
  • Auth0 authentication - Industry-standard OAuth 2.0 and OpenID Connect
  • JWT verification - All API requests are verified using JWKS
  • Secure token storage - Tokens stored in browser’s local storage with refresh token rotation
  • Content sanitization - User-generated content is sanitized using DOMPurify
  • HTTPS everywhere - All traffic encrypted in transit
Never commit environment files (.env) to version control. These contain sensitive API keys and secrets.

Performance

Speed is a core principle of Dyeink:
  • Sub-second page loads - Vite’s optimized bundling and code splitting
  • Lazy loading - Components and images load on demand
  • Image optimization - Automatic compression before upload
  • Edge deployment - Optional Cloudflare Workers deployment for global performance
  • Efficient state - Zustand provides minimal re-renders

Next steps

Quickstart

Get started with Dyeink in minutes

Migration guide

Migrate from Supabase to the current stack