profile
viewpoint
Benjamin Johnson benjamminj @Codefied Orange County, CA, USA https://www.benjaminjohnson.me Senior software engineer. Coffee drinker. Learning every day one mistake at a time

benjamminj/adze 0

Minimal Blogging CMS using Node.js

benjamminj/alloy-ui 0

AlloyUI is a framework built on top of YUI3 (JavaScript) that uses Bootstrap 3 (HTML/CSS) to provide a simple API for building high scalable applications

benjamminj/babel-plugin-superjson-next 0

Automatically transform your Next.js Pages to use SuperJSON

benjamminj/backend_node_capstone_curriculum_and_student_manager 0

A curriculum manager for teachers and mentors to manage students' info and their progress.

benjamminj/blog_robinwieruch_content 0

✏️ Content of robinwieruch.de - Write guest blog posts or improve the content. Your help means a lot to me.

benjamminj/cars-server 0

A server for learning Express

push eventbenjamminj/timer

Ben Johnson

commit sha 9f1023f01a6214bbcdd6ec185843dcd05cbc6e25

Timer app with new page

view details

push time in 15 hours

push eventbenjamminj/timer

Ben Johnson

commit sha 275084c36e8560069afb5df306aa152863fbeef5

Get timer v1 working

view details

Ben Johnson

commit sha 21af671796370a4ea2b298c969b9c3ea1922995f

Add eslint with react hooks plugin

view details

push time in 17 hours

create barnchbenjamminj/timer

branch : main

created branch time in 19 hours

created repositorybenjamminj/timer

created time in 19 hours

push eventbenjamminj/from-scratch

Ben Johnson

commit sha ecc67dcac133a75cb45d3485dff53188cfe694d7

Finish last test case

view details

Ben Johnson

commit sha 67f1094f3f2eb2545f190562ba9fb66e82b64fac

Add docs for debounce

view details

Ben Johnson

commit sha 4b89ae8190e6d4011d8ec59ade31008d360b488b

Add lodash get from scratch

view details

Ben Johnson

commit sha 64658918dd6a6909e50104cc1247c66bd86333bf

Add lodash pick from scratch

view details

Ben Johnson

commit sha a46450a3b79e00e37a9df04641267f21e749f56f

Add partition w/o custom syntaxes from lodash

view details

Ben Johnson

commit sha a59619eccffac755ea62bc4b1336a70b6b9e2ac0

add matchesProperty function from lodash

view details

Ben Johnson

commit sha bfc32b31d835b85be4fecb05a0fa828b9e411917

Add matchesProperty shorthand to partition

view details

Ben Johnson

commit sha 79468a4fe2a1003f3ee3c65645c578d882c175c3

Added array syntax to get function

view details

Ben Johnson

commit sha eaeb2ec0c257d9ebfc9091c14e2cfc73e3adb1cf

added lodash.property function from scratch

view details

Ben Johnson

commit sha a41a1861026bdfda6c591808a70b243b93e4f082

Add "property" syntax to partition function

view details

Ben Johnson

commit sha 54ad1498d10376a1926f1ba9fe1d06845f6334e8

add matches function

view details

Ben Johnson

commit sha 2e5bf408e3d9829881a8bf1ff16581df570d770b

Add some initial docs

view details

push time in 2 days

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha e2d627ebe9d783b0b6d179bd49937269c5c52f15

bump to NEXTJS 10 🤯 (#132)

view details

push time in 2 days

delete branch benjamminj/portfolio

delete branch : upgrade-nextjs

delete time in 2 days

PR merged benjamminj/portfolio

Bump to NEXTJS 10 🤯
+833 -1112

1 comment

3 changed files

benjamminj

pr closed time in 2 days

PR opened benjamminj/portfolio

Bump to NEXTJS 10 🤯
+833 -1112

0 comment

3 changed files

pr created time in 2 days

create barnchbenjamminj/portfolio

branch : upgrade-nextjs

created branch time in 3 days

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha 3ed0e408887bb74504e505118944f5348bcbe299

Add superjson for better json serialization (#126) * Add superjson for better json serialization * ⬆️ Bump superjson dependency versions

view details

push time in 6 days

delete branch benjamminj/portfolio

delete branch : superjson

delete time in 6 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha d177eebf9e454f153416cd02fc7f02c185c1355a

⬆️ Bump superjson dependency versions

view details

push time in 6 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha a83635709906aa96d42e37f1822905a11fb6363b

⬆️ Bump superjson version

view details

push time in 6 days

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha 7b561dd0c8b3173535d3db3220360d6aeb785550

Add rem-based media queries article (#127) * Add rem-based media queries draft #1 * Update rem based media queries post draft v2

view details

Benjamin Johnson

commit sha aeacb857e73111f8d3c9294987a978b1f7691d5c

Write memoize from scratch draft 1 (#128) * Change published date to display as "last updated" (#125) * Change references to the writing directory * Add last updated date to footer * Update e2e tests, remove reading time * Fix last updated bug * Fix italics

view details

Benjamin Johnson

commit sha 459f5d74f17eeec106255029840c30e3de29f4f6

Write Arrange-Act-Assert first draft (#129) * Write AAA first draft * Update date

view details

Benjamin Johnson

commit sha 74ed5f49c19707eb3322f270dbcb6a5400bb7a63

Update jest playwright "modes" (#131) * Bump jest-playwright * Add architecture record for jest-playwright modes

view details

Ben Johnson

commit sha a85d39500b4b406c35e1c910479c9b0620f1eed3

Add superjson for better json serialization

view details

push time in 6 days

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha 74ed5f49c19707eb3322f270dbcb6a5400bb7a63

Update jest playwright "modes" (#131) * Bump jest-playwright * Add architecture record for jest-playwright modes

view details

push time in 6 days

delete branch benjamminj/portfolio

delete branch : undo-jest-playwright

delete time in 6 days

PR opened benjamminj/portfolio

Update jest playwright "modes"
+650 -47

0 comment

5 changed files

pr created time in 6 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha 74d407684233c6614a4a505fe47953797c37005f

Add architecture record for jest-playwright modes

view details

push time in 6 days

push eventbenjamminj/from-scratch

Ben Johnson

commit sha fc4c3053cbe8df4f8670481376128e1ae7028433

✨ Add format command

view details

push time in 7 days

create barnchbenjamminj/from-scratch

branch : main

created branch time in 7 days

created repositorybenjamminj/from-scratch

created time in 7 days

create barnchbenjamminj/portfolio

branch : undo-jest-playwright

created branch time in 8 days

create barnchteam-hack/react-components

branch : main

created branch time in 11 days

created repositoryteam-hack/react-components

Reusable React components library

created time in 11 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha 0550d91b553265e1694008d1b4bbe56436e44dd9

Add engineering principles draft 1

view details

push time in 13 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha 696997204e1d7f3da80b29adcfdf3c32b5c4199b

:x

view details

push time in 13 days

delete branch benjamminj/portfolio

delete branch : arrange-act-assert

delete time in 13 days

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha 459f5d74f17eeec106255029840c30e3de29f4f6

Write Arrange-Act-Assert first draft (#129) * Write AAA first draft * Update date

view details

push time in 13 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha 077217f95d39c44ebc73bd7c0007d07d5fa9d3de

Update date

view details

push time in 13 days

create barnchbenjamminj/portfolio

branch : engineering-principles

created branch time in 13 days

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha aeacb857e73111f8d3c9294987a978b1f7691d5c

Write memoize from scratch draft 1 (#128) * Change published date to display as "last updated" (#125) * Change references to the writing directory * Add last updated date to footer * Update e2e tests, remove reading time * Fix last updated bug * Fix italics

view details

push time in 16 days

delete branch benjamminj/portfolio

delete branch : write-memoize-from-scratch

delete time in 16 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha 39c33079aeebb38132bae6940e8a14556b03fa96

Write AAA first draft

view details

push time in 16 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha 2eec100944984dd0c3ca89cc335b74a5d6af0f64

Fix italics

view details

push time in 16 days

push eventbenjamminj/portfolio

Ben Johnson

commit sha ae810cc8eb3c928d689b2f4628247f0a400492fb

Fix italics

view details

push time in 16 days

create barnchbenjamminj/portfolio

branch : arrange-act-assert

created branch time in 16 days

delete branch benjamminj/coding-guidelines

delete branch : pr-guidelines

delete time in 17 days

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha dd069eb3b969898522c7e35a665c1e546abb79df

Change published date to display as "last updated" (#125) * Change references to the writing directory * Add last updated date to footer * Update e2e tests, remove reading time * Fix last updated bug

view details

Benjamin Johnson

commit sha 7b561dd0c8b3173535d3db3220360d6aeb785550

Add rem-based media queries article (#127) * Add rem-based media queries draft #1 * Update rem based media queries post draft v2

view details

Ben Johnson

commit sha cadc8299eaebdf00bae0bbbc2b2f9cfefafb5647

Merge branches 'write-memoize-from-scratch' and 'main' of https://github.com/benjamminj/portfolio into write-memoize-from-scratch

view details

push time in 17 days

create barnchbenjamminj/portfolio

branch : write-memoize-from-scratch

created branch time in 17 days

PR opened team-hack/coding-guidelines

Add code review guidelines draft

Thought I'd take a stab at some PR guidelines.

Especially if we'll be doing PRs on projects, might be nice to have some guides on empathetic, encouraging review comments. I know in my past I've been on teams that had good PR process, and others that were more toxic. That made all the difference between a PR being a joy to fix or anxiety-inducing.

Lemme know what you think, totally open to suggestions on stuff to add / remove / reword.

+130 -0

0 comment

2 changed files

pr created time in 17 days

create barnchbenjamminj/coding-guidelines

branch : pr-guidelines

created branch time in 17 days

fork benjamminj/coding-guidelines

Some standards, principles and guidelines for our team.

fork in 17 days

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha 7b561dd0c8b3173535d3db3220360d6aeb785550

Add rem-based media queries article (#127) * Add rem-based media queries draft #1 * Update rem based media queries post draft v2

view details

push time in a month

delete branch benjamminj/portfolio

delete branch : rem-based-media-queries

delete time in a month

push eventbenjamminj/portfolio

Ben Johnson

commit sha 865ae8132641d49b2212c1f1e35da5ed751b19e8

Update rem based media queries post draft v2

view details

push time in a month

push eventbenjamminj/portfolio

Ben Johnson

commit sha dc26af99128a50a1695014ffab44f8980c0a37e9

Update rem based media queries post draft v2

view details

push time in a month

create barnchbenjamminj/portfolio

branch : rem-based-media-queries

created branch time in a month

delete branch benjamminj/babel-plugin-superjson-next

delete branch : no-transforms-nextjs

delete time in a month

push eventbenjamminj/portfolio

Ben Johnson

commit sha 6083cb0a2f3b60a45f6b2b10c037f7263e96acec

Temporary: use workaround

view details

push time in a month

create barnchbenjamminj/games

branch : blitzjs

created branch time in a month

PR opened blitz-js/babel-plugin-superjson-next

Fix nextjs builds if there are no "meta" values

Resolves #5

Alternatively, we could fix this upstream in superjson if we'd rather do that, although I think that would involve changing meta to default to null if there's no transformed properties.

+32 -1

0 comment

3 changed files

pr created time in a month

push eventbenjamminj/babel-plugin-superjson-next

Ben Johnson

commit sha 10aed5cd50f4d58c8f14ecb748e8c2d177cd0050

Fix nextjs builds if no meta prop exists

view details

push time in a month

push eventbenjamminj/babel-plugin-superjson-next

Ben Johnson

commit sha 593c84009621b54a6c5bb5272564ce608519efac

Fix nextjs builds if no meta prop exists

view details

push time in a month

issue openedblitz-js/babel-plugin-superjson-next

NextJS build fails when simple objects are returned from getStaticProps

Hi! First off, thanks for this babel transform, I've been using it in an existing NextJS project and it is 🔥

I noticed a bug while integrating this babel transform.

After setting up the plugin in .babelrc, here's an example page /pages/no-meta.tsx:

// pages/no-meta.tsx

import { InferGetServerSidePropsType } from 'next';

export const getStaticProps = async () => {
  return {
    props: {
      rawField: 'test'
    },
  };
};

export default function NoMetaProps(
  props: InferGetServerSidePropsType<typeof getStaticProps>
) {
  return 'props.rawField is String: ' + props.rawField;
}

This page would work fine without superjson or the babel transform. But after adding the babel transform, yarn build results in the following error:

Error occurred prerendering page "/no-meta". Read more: https://err.sh/next.js/prerender-error
Error: Error serializing `.meta` returned from `getStaticProps` in "/no-meta".
Reason: `undefined` cannot be serialized as JSON. Please use `null` or omit this value all together.

Looks like the issue is coming from superjson.serialize(), which returns meta: undefined when none of the properties needs custom serialization. However, NextJS has its own validation that throws if a prop is undefined.

created time in a month

push eventbenjamminj/babel-plugin-superjson-next

Ben Johnson

commit sha c446bf6adbb60b940949c075266392d9759ba8c6

Fix nextjs builds if no meta prop exists

view details

push time in a month

create barnchbenjamminj/babel-plugin-superjson-next

branch : no-transforms-nextjs

created branch time in a month

fork benjamminj/babel-plugin-superjson-next

Automatically transform your Next.js Pages to use SuperJSON

fork in a month

PR opened benjamminj/portfolio

Add superjson for better json serialization
+158 -40

0 comment

7 changed files

pr created time in a month

create barnchbenjamminj/portfolio

branch : superjson

created branch time in a month

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha dd069eb3b969898522c7e35a665c1e546abb79df

Change published date to display as "last updated" (#125) * Change references to the writing directory * Add last updated date to footer * Update e2e tests, remove reading time * Fix last updated bug

view details

push time in a month

delete branch benjamminj/portfolio

delete branch : last-update

delete time in a month

push eventbenjamminj/portfolio

Ben Johnson

commit sha 0cc29f3a6b5d7a30d2e8fbb927d6cce18f157350

Fix last updated bug

view details

push time in a month

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha e5a4685416646365a92a73feee2a61192953d2f8

Fix console warning (#124)

view details

Ben Johnson

commit sha f7dfa5d783a15d5b3006051cb275eb7bdcc7dc4c

Change references to the writing directory

view details

Ben Johnson

commit sha 6ccbbf2fb7842748b0ddfb5426ed8ec27d5de582

Add last updated date to footer

view details

Ben Johnson

commit sha 534fe29e4eb0affa16fda90b13b461a2fc285d61

Update e2e tests, remove reading time

view details

push time in a month

create barnchbenjamminj/portfolio

branch : last-update

created branch time in 2 months

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha e5a4685416646365a92a73feee2a61192953d2f8

Fix console warning (#124)

view details

push time in 2 months

delete branch benjamminj/portfolio

delete branch : fix-image-console-warning

delete time in 2 months

PR merged benjamminj/portfolio

Fix console warning
+16 -16

1 comment

15 changed files

benjamminj

pr closed time in 2 months

PR opened benjamminj/portfolio

Fix console warning
+16 -16

0 comment

15 changed files

pr created time in 2 months

create barnchbenjamminj/portfolio

branch : fix-image-console-warning

created branch time in 2 months

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha 84e6ab34412b12bae6434252264c0900cb765c56

Add writing guide (#123)

view details

push time in 2 months

delete branch benjamminj/portfolio

delete branch : writing-guide

delete time in 2 months

PR merged benjamminj/portfolio

Add writing guide
+42 -0

1 comment

2 changed files

benjamminj

pr closed time in 2 months

PR opened benjamminj/portfolio

Add writing guide
+42 -0

0 comment

2 changed files

pr created time in 2 months

push eventbenjamminj/portfolio

Ben Johnson

commit sha a338528f4eb4d4a51803e713cac77e11f4331a98

Add writing guide

view details

push time in 2 months

create barnchbenjamminj/portfolio

branch : writing-guide

created branch time in 2 months

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha 4cdbefd3b8931ce84fe1d34d72f5690267d00c4d

Update file system (#122) * Add file system ADR * Move `analytics` to the `lib` folder * Update ADR with styles folder * Move all style utilities into "styles" * Move all components into "components" folder * Fix test coverage reporting * Move all posts to top-level "posts" folder * Change post directory to "writing" * Move all images to top-level "image" folder

view details

push time in 2 months

delete branch benjamminj/portfolio

delete branch : flatter-filesystem

delete time in 2 months

PR merged benjamminj/portfolio

Update file system

See motivations in this ADR

+122 -71

1 comment

79 changed files

benjamminj

pr closed time in 2 months

PR opened benjamminj/portfolio

Update file system

See motivations in this ADR

+122 -71

0 comment

79 changed files

pr created time in 2 months

push eventbenjamminj/portfolio

Ben Johnson

commit sha 2b0e64fa42c8267d03a9196326dddf7896b2e98f

Move all components into "components" folder

view details

Ben Johnson

commit sha adbf449bb806857f0b51abcd9b4acbb0e9b6b95c

Fix test coverage reporting

view details

Ben Johnson

commit sha a08c8cca38ac675f7705c6c92bcce607e10f0088

Move all posts to top-level "posts" folder

view details

Ben Johnson

commit sha ac9aae72c43bd6d61fed6297ff11b4b0136b7443

Change post directory to "writing"

view details

Benjamin Johnson

commit sha f2537852a19e6aa2e65e2f5d4a6eb4badf533baa

Add bleed prop (#121)

view details

Ben Johnson

commit sha 2f9383ab4fa02fd376101e49318d6190ec11d9dd

Merge branch 'main' of https://github.com/benjamminj/portfolio into flatter-filesystem

view details

Ben Johnson

commit sha 4bd2beaf995bdf240cc6816b75bb1a80cd06483e

Move all images to top-level "image" folder

view details

push time in 2 months

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha f2537852a19e6aa2e65e2f5d4a6eb4badf533baa

Add bleed prop (#121)

view details

push time in 2 months

delete branch benjamminj/portfolio

delete branch : bleed-prop

delete time in 2 months

PR merged benjamminj/portfolio

Add "bleed" prop to Box
+114 -24

1 comment

3 changed files

benjamminj

pr closed time in 2 months

create barnchbenjamminj/portfolio

branch : flatter-filesystem

created branch time in 2 months

PR opened benjamminj/portfolio

Add "bleed" prop to Box
+114 -24

0 comment

3 changed files

pr created time in 2 months

create barnchbenjamminj/portfolio

branch : bleed-prop

created branch time in 2 months

push eventbenjamminj/portfolio

Benjamin Johnson

commit sha 69b204eb9e550cdc485225aba56ac8b4a87fe7ee

Fix tag link (#120) * Fix ANOTHER key warning 😱 * Fix tag page links * Update e2e test to catch Tag issue

view details

push time in 2 months

delete branch benjamminj/portfolio

delete branch : fix-tag-link

delete time in 2 months

more