A web-based, shareable, self-hosted Markdown editor built with deno

jerryliao 29a1f8b4d1 Create new post from local file by OpenCode vor 2 Monaten
.githooks a651c8ddcd Optimize pre-commit by OpenCode vor 2 Monaten
.vscode 92e36d18ad Bump dependency versions & add CICD support vor 2 Jahren
assets 4e6d300a55 Add dark theme and tests by Claude Code & Formatting code vor 2 Monaten
components 29a1f8b4d1 Create new post from local file by OpenCode vor 2 Monaten
islands 29a1f8b4d1 Create new post from local file by OpenCode vor 2 Monaten
routes 91aa818e27 Optimizations for icons, buttons and the PostList by OpenCode vor 2 Monaten
static 901516f778 Wrap code lines in rendered Editor content vor 2 Monaten
tests 29a1f8b4d1 Create new post from local file by OpenCode vor 2 Monaten
utils 460a34e004 Add password protection for shared posts vor 2 Monaten
.dockerignore 615c769e74 Add api and util tests by OpenCode vor 2 Monaten
.drone.yml 92e36d18ad Bump dependency versions & add CICD support vor 2 Jahren
.gitignore 9b9f7f20f8 Remove Vite cache folder vor 2 Monaten
Dockerfile 58755619ad Update doc & Dockerfile vor 3 Monaten
LICENSE 79f751ee49 Initial commit vor 2 Jahren
README.md a651c8ddcd Optimize pre-commit by OpenCode vor 2 Monaten
client.ts 74efd0d06c Finish Fresh 2.x upgrade vor 3 Monaten
deno.json 073cc2f46f Add download post feature and tests by OpenCode vor 2 Monaten
deno.lock 073cc2f46f Add download post feature and tests by OpenCode vor 2 Monaten
main.ts 74efd0d06c Finish Fresh 2.x upgrade vor 3 Monaten
tailwind.config.ts 462a5be3cc Switch to tailwind styles by OpenCode vor 2 Monaten
vite.config.ts 462a5be3cc Switch to tailwind styles by OpenCode vor 2 Monaten

README.md

postdown

the postdown logo designed by Chris Peng

Build Status

A web-based, shareable, self-hosted Markdown editor built with deno

Demo

Visit https://post.jerryliao.cn

Deployment

You can deploy the project with docker by using Dockerfile in this repo to build a docker image or use Deno Deploy officially recommended in this doc

Development

Install deno runtime according to this doc, then run the setup task to install dependencies and enable git hooks:

deno task setup

Start the dev server and visit localhost:8000:

deno task dev

Available tasks

  • deno task dev - Start the development server
  • deno task test - Run all tests (backend + UI)
  • deno task check - Check formatting, linting, and types
  • deno task setup - Install dependencies and configure git hooks

Git hooks

A pre-commit hook is configured via .githooks/ to automatically format staged files and run tests before each commit. If auto-formatting fails, the commit is aborted. The deno task setup command enables this by setting core.hooksPath to .githooks/.