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.

Welcome to Dyeink

This guide will walk you through setting up your blog and publishing your first post. You’ll be up and running in less than 10 minutes.

Prerequisites

Before you begin, make sure you have:
  • A valid email address for account registration
  • Auth0 authentication configured (for self-hosted deployments)
  • MongoDB database connection (for self-hosted deployments)
If you’re using the hosted version of Dyeink, authentication and database are already configured for you.

Getting started

1

Create your account

Sign up for Dyeink using your email address or social login (GitHub, Google).When you first sign in, Dyeink automatically creates your account profile and initializes your blog settings.
// Authentication flow using Auth0
const auth0 = await createAuth0Client({
  domain: import.meta.env.VITE_AUTH0_DOMAIN,
  clientId: import.meta.env.VITE_AUTH0_CLIENT_ID,
  authorizationParams: {
    redirect_uri: window.location.origin,
    audience: import.meta.env.VITE_AUTH0_AUDIENCE,
  },
});

await auth0.loginWithRedirect();
Your account is secured with Auth0, providing enterprise-grade authentication with support for social logins, multi-factor authentication, and more.
2

Configure your blog

After signing in, navigate to Settings to configure your blog:
  • Site name: Choose a name for your blog
  • Description: Add a brief description (used for SEO)
  • Subdomain: Pick a unique subdomain (e.g., yourblog.dyeink.com)
  • Social links: Add your Twitter, GitHub, LinkedIn, etc.
// Initialize site settings
await settingsService.initialize({
  siteName: 'My Blog',
  siteDescription: 'Thoughts on tech and design',
  subdomain: 'myblog'
});
Subdomain names are unique and cannot be changed once set. Choose carefully!
3

Create your first post

You’re ready to write! Click New Post from your dashboard.

Writing your post

  1. Add a title - Make it compelling and descriptive
  2. Write your content - Use the rich text editor to format your post
  3. Add a cover image - Upload an eye-catching featured image
  4. Set an excerpt - A brief summary for previews
  5. Choose a slug - URL-friendly identifier (auto-generated from title)

Publishing

  • Save as draft - Keep working on it later
  • Publish - Make it live for the world to see
// Create a new post
const post = await postService.create({
  title: 'My First Post',
  slug: 'my-first-post',
  content: '<p>Hello, world!</p>',
  excerpt: 'My very first blog post on Dyeink',
  coverImage: 'https://...',
  published: true
});
Published posts are immediately visible at yourblog.dyeink.com/posts/your-post-slug
4

View your blog

Your blog is now live! Visit your subdomain to see your published posts.
  • Your blog homepage: https://yourblog.dyeink.com
  • Individual posts: https://yourblog.dyeink.com/posts/your-post-slug
Share your blog URL on social media to start building your audience!

What’s next?

Now that you’ve published your first post, explore more features:

Connect a custom domain

Use your own domain name instead of a subdomain

Track your analytics

See how many people are reading your posts

Build your audience

Collect email subscribers for your newsletter

Customize your blog

Learn about all editor features and customization options

Common questions

Currently, Dyeink doesn’t have a built-in import tool. However, you can use the API to programmatically create posts. See the API Reference for details.
Simply click the image icon in the editor toolbar and upload your image. Images are automatically compressed and stored in Cloudflare R2 for fast delivery.
Post scheduling is not currently available, but it’s on our roadmap. For now, save posts as drafts and publish them manually when ready.
Dyeink is fully responsive and works great in mobile browsers. A dedicated mobile app is planned for future releases.

Need help?

If you run into any issues or have questions:

Configuration guides

Set up Auth0, MongoDB, storage, and deployment options