docs(docs): restructure documentation paths and add new introduction file

This commit is contained in:
Prad Nukala
2026-08-18 14:33:59 -04:00
parent 995fed2950
commit 9e8117fcf6
19 changed files with 10 additions and 44 deletions
-16
View File
@@ -1,16 +0,0 @@
---
title: Getting Started
description: Welcome to your new Blume docs.
sidebar:
icon: home
---
## Coding Patterns
Welcome to **Blume** — markdown-first docs powered by Astro and Vite.
## System Design
Edit `content/index.mdx` to get started, then run `blume dev`.
## Behavioral
+10
View File
@@ -0,0 +1,10 @@
---
title: Introduction
description: Welcome to your new Blume docs.
---
# Introduction
Welcome to **Blume** — markdown-first docs powered by Astro and Vite.
Edit `docs/index.mdx` to get started, then run `blume dev`.
-28
View File
@@ -1,28 +0,0 @@
export default {
async fetch(request, env) {
const auth = request.headers.get("Authorization") ?? "";
if (auth.startsWith("Basic ")) {
let ok = false;
try {
const decoded = atob(auth.slice(6));
const password = decoded.slice(decoded.indexOf(":") + 1); // password may contain ':'
ok = await passwordMatches(password, env.SITE_PASSWORD);
} catch {}
if (ok) return env.ASSETS.fetch(request);
}
return new Response("Authentication required", {
status: 401,
headers: { "WWW-Authenticate": 'Basic realm="leetcode-docs", charset="UTF-8"' },
});
},
};
// timingSafeEqual needs equal-length buffers → hash both sides first
async function passwordMatches(candidate, expected) {
const enc = new TextEncoder();
const [a, b] = await Promise.all([
crypto.subtle.digest("SHA-256", enc.encode(candidate)),
crypto.subtle.digest("SHA-256", enc.encode(expected)),
]);
return crypto.subtle.timingSafeEqual(a, b);
}