From b8156f6e7083f408c09e80013ae0f21cd381b76f Mon Sep 17 00:00:00 2001 From: Tony Bark Date: Sun, 8 Dec 2024 15:17:07 -0500 Subject: [PATCH] Minor tweaks - Renamed blog - Disallowed more bots - Updated gitignore - Revised README to make it clear that this is a WhiteWind blog, powered by WhiteBreeze --- .gitignore | 191 +++++++++++++++++++++++++++--- README.md | 32 ++--- bun.lockb | Bin 0 -> 171224 bytes src/lib/Profile.svelte | 41 ++++--- src/routes/+layout.svelte | 25 ++-- src/routes/+page.svelte | 33 ++++-- src/routes/[rkey]/+page.server.ts | 10 +- src/routes/[rkey]/+page.svelte | 11 +- src/routes/about/+page.svelte | 21 ++-- static/robots.txt | 4 + 10 files changed, 282 insertions(+), 86 deletions(-) create mode 100755 bun.lockb diff --git a/.gitignore b/.gitignore index 79518f7..76e8001 100644 --- a/.gitignore +++ b/.gitignore @@ -1,21 +1,176 @@ -node_modules +# File created using '.gitignore Generator' for Visual Studio Code: https://bit.ly/vscode-gig +# Created by https://www.toptal.com/developers/gitignore/api/dotenv,node,svelte,visualstudiocode +# Edit at https://www.toptal.com/developers/gitignore?templates=dotenv,node,svelte,visualstudiocode -# Output -.output -.vercel -/.svelte-kit -/build - -# OS -.DS_Store -Thumbs.db - -# Env +### dotenv ### .env -.env.* -!.env.example -!.env.test -# Vite -vite.config.js.timestamp-* -vite.config.ts.timestamp-* +### Node ### +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +.pnpm-debug.log* + +# Diagnostic reports (https://nodejs.org/api/report.html) +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage +*.lcov + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# Snowpack dependency directory (https://snowpack.dev/) +web_modules/ + +# TypeScript cache +*.tsbuildinfo + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional stylelint cache +.stylelintcache + +# Microbundle cache +.rpt2_cache/ +.rts2_cache_cjs/ +.rts2_cache_es/ +.rts2_cache_umd/ + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variable files +.env.development.local +.env.test.local +.env.production.local +.env.local + +# parcel-bundler cache (https://parceljs.org/) +.cache +.parcel-cache + +# Next.js build output +.next +out + +# Nuxt.js build / generate output +.nuxt +dist + +# Gatsby files +.cache/ +# Comment in the public line in if your project uses Gatsby and not Next.js +# https://nextjs.org/blog/next-9-1#public-directory-support +# public + +# vuepress build output +.vuepress/dist + +# vuepress v2.x temp and cache directory +.temp + +# Docusaurus cache and generated files +.docusaurus + +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# TernJS port file +.tern-port + +# Stores VSCode versions used for testing VSCode extensions +.vscode-test + +# yarn v2 +.yarn/cache +.yarn/unplugged +.yarn/build-state.yml +.yarn/install-state.gz +.pnp.* + +### Node Patch ### +# Serverless Webpack directories +.webpack/ + +# Optional stylelint cache + +# SvelteKit build / generate output +.svelte-kit + +### Svelte ### +# gitignore template for the SvelteKit, frontend web component framework +# website: https://kit.svelte.dev/ + +.svelte-kit/ +package + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history +.ionide + +# End of https://www.toptal.com/developers/gitignore/api/dotenv,node,svelte,visualstudiocode + +# Custom rules (everything added below won't be overriden by 'Generate .gitignore File' if you use 'Update' option) + diff --git a/README.md b/README.md index 127f995..c362015 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,21 @@ -# WhiteBreeze -A small frontend for [WhiteWind](https://whtwnd.com/), a MarkDown blog service using [ATProto](https://atproto.com/). -WhiteBreeze targets a single user and is meant for someone to self-host their WhiteWind blog posts, without having to direct users to the WhiteWind website. +# TonyBark.com + +A small, self-hosted [WhiteWind](https://whtwnd.com/) blog, powered by [WhiteBreeze](https://github.com/hugeblank/whitebreeze). ## Usage +*[Bun](https://bun.sh/) recommended.* + +### Environment variables + +Whether in development or production, you will need to change environment variables when working with WhiteBreeze. + +```sh +PUBLIC_HANDLE="myhandle.bsky.social" # Your handle, or DID +PUBLIC_ABOUT="Welcome to my blog!" # Optional description of the kinds of posts you'll be making, or a greeting. +# PUBLIC_ABOUT Shows up under your Bluesky profile description in the profile card. +``` + ### Development ```sh @@ -11,16 +23,7 @@ npm install npm run dev ``` -### Production - -Change environment variables: -```sh -PUBLIC_HANDLE="myhandle.bsky.social" # Your handle, or DID -PUBLIC_ABOUT="Welcome to my blog!" # Optional description of the kinds of posts you'll be making, or a greeting. -# PUBLIC_ABOUT Shows up under your Bluesky profile description in the profile card. -``` - -#### Standalone +### Standalone ``` npm install @@ -29,7 +32,8 @@ node index.js ``` Put environment variables ahead of the last command, port can also be configured with `PORT`. -#### Dockerized +### Dockerized + Modify `docker-compose.yaml` and change the host port if necessary. ``` diff --git a/bun.lockb b/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..68f18c98b7a779ca4363957a51b886d42dbc36ea GIT binary patch literal 171224 zcmeFa2|ShC8$Y_u$}EzQ3`t6cGzf*1%q5`#86)!;LWm~KDVZuM6*4466Df+)j7l`8 z&|GM~&tt#qocEmD$(H;1-24CB-};=_cdxac@ArAuv(~%bVefN}f}C1taFCjdm!F!u zU)V^OP`|-&sQUQ3dV6^JxT|{j2l+aOsD`NzW@j)MpFh5O!^J1roU&3@IAP?B6~<0c zGTnnyR!&|KJ1pJeir(xDv|=!hu=N6imkEDiELD#Vw#eEgSUW0+TnJEBLhdzial zNbqI&%*SBFii03OV35C$PiO#xag>w6kb!zK;0VA_Kv_V0s$CaQ8tNmc{vR9+#z?5& z15^Y&1&H>UfXI&oQ~!yIHUk?0%Cg!AnN1*3IGQ92Zy)@ z2QwNVXsllb91Q5^?C0<0#$dPyyM%iAxG^#W84OWqUk5k@FceS>(3NVpqUyR-zY5hp zlxk-H4h8#8aDu!BKncJKKy1$kMBQCf|7t+=7ev(;1EQS?AlhjGiUW?M`Ug|}U66Ft ze+r2Fu`ppGfbPLQUVb4A#xk!EFPyI|aE{|N9>!n{0@MS<`UDDn+{66PP66t|(C+5$ z9-!(K%-9AzA*indM4mb%9qY+}$X^WzLye7wew=@Mz)^r+!KzDr{9PE_FbQa90qwX> zyq5a;2f+$5r0O1Cer~F;VDwg~Q2L!o89Kv9S`F#fM zI6h}r{~$~RC$!^u_~n`HZ(%Yp&u;E6p?D(r2E!jH&!8RsF8B0u^@O@tuzNV3AUX<6 z|NO9+VX9&SoI^ZSAy`*WXCH6qzYgt~H&5qaRfu_MHPlgO7bFku+W>KV&dYj-#|RDb zQe6f<148{GT>ahL!<3luEC$5$;1Y%PPQ}Tc`@i<-ev=0zRJci z*R2}V@%$74#JEV_b6`=!l8a3p&phvEs4@9+u#PdVV0Ygz_aFx2-|KHG*rDI|>P)*S z8qB&&kh7~h;_Wc@t`K91YNIXEN`<|W8IG}y}{f}t~k znTKzHz2nhh&gV_aUJCr>YzAwbm4(qr;M05N|C(

G=HVvP;naw|2#Dk8 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

cL^6}j5Pa*sjz&8Z{ByNIzX%T)6 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 Sk~I=ru9< -

-
- Bluesky avatar -
-

{profile.displayName}

-
@{profile.handle}
-
-
-

{profile.description}

- {#if profile.about} -
-

{profile.about}

- {/if} -
+
+
+ Bluesky avatar +
+

{profile.displayName}

+
+ @{profile.handle} +
-
\ No newline at end of file +
+

{profile.description}

+ {#if profile.about} +
+

{profile.about}

+ {/if} +
+
+
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 5bf1ca2..5d8ea84 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -1,15 +1,20 @@
- - - {@render children()} + + + {@render children()}
- \ No newline at end of file + diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 3cb1f69..d55c28b 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -1,18 +1,25 @@ - WhiteBreeze - + Tony Bark Online + - \ No newline at end of file + diff --git a/src/routes/[rkey]/+page.server.ts b/src/routes/[rkey]/+page.server.ts index 1e347ba..f7fee03 100644 --- a/src/routes/[rkey]/+page.server.ts +++ b/src/routes/[rkey]/+page.server.ts @@ -34,10 +34,10 @@ const customSchema = { 'width', 'height', 'title', 'frameborder', 'allow', 'referrerpolicy', 'allowfullscreen', 'style', 'seamless', ['src', /https:\/\/(www.youtube.com|bandcamp.com)\/.*/] ], - section: ['dataFootnotes', 'className'] + section: ['dataFootnotes', 'className'] }, tagNames: [...(defaultSchema.tagNames ?? []), 'font', 'mark', 'iframe', 'section'] - } +} // Automatically enforce https on PDS images. Heavily inspired by WhiteWind's blob replacer: // https://github.com/whtwnd/whitewind-blog/blob/7eb8d4623eea617fd562b93d66a0e235323a2f9a/frontend/src/services/DocProvider.tsx#L90 @@ -59,15 +59,15 @@ const upgradeImage = (child: Node): void => { const rehypeUpgradeImage: Plugin = () => { return (tree) => { - tree.children.forEach(child => upgradeImage(child)) + tree.children.forEach(child => upgradeImage(child)) } - } +} export async function load({ params }) { const rawResponse = await fetch(`${pds}/xrpc/com.atproto.repo.getRecord?repo=${profile.did}&collection=com.whtwnd.blog.entry&rkey=${params.rkey}`) const response = await rawResponse.json() try { - + return { title: response["value"]["title"], mdcontent: String( diff --git a/src/routes/[rkey]/+page.svelte b/src/routes/[rkey]/+page.svelte index c55ea97..8713d20 100644 --- a/src/routes/[rkey]/+page.svelte +++ b/src/routes/[rkey]/+page.svelte @@ -4,12 +4,15 @@ - {data.title} - WhiteBreeze - + {data.title} - Tony Bark Online +

{data.title}

-
+
{@html data.mdcontent} -
\ No newline at end of file + diff --git a/src/routes/about/+page.svelte b/src/routes/about/+page.svelte index 8d88cdd..f54ff18 100644 --- a/src/routes/about/+page.svelte +++ b/src/routes/about/+page.svelte @@ -1,11 +1,18 @@ - - About - WhiteBreeze - + About - Tony Bark Online +

- WhiteBreeze is a small frontend for WhiteWind, - intended for users who would like to self host their own blogs on their own webpage. The user who this WhiteBreeze instance is targeting is shown on every page. - If you would like to host your own WhiteWind blog posts, consider cloning WhiteBreeze on GitHub. -

\ No newline at end of file + WhiteBreeze is a small frontend for WhiteWind, intended for users who would like to self host their own blogs on their + own webpage. The user who this WhiteBreeze instance is targeting is shown on + every page. If you would like to host your own WhiteWind blog posts, + consider cloning + WhiteBreeze on GitHub. +

diff --git a/static/robots.txt b/static/robots.txt index e974522..cd8fc86 100644 --- a/static/robots.txt +++ b/static/robots.txt @@ -3,6 +3,7 @@ User-Agent: ChatGPT-User User-Agent: ClaudeBot User-Agent: anthropic-ai User-Agent: CCBot +User-agent: Bytespider User-Agent: FacebookBot User-Agent: Twitterbot User-Agent: PerplexityBot @@ -12,6 +13,7 @@ User-Agent: mlbot User-Agent: PetalBot User-Agent: Amazonbot User-Agent: DuckAssistBot +User-agent: Diffbot User-Agent: OAI-SearchBot User-Agent: OAI-SearchBot User-Agent: omgili @@ -21,4 +23,6 @@ User-Agent: Webzio-Extended User-Agent: Meta-ExternalAgent User-Agent: Meta-ExternalFetcher User-Agent: cohere-ai +User-agent: Google-Extended +User-agent: PerplexityBot Disallow: / \ No newline at end of file