Skip to content

Commit 2aceb27

Browse files
committed
feat: Finishes styling and textures
1 parent 6283abd commit 2aceb27

File tree

182 files changed

+385
-1638
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

182 files changed

+385
-1638
lines changed

.czrc

Lines changed: 0 additions & 50 deletions
This file was deleted.

.env

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
ADBLOCK=1
2+
DISABLE_OPENCOLLECTIVE=1
3+
OPEN_SOURCE_CONTRIBUTOR=1
4+
SUPPRESS_SUPPORT=1

.eslintignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
__generated__/*

.eslintrc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"root": true,
3+
"parser": "@typescript-eslint/parser",
4+
"extends": ["next/core-web-vitals"]
5+
}

.eslintrc.js

Lines changed: 0 additions & 16 deletions
This file was deleted.

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
# Please put your IDE ignores in your home ~/.gitignore
99
# Most editors are at https://github.com/github/gitignore/tree/master/Global
1010

11-
.env
1211
.env.local
1312
.next
1413
.vercel

.lintstagedrc.cjs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
const path = require("path");
2+
3+
// https://nextjs.org/docs/basic-features/eslint#lint-staged
4+
const buildEslintCommand = (filenames) =>
5+
`next lint --fix --file ${filenames
6+
.map((f) => path.relative(process.cwd(), f))
7+
.join(" --file ")}`;
8+
9+
module.exports = {
10+
// global configurations, these are always cleaned with prettier
11+
"{*,**/*}.{json,gql,graphql,md,yaml,yml}": ["prettier --write"],
12+
// next.js linting
13+
"{*,**/*}.{js,ts,jsx,tsx,vue}": [buildEslintCommand],
14+
};

.lintstagedrc.yml

Lines changed: 0 additions & 8 deletions
This file was deleted.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/* eslint-disable */
2+
module.exports = {
3+
name: "@yarnpkg/plugin-dotenv",
4+
factory: function (require) {
5+
var plugin;plugin=(()=>{var e={86:(e,r,n)=>{"use strict";n.r(r),n.d(r,{hooks:()=>i});var t=n(347),o=n(843),s=n.n(o);const i={async setupScriptEnvironment(e,r){var n;const o=(0,t.v)({path:null!==(n=s()(".env"))&&void 0!==n?n:void 0});Object.assign(r,o.parsed)}}},347:(e,r,n)=>{const t=n(747),o=n(622);function s(e){console.log("[dotenv][DEBUG] "+e)}const i=/^\s*([\w.-]+)\s*=\s*(.*)?\s*$/,u=/\\n/g,c=/\n|\r|\r\n/;function l(e,r){const n=Boolean(r&&r.debug),t={};return e.toString().split(c).forEach((function(e,r){const o=e.match(i);if(null!=o){const e=o[1];let r=o[2]||"";const n=r.length-1,s='"'===r[0]&&'"'===r[n];"'"===r[0]&&"'"===r[n]||s?(r=r.substring(1,n),s&&(r=r.replace(u,"\n"))):r=r.trim(),t[e]=r}else n&&s(`did not match key and value when parsing line ${r+1}: ${e}`)})),t}e.exports.v=function(e){let r=o.resolve(process.cwd(),".env"),n="utf8",i=!1;e&&(null!=e.path&&(r=e.path),null!=e.encoding&&(n=e.encoding),null!=e.debug&&(i=!0));try{const e=l(t.readFileSync(r,{encoding:n}),{debug:i});return Object.keys(e).forEach((function(r){Object.prototype.hasOwnProperty.call(process.env,r)?i&&s(`"${r}" is already defined in \`process.env\` and will not be overwritten`):process.env[r]=e[r]})),{parsed:e}}catch(e){return{error:e}}}},843:(e,r,n)=>{"use strict";var t=n(747),o=n(622),s=n(588),i=t.readFileSync,u=t.statSync,c=o.join,l=o.resolve,a=/^\./,p=o.sep;function d(e,r,n){r=c(e,r);var t=c(r,n);return u(t)&&{cwd:e,dir:r,path:t}}function f(e,r,t){r=c(e,r);var o=c(r,t),s=n(603).resolve(o);return s&&{cwd:e,dir:r,path:s}}function v(e,r){var n=g(e,r);return n&&n.path}function g(e,r){if(!e)return null;var n,t=null!==(r=r||{}).dir&&void 0!==r.dir?r.dir:".config",o=r.dot?e:e.replace(a,""),i=r.module?f:d,u=l(r.cwd||".").split(p),c=u.length;function v(r){try{return i(r,"",e)}catch(e){}try{return i(r,t,o)}catch(e){}}for(;c--;){if(n=v(u.join(p)))return n;u.pop()}return(r.home||null===r.home||void 0===r.home)&&(n=v(s))?n:null}e.exports=v,e.exports.obj=g,e.exports.read=function(e,r){if(!e)return null;var n=v(e,r=r||{});return n&&i(n,{encoding:r.encoding||"utf8",flag:r.flag})},e.exports.require=function(e,r){if(!e)return null;(r=r||{}).module=!0;var t=v(e,r);return t&&n(603)(t)}},603:e=>{function r(e){var r=new Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r}r.keys=()=>[],r.resolve=r,r.id=603,e.exports=r},918:(e,r,n)=>{"use strict";var t=n(87);e.exports="function"==typeof t.homedir?t.homedir:function(){var e=process.env,r=e.HOME,n=e.LOGNAME||e.USER||e.LNAME||e.USERNAME;return"win32"===process.platform?e.USERPROFILE||e.HOMEDRIVE+e.HOMEPATH||r||null:"darwin"===process.platform?r||(n?"/Users/"+n:null):"linux"===process.platform?r||(0===process.getuid()?"/root":n?"/home/"+n:null):r||null}},588:(e,r,n)=>{"use strict";e.exports=n(918)()},747:e=>{"use strict";e.exports=require("fs")},87:e=>{"use strict";e.exports=require("os")},622:e=>{"use strict";e.exports=require("path")}},r={};function n(t){if(r[t])return r[t].exports;var o=r[t]={exports:{}};return e[t](o,o.exports,n),o.exports}return n.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return n.d(r,{a:r}),r},n.d=(e,r)=>{for(var t in r)n.o(r,t)&&!n.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},n.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n(86)})();
6+
return plugin;
7+
}
8+
};

.yarnrc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,7 @@ nodeLinker: node-modules
33
plugins:
44
- path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs
55
spec: "@yarnpkg/plugin-interactive-tools"
6+
- path: .yarn/plugins/@yarnpkg/plugin-dotenv.cjs
7+
spec: "https://unpkg.com/yarn-plugin-dotenv/bundles/@yarnpkg/plugin-dotenv.js"
68

79
yarnPath: .yarn/releases/yarn-3.1.1.cjs

README.md

Lines changed: 10 additions & 7 deletions

