Skip to content

codemode-studio/openmd

Repository files navigation

OpenMD

OpenMD is a simple, shareable markdown workspace inspired by HackMD.

Stack

  • Next.js 16 (App Router, TypeScript)
  • Bun for package management and scripts
  • Convex for storage + realtime comments
  • Convex Auth (GitHub only, optional login)
  • coss UI components (@coss/ui + @coss/colors-neutral)
  • react-markdown + remark-gfm + rehype-sanitize
  • Mermaid diagram rendering in fenced code blocks
  • Theme support: light / dark / system

Features

  • Paste markdown and live preview it full width
  • Generate unlisted share links
  • Separate edit token links for safe editing
  • Optional GitHub sign-in (anonymous usage still works)
  • Anchored comment bubbles for headings and blocks
  • Plain-text comment threads with resolve/reopen

Run locally

bun install
bunx convex dev
bun dev

Open http://localhost:3000.

Convex setup notes

Convex has already been initialized for this repo (convex/ folder exists).

If you need to reconfigure:

bunx convex dev --configure existing --project openmd --dev-deployment cloud

Optional GitHub Auth setup

  1. Create a GitHub OAuth app.
  2. Use your Convex HTTP Actions URL callback:
    • https://<your-deployment>.convex.site/api/auth/callback/github
  3. Set Convex environment variables:
bunx convex env set AUTH_GITHUB_ID <client-id>
bunx convex env set AUTH_GITHUB_SECRET <client-secret>
bunx convex env set SITE_URL http://localhost:3000

Without these, OpenMD still works anonymously.

Useful commands

bun run lint
bun run lint:fix
bun run format
bun run format:check
bun run build

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors