this repo has no description

Add .editorconfig and update biome

Biome can use .editorconfig, so use consistent settings. Also refactors biome.json to use ubiquitously in the project.

Unfortunately, markdown files - which we can hopefully associate .mdx files with - aren't supported yet. See https://github.com/biomejs/biome/issues/3718.

authored by

Heath Stewart and committed by tangled.org f6d1e094 c04e4383

+101 -83
+14
.editorconfig
··· 1 + root = true 2 + 3 + [*] 4 + indent_style = tab 5 + insert_final_newline = true 6 + trim_trailing_whitespace = true 7 + 8 + [*.html] 9 + indent_size = 2 10 + indent_style = space 11 + 12 + [*.{md,mdx}] 13 + indent_size = 2 14 + indent_style = space
+2 -2
README.md
··· 2 2 3 3 ![cover](https://sequoia.pub/og.png) 4 4 5 - A CLI for publishing [Standard.site](https://standard.site) documents to the [AT Protocol](https://atproto.com). 5 + A CLI for publishing [Standard.site](https://standard.site) documents to the [AT Protocol](https://atproto.com). 6 6 7 7 > [!NOTE] 8 8 > [Visit the docs for more info](https://sequoia.pub) ··· 60 60 bun dev 61 61 ``` 62 62 63 - ## License 63 + ## License 64 64 65 65 MIT 66 66
+38
biome.json
··· 1 + { 2 + "$schema": "https://biomejs.dev/schemas/2.3.13/schema.json", 3 + "root": true, 4 + "vcs": { 5 + "enabled": true, 6 + "clientKind": "git", 7 + "useIgnoreFile": true 8 + }, 9 + "files": { 10 + "includes": ["**"] 11 + }, 12 + "formatter": { 13 + "enabled": true, 14 + "useEditorconfig": true 15 + }, 16 + "linter": { 17 + "enabled": true, 18 + "rules": { 19 + "recommended": true, 20 + "style": { 21 + "noNonNullAssertion": "off" 22 + } 23 + } 24 + }, 25 + "javascript": { 26 + "formatter": { 27 + "quoteStyle": "double" 28 + } 29 + }, 30 + "assist": { 31 + "enabled": true, 32 + "actions": { 33 + "source": { 34 + "organizeImports": "on" 35 + } 36 + } 37 + } 38 + }
+1
bun.lock
··· 22 22 "vocs": "latest", 23 23 }, 24 24 "devDependencies": { 25 + "@biomejs/biome": "^2.3.13", 25 26 "@cloudflare/workers-types": "latest", 26 27 "@types/react": "latest", 27 28 "typescript": "latest",
+1 -2
docs/docs/public/sequoia-comments.js
··· 588 588 this.commentsContainer = container; 589 589 this.state = { type: "loading" }; 590 590 this.abortController = null; 591 - 592 591 } 593 592 594 593 static get observedAttributes() { ··· 701 700 </div> 702 701 `; 703 702 if (this.hide) { 704 - this.commentsContainer.style.display = 'none'; 703 + this.commentsContainer.style.display = "none"; 705 704 } 706 705 break; 707 706
+2
docs/package.json
··· 4 4 "version": "0.0.0", 5 5 "type": "module", 6 6 "scripts": { 7 + "format": "biome format --write", 7 8 "dev": "vocs dev", 8 9 "dev:api": "wrangler dev", 9 10 "build": "vocs build && bun inject-og-tags.ts", ··· 20 21 "vocs": "latest" 21 22 }, 22 23 "devDependencies": { 24 + "@biomejs/biome": "^2.3.13", 23 25 "@cloudflare/workers-types": "latest", 24 26 "@types/react": "latest", 25 27 "typescript": "latest"
+16 -18
docs/sequoia.json
··· 1 1 { 2 - "siteUrl": "https://sequoia.pub", 3 - "contentDir": "docs/pages/blog", 4 - "imagesDir": "docs/public", 5 - "publicDir": "docs/public", 6 - "outputDir": "docs/dist", 7 - "pathPrefix": "/blog", 8 - "publicationUri": "at://did:plc:kq6bvkw4sxof3vdinuitehn5/site.standard.publication/3mdnzt4rqr42v", 9 - "pdsUrl": "https://andromeda.social", 10 - "frontmatter": { 11 - "publishDate": "date" 12 - }, 13 - "ignore": [ 14 - "index.mdx" 15 - ], 16 - "ui": { 17 - "components": "docs/components" 18 - } 19 - } 2 + "siteUrl": "https://sequoia.pub", 3 + "contentDir": "docs/pages/blog", 4 + "imagesDir": "docs/public", 5 + "publicDir": "docs/public", 6 + "outputDir": "docs/dist", 7 + "pathPrefix": "/blog", 8 + "publicationUri": "at://did:plc:kq6bvkw4sxof3vdinuitehn5/site.standard.publication/3mdnzt4rqr42v", 9 + "pdsUrl": "https://andromeda.social", 10 + "frontmatter": { 11 + "publishDate": "date" 12 + }, 13 + "ignore": ["index.mdx"], 14 + "ui": { 15 + "components": "docs/components" 16 + } 17 + }
+2 -8
docs/src/lib/kv-stores.ts
··· 10 10 dpopJwk: Record<string, unknown>; 11 11 }; 12 12 13 - type SerializedSession = Omit< 14 - Parameters<SessionStore["set"]>[1], 15 - "dpopKey" 16 - > & { 13 + type SerializedSession = Omit<Parameters<SessionStore["set"]>[1], "dpopKey"> & { 17 14 dpopJwk: Record<string, unknown>; 18 15 }; 19 16 ··· 27 24 return JoseKey.fromJWK(jwk); 28 25 } 29 26 30 - export function createStateStore( 31 - kv: KVNamespace, 32 - ttl = 600, 33 - ): StateStore { 27 + export function createStateStore(kv: KVNamespace, ttl = 600): StateStore { 34 28 return { 35 29 async set(key, { dpopKey, ...rest }) { 36 30 const data: SerializedStateData = {
+21 -21
docs/tsconfig.json
··· 1 1 { 2 - "compilerOptions": { 3 - "target": "ES2020", 4 - "useDefineForClassFields": true, 5 - "lib": ["ES2020", "DOM", "DOM.Iterable"], 6 - "module": "ESNext", 7 - "skipLibCheck": true, 2 + "compilerOptions": { 3 + "target": "ES2020", 4 + "useDefineForClassFields": true, 5 + "lib": ["ES2020", "DOM", "DOM.Iterable"], 6 + "module": "ESNext", 7 + "skipLibCheck": true, 8 8 9 - /* Bundler mode */ 10 - "moduleResolution": "bundler", 11 - "allowImportingTsExtensions": true, 12 - "resolveJsonModule": true, 13 - "isolatedModules": true, 14 - "noEmit": true, 15 - "jsx": "react-jsx", 9 + /* Bundler mode */ 10 + "moduleResolution": "bundler", 11 + "allowImportingTsExtensions": true, 12 + "resolveJsonModule": true, 13 + "isolatedModules": true, 14 + "noEmit": true, 15 + "jsx": "react-jsx", 16 16 17 - /* Linting */ 18 - "strict": true, 19 - "noUnusedLocals": true, 20 - "noUnusedParameters": true, 21 - "noFallthroughCasesInSwitch": true, 22 - "types": ["@cloudflare/workers-types"] 23 - }, 24 - "include": ["**/*.ts", "**/*.tsx"] 17 + /* Linting */ 18 + "strict": true, 19 + "noUnusedLocals": true, 20 + "noUnusedParameters": true, 21 + "noFallthroughCasesInSwitch": true, 22 + "types": ["@cloudflare/workers-types"] 23 + }, 24 + "include": ["**/*.ts", "**/*.tsx"] 25 25 }
+3 -1
package.json
··· 6 6 "docs" 7 7 ], 8 8 "scripts": { 9 - "dev:cli": "cd packages/cli && bun run dev", 9 + "format:cli": "cd packages/cli && bun run format", 10 + "format:docs": "cd docs && bun run format", 11 + "dev:cli": "cd packages/cli && bun run dev", 10 12 "dev:docs": "cd docs && bun run dev", 11 13 "build:docs": "cd docs && bun run build", 12 14 "build:cli": "cd packages/cli && bun run build",
+1 -31
packages/cli/biome.json
··· 1 1 { 2 2 "$schema": "https://biomejs.dev/schemas/2.3.13/schema.json", 3 - "vcs": { 4 - "enabled": true, 5 - "clientKind": "git", 6 - "useIgnoreFile": true 7 - }, 3 + "extends": ["../../biome.json"], 8 4 "files": { 9 5 "includes": ["**", "!!**/dist"] 10 - }, 11 - "formatter": { 12 - "enabled": true, 13 - "indentStyle": "tab" 14 - }, 15 - "linter": { 16 - "enabled": true, 17 - "rules": { 18 - "recommended": true, 19 - "style": { 20 - "noNonNullAssertion": "off" 21 - } 22 - } 23 - }, 24 - "javascript": { 25 - "formatter": { 26 - "quoteStyle": "double" 27 - } 28 - }, 29 - "assist": { 30 - "enabled": true, 31 - "actions": { 32 - "source": { 33 - "organizeImports": "on" 34 - } 35 - } 36 6 } 37 7 }