package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
{
22
"name": "codedrift",
33
"private": true,
4-
"version": "1.0.0",
4+
"version": "2.0.0",
55
"description": "Personal blog & site of Rudolph Jakob Heuser",
6-
"main": "",
7-
"author": "Jakob Heuser <[email protected]>",
6+
"license": "MIT",
7+
"main": "./src/pages/index.ts",
8+
"author": "Jakob Heuser <[email protected]>",
89
"homepage": "https://codedrift.com",
910
"bugs": {
1011
"url": "https://github.com/jakobo/codedrift/issues"
@@ -17,7 +18,6 @@
1718
"eslint": "eslint",
1819
"lint-staged": "lint-staged --shell"
1920
},
20-
"license": "MIT",
2121
"dependencies": {
2222
"@heroicons/react": "^1.0.6",
2323
"@tailwindcss/forms": "^0.5.2",
@@ -37,7 +37,7 @@
3737
"ky": "^0.30.0",
3838
"ky-universal": "^0.9.1",
3939
"luxon": "^2.2.0",
40-
"next": "^12.0.7",
40+
"next": "^12.1.6",
4141
"next-seo": "^5.4.0",
4242
"next-urql": "^3.3.2",
4343
"postcss": "^8.4.14",
@@ -76,7 +76,7 @@
7676
},
7777
"devDependencies": {
7878
"@babel/core": "^7.18.0",
79-
"@babel/plugin-transform-unicode-regex": "^7.16.5",
79+
"@babel/plugin-transform-unicode-regex": "^7.16.7",
8080
"@commitlint/cli": "^11.0.0",
8181
"@commitlint/config-conventional": "^11.0.0",
8282
"@graphql-codegen/add": "^3.1.0",
@@ -101,7 +101,7 @@
101101
"eslint-config-next": "latest",
102102
"husky": "^4.3.8",
103103
"lint-staged": "^10.5.4",
104-
"prettier": "^2.2.1",
104+
"prettier": "^2.6.2",
105105
"typescript": "^4.6.4"
106106
},
107107
"husky": {

public/.well-known/security.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# RFC-9116 is amazing, and we all should use it
2+
# A static website probably does not need this, but we live on the internet
3+
# so anything is possible.
4+
#
5+
# I have intentionally ommitted the Expires field, as this security email
6+
# will exist for as long as I own and write on codedrift.com
7+
8+
Canonical: https://codedrift.com/.well-known/security.txt
9+
Contact: mailto:[email protected]?subject=Security
10+
Preferred-Languages: en

public/images/tex/leather.png

75.5 KB

public/images/tex/paper-fibers.png

71.1 KB

src/components/Directory.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ export const PostDirectory: React.FC<PostDirectoryProps> = ({
4343
.reverse()
4444
.map((year) => (
4545
<div key={year} className={cx("mb-8", className)}>
46-
<h2 className="w-full font-title text-2xl text-left text-gray-800 border-b border-gray-800 mb-1">
46+
<h2 className="w-full font-sans text-2xl text-left text-gray-800 border-b border-gray-800 mb-1">
4747
{year}
4848
</h2>
4949
<ul className="grid gap-8 grid-cols-2">

src/components/Layout.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ export const Layout: React.FC<PropsWithChildren<{}>> = ({ children }) => {
160160
<main className="w-full max-w-limit flex-grow p-4 pt-12">
161161
{children}
162162
</main>
163-
<footer className="w-full h-20 bg-gray-700 dark:bg-gray-800 mt-8">
163+
<footer className="w-full h-20 bg-gray-700 bg-leather-stone-700 dark:bg-gray-800 dark:bg-leather-stone-700 mt-8">
164164
<div className="flex flex-row items-center max-w-limit text-gray-100 dark:text-gray-200 p-4 text-sm">
165165
<div className="w-1/4">&lt;/&gt;</div>
166166
<div className="flex-grow text-center">

src/components/Post.tsx

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,7 @@ import { DateTime } from "luxon";
44
import { Post as PT, Tag } from "types/Post";
55
import { demoji } from "src/lib/demoji";
66
import cx from "classnames";
7-
import { LINK, MINOR_LINK, PROSE } from "src/constants";
8-
9-
const permalinkClass =
10-
"block font-sans-caps text-gray-300 text-sm no-underline";
7+
import { MINOR_LINK, PROSE } from "src/constants";
118

129
const widont = (text: string) =>
1310
text.replace(/([^\s])\s+([^\s]+)\s*$/, "$1\u00a0$2");

src/constants.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,4 @@ export const PROSE = [
3838
export const ICON_LINK =
3939
"transition-all text-gray-500 hover:!text-gray-400 dark:text-gray-500 hover:dark:!text-gray-400";
4040

41-
export const SECTION_HEADLINE = ["font-title", "text-7xl", "mb-3"].join(" ");
41+
export const SECTION_HEADLINE = ["font-title", "text-6xl", "mb-3"].join(" ");

src/pages/_document.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ class MyDocument extends Document {
1212
/>
1313
</Head>
1414
<body
15-
className="bg-gray-100 bg-texture dark:bg-texture-invert dark:bg-gray-900 text-gray-800 dark:text-gray-100"
15+
className="bg-gray-100 bg-paper-stone-200 dark:bg-gray-900 dark:bg-paper-stone-800 text-gray-800 dark:text-gray-100"
1616
style={{
1717
margin: 0,
1818
padding: 0,

src/pages/colophon.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ const Colophon: React.FC<{}> = () => {
6060
<a href="https://fonts.google.com/specimen/Work+Sans">
6161
Work Sans Light
6262
</a>
63-
. The <a href="https://tailwindcss.com/">Tailwind CSS</a> Slate
63+
. The <a href="https://tailwindcss.com/">Tailwind CSS</a> stone
6464
pallete drives the primary color scheme, with Emerald and Amber
6565
providing primary and secondary colors respectively.
6666
</p>

src/pages/index.tsx

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -49,15 +49,18 @@ const Home: React.FC<{}> = () => {
4949
<Layout>
5050
<div className="flex-col flex-shrink-0 w-full lg:w-auto">
5151
<div className="max-w-reading mx-2 lg:mx-0">
52-
<h1 className="font-title font-bold text-5xl mb-3">
52+
<h1 className="font-title text-6xl mb-3">
5353
Hey 👋🏼, I&rsquo;m Jakob
5454
</h1>
55-
<p className="font-sans font-light leading-normal">
55+
<p className="font-sans">
5656
I&lsquo;m the co-founder of{" "}
57-
<a href="https://taskless.io">Taskless</a>, the world&lsquo;s
58-
fastest job queueing system for serverless and edge computing.
57+
<a href="https://taskless.io" className={linkClasses}>
58+
Taskless
59+
</a>
60+
, the world&lsquo;s fastest job queueing system for serverless and
61+
edge computing.
5962
</p>
60-
<p className="font-sans font-light leading-normal mt-3">
63+
<p className="font-sans mt-3">
6164
The messy parts when we build things is my happy place.
6265
Ocassionally, I write about{" "}
6366
<Link href="/thunked/tag/%F0%9F%93%9A%20Code">
@@ -79,7 +82,7 @@ const Home: React.FC<{}> = () => {
7982
<div className="max-w-reading mt-4 mx-2 lg:mx-0 flex flex-col space-y-8 pt-6">
8083
{(posts || []).map((post) => (
8184
<div key={post.id}>
82-
<h3 className="font-sans font-bold text-2xl">
85+
<h3 className="font-sans text-2xl">
8386
<Link href={`/thunked/${post.slug}`} passHref>
8487
<a
8588
href={`/thunked/${post.slug}`}
@@ -89,9 +92,8 @@ const Home: React.FC<{}> = () => {
8992
</a>
9093
</Link>
9194
</h3>
92-
<div className="font-sans-caps text-sm">
95+
<div className="font-sans text-sm">
9396
<span
94-
className="text-xs"
9597
title={DateTime.fromISO(post.publishedAt).toLocaleString()}
9698
>
9799
{DateTime.fromISO(post.publishedAt).toRelativeCalendar()}

src/pages/thunked/[slug].tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ const ThunkedBySlug: React.FC<ThunkedBySlugProps> = ({ webmentions = [] }) => {
105105
titleTag={({ children, ...props }) => (
106106
<h1
107107
{...props}
108-
className={`${props.className || ""} font-title text-5xl`}
108+
className={`${props.className || ""} font-title text-6xl`}
109109
>
110110
{children}
111111
</h1>

0 commit comments

Comments
 (0)