diff --git a/.cprc b/.cprc index d49fb7b50..7e3c68f2d 100644 --- a/.cprc +++ b/.cprc @@ -44,7 +44,7 @@ "name": "ci" }, { - "description": "Changes that affect the build system or external dependencies (example scopes: docker, npm).", + "description": "build: Use this for ongoing work that should be tracked in the changelog.", "name": "build" }, { diff --git a/.cz.json b/.cz.json index 8d51a6e92..4ce4f3a29 100644 --- a/.cz.json +++ b/.cz.json @@ -101,7 +101,7 @@ }, { "value": "build", - "name": "build: Changes that affect the build system or external dependencies (example scopes: pip, docker, npm).", + "name": "build: Use this for ongoing work that should be tracked in the changelog.", "key": "b" }, { @@ -190,4 +190,4 @@ ] } } -} \ No newline at end of file +} diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Active_Thoughts_Category_0_viewport_1_sm.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Active_Thoughts_Category_0_viewport_1_sm.png index 7de6c5ef0..7b69052a6 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Active_Thoughts_Category_0_viewport_1_sm.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Active_Thoughts_Category_0_viewport_1_sm.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Mobile_0_document_0_xs.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Mobile_0_document_0_xs.png index cb01a442d..53876a183 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Mobile_0_document_0_xs.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Mobile_0_document_0_xs.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Mobile_0_document_1_sm.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Mobile_0_document_1_sm.png index 88688cbb3..e63969a73 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Mobile_0_document_1_sm.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Mobile_0_document_1_sm.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Navigate_from_Post_0_document_0_md.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Navigate_from_Post_0_document_0_md.png index 05f602f1d..cc4c47f52 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Navigate_from_Post_0_document_0_md.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Navigate_from_Post_0_document_0_md.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Navigate_from_Post_0_document_1_lg.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Navigate_from_Post_0_document_1_lg.png index abe3acc5a..8ada29f9c 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Navigate_from_Post_0_document_1_lg.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Cats_-_Navigate_from_Post_0_document_1_lg.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_-_Switch_Theme_0_viewport_2_md.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_-_Switch_Theme_0_viewport_2_md.png index 90fdfed50..80bedd739 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_-_Switch_Theme_0_viewport_2_md.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_-_Switch_Theme_0_viewport_2_md.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_-_Switch_Theme_0_viewport_3_lg.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_-_Switch_Theme_0_viewport_3_lg.png index 89650efe8..83fe5e5fb 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_-_Switch_Theme_0_viewport_3_lg.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_-_Switch_Theme_0_viewport_3_lg.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_0_viewport_2_md.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_0_viewport_2_md.png index afa502ab0..43e77fc67 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_0_viewport_2_md.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_0_viewport_2_md.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_0_viewport_3_lg.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_0_viewport_3_lg.png index 7e7d78701..3ceffb9e5 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_0_viewport_3_lg.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Homepage_0_viewport_3_lg.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Post_-_Aside_TOC_Click_0_viewport_3_2xl.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Post_-_Aside_TOC_Click_0_viewport_3_2xl.png index 9d0efccef..ce0ff3f06 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Post_-_Aside_TOC_Click_0_viewport_3_2xl.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Post_-_Aside_TOC_Click_0_viewport_3_2xl.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Hover_First_Post_0_document_0_sm.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Hover_First_Post_0_document_0_sm.png index 9fbece1f2..943d292ea 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Hover_First_Post_0_document_0_sm.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Hover_First_Post_0_document_0_sm.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Navigate_From_Home_0_document_0_xs.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Navigate_From_Home_0_document_0_xs.png index f751082c4..2e993a69e 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Navigate_From_Home_0_document_0_xs.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Navigate_From_Home_0_document_0_xs.png differ diff --git a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Navigate_From_Home_0_document_1_sm.png b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Navigate_From_Home_0_document_1_sm.png index cea390854..9182c1028 100644 Binary files a/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Navigate_From_Home_0_document_1_sm.png and b/_ci/backstop/bd/bitmaps_reference/gh-stg/GithubSTG_Posts_-_Navigate_From_Home_0_document_1_sm.png differ diff --git a/_ci/backstop/scenarios/cats/cats_navigate_from_post.js b/_ci/backstop/scenarios/cats/cats_navigate_from_post.js index b4a26a6dd..6c6710fcf 100644 --- a/_ci/backstop/scenarios/cats/cats_navigate_from_post.js +++ b/_ci/backstop/scenarios/cats/cats_navigate_from_post.js @@ -7,7 +7,7 @@ module.exports = { viewports: aboveSmallViewports, onReadyScript: 'playwright/onReadyCats.js', clickSelector: '.post .aside a[href="/posts/category/thoughts/"]', - postInteractionWait: 1000, + postInteractionWait: 3000, selectors: ['document'], selectorExpansion: false, misMatchThreshold: 0.2, diff --git a/back/config/plugins.js b/back/config/plugins.js index 667c11a73..dfd67a030 100644 --- a/back/config/plugins.js +++ b/back/config/plugins.js @@ -22,6 +22,8 @@ module.exports = ({ env }) => { 60 * 60 * 24 * 7 ), Bucket: env("AWS_S3_BUCKET"), + CacheControl: + "max-age=2853213,public,s-maxage=31536000,immutable", }, }, }, diff --git a/front/src/hooks.client.js b/front/src/hooks.client.js index f0d72e170..fad5e2e0f 100644 --- a/front/src/hooks.client.js +++ b/front/src/hooks.client.js @@ -3,7 +3,7 @@ import { PUBLIC_ENV, PUBLIC_SENTRY_DSN } from '$env/static/public'; Sentry.init({ dsn: PUBLIC_SENTRY_DSN, - debug: PUBLIC_ENV === 'development' ? true : false, + debug: PUBLIC_ENV === 'development' ? false : false, environment: PUBLIC_ENV, integrations: [new Sentry.BrowserTracing(), new Sentry.Replay()], tracePropagationTargets: ['localhost', /^https:\/\/\*\.dgrebb\.com\/api/], diff --git a/front/src/hooks.server.js b/front/src/hooks.server.js index a60d3dc5d..9493c09aa 100644 --- a/front/src/hooks.server.js +++ b/front/src/hooks.server.js @@ -39,7 +39,7 @@ export function handleError({ error, event }) { const minification_options = { collapseWhitespace: true, collapseInlineTagWhitespace: true, - removeComments: true, + removeComments: false, minifyCSS: true, minifyJS: true, }; diff --git a/front/src/lib/components/Meta.svelte b/front/src/lib/components/Meta.svelte index 077d20c02..d69dd1765 100644 --- a/front/src/lib/components/Meta.svelte +++ b/front/src/lib/components/Meta.svelte @@ -6,6 +6,7 @@ const { metaTitle, + socialTitle, metaImage, metaDescription, metaRobots, @@ -65,7 +66,7 @@ }, ]} openGraph={{ - title: metaTitle, + title: socialTitle || metaTitle, description: metaDescription, url: canonicalURL || false, type: type, @@ -80,8 +81,8 @@ site: '@dgrebb', creator: '@dgrebb', cardType: 'summary_large_image', - title: twitter?.title || pageMeta.title, - description: twitter?.description || pageMeta.description, + title: twitter?.title || socialTitle || pageMeta.title, + description: twitter?.description || pageMeta.metaDescription, image: twitter?.image?.data?.attributes?.url || metaImage.url, imageAlt: twitter?.image?.data?.attributes?.alternativeText || metaImage.alt, diff --git a/front/src/routes/+error.svelte b/front/src/routes/+error.svelte index a34886fa9..3862e77e4 100644 --- a/front/src/routes/+error.svelte +++ b/front/src/routes/+error.svelte @@ -14,7 +14,6 @@ error: $page.error.message, data: $page.data, }); - console.log('🚀 ~ file: +error.svelte:11 ~ $page:', $page); Sentry.captureMessage('Page Not Found', { tags: { status: 'NOT_FOUND', @@ -23,6 +22,10 @@ }); + + 404! + +
diff --git a/front/src/routes/404/+page.svelte b/front/src/routes/404/+page.svelte index 1be5fe51d..c46f8e775 100644 --- a/front/src/routes/404/+page.svelte +++ b/front/src/routes/404/+page.svelte @@ -21,6 +21,10 @@ }); + + 404! + +
diff --git a/front/src/routes/post/[slug]/+page.server.js b/front/src/routes/post/[slug]/+page.server.js index 9a46efc37..fbc7c654e 100644 --- a/front/src/routes/post/[slug]/+page.server.js +++ b/front/src/routes/post/[slug]/+page.server.js @@ -32,7 +32,8 @@ export async function load({ params: { slug }, route }) { publishedAt, type: 'article', metaTitle: seo?.metaTitle || title, - titleTemplate: '%s | Writing | Dan Grebb', + socialTitle: `${seo?.metaTitle || title} « Writing « Dan Grebb`, + titleTemplate: '%s « Writing « Dan Grebb', metaDescription: seo?.metaDescription || summary || @@ -44,8 +45,9 @@ export async function load({ params: { slug }, route }) { */ pageMeta.metaImage = pageMeta?.metaImage?.data?.attributes || hero?.data?.attributes || { - url: 'https://s.dgrebb.com/img/default_banner_2a50e43220.png', - alternativeText: 'The Circuit of Life', + url: 'https://s.dgrebb.com/img/default_posts_0d52ddf1f2.webp', + alternativeText: + 'A desk with various electronics, music instruments, audio equipment, and books laid out in an organized fashion.', }; return { diff --git a/front/src/routes/posts/+page.server.js b/front/src/routes/posts/+page.server.js index 46b8e892b..579d25da0 100644 --- a/front/src/routes/posts/+page.server.js +++ b/front/src/routes/posts/+page.server.js @@ -39,17 +39,16 @@ export async function load({ route }) { var pageMeta = { ...page.seo, type: 'website', - metaTitle: page?.seo?.metaTitle || page.headline, + metaTitle: 'Writing « Dan Grebb', }; - pageMeta.titleTemplate = '%s | Dan Grebb'; - /** * Isolates the `metaImage` object properties we care about */ pageMeta.metaImage = pageMeta?.metaImage?.data?.attributes || { - url: 'https://s.dgrebb.com/img/default_posts_meta_Image_02548488e7.jpg', - alternativeText: 'A writing desk surrounded by house plants', + url: 'https://s.dgrebb.com/img/default_posts_0d52ddf1f2.webp', + alternativeText: + 'A desk with various electronics, music instruments, audio equipment, and books laid out in an organized fashion.', }; return { diff --git a/front/src/routes/posts/category/[category]/+page.server.js b/front/src/routes/posts/category/[category]/+page.server.js index e58ddc977..b893e94da 100644 --- a/front/src/routes/posts/category/[category]/+page.server.js +++ b/front/src/routes/posts/category/[category]/+page.server.js @@ -41,19 +41,28 @@ export async function load({ params }) { }); } - const { name, seo } = individualCategoryContent; + const { + name, + seo, + description: categoryDescription, + } = individualCategoryContent; const pageMeta = { ...seo, type: 'website', metaTitle: seo?.metaTitle || name, - titleTemplate: '%s | Categories | Dan Grebb', + socialTitle: `${seo?.metaTitle || name} « Writing by Category « Dan Grebb`, + titleTemplate: `%s « Writing by Category « Dan Grebb`, metaDescription: - seo?.metaDescription || - individualCategoryContent?.description || - `Here's a collection of posts about ${name}`, + categoryDescription !== null + ? categoryDescription + : `Posts about "${name}"`, }; + console.log( + '🚀 ~ file: +page.server.js:51 ~ load ~ pageMeta:', + pageMeta.metaDescription + ); /** * Isolates the `metaImage` object properties we care about */ @@ -61,7 +70,7 @@ export async function load({ params }) { url: pageMeta?.metaImage?.formats?.large?.url || categoryPageContent?.seo?.metaImage?.formats?.large?.url || - 'https://s.dgrebb.com/img/default_categories_34209a13ff.png', + 'https://s.dgrebb.com/img/default_categories_ad8e01e054.webp', alternativeText: pageMeta?.metaImage?.alternativeText || categoryPageContent?.seo?.metaImage?.alternativeText || diff --git a/front/src/routes/privacy/+page.server.js b/front/src/routes/privacy/+page.server.js index 05ae637c7..0cc2da3fe 100644 --- a/front/src/routes/privacy/+page.server.js +++ b/front/src/routes/privacy/+page.server.js @@ -21,7 +21,8 @@ export async function load({ params }) { ...seo, type: 'website', metaTitle: seo?.metaTitle || title, - titleTemplate: '%s | Dan Grebb', + socialTitle: `${seo?.metaTitle || title} « Dan Grebb`, + titleTemplate: '%s « Dan Grebb', metaDescription: seo?.metaDescription || 'Privacy Practices at dgrebb.com', }; @@ -29,7 +30,7 @@ export async function load({ params }) { * Isolates the `metaImage` object properties we care about */ pageMeta.metaImage = pageMeta?.metaImage?.data?.attributes || { - url: 'https://s.dgrebb.com/img/default_privacy_meta_Image_c5581a5569.jpg', + url: 'https://s.dgrebb.com/img/default_privacy_963504effe.webp', alternativeText: 'The Circuit of Life', }; return { diff --git a/front/vite.local.config.js b/front/vite.local.config.js index 73e53e148..db0827474 100644 --- a/front/vite.local.config.js +++ b/front/vite.local.config.js @@ -10,7 +10,7 @@ const sourceMapsUploadOptions = { authToken: process.env.SENTRY_AUTH_TOKEN, uploadSourceMaps: true, telemetry: false, - debug: true, + debug: false, org: 'dgrebb', project: 'dgrebb', include: ['build'],