Rebuilding my personal website: Getting Started

Rebuilding my personal website: Getting Started

My website is super out of date so I decided to rebuild it using Begin. In this first part we'll setup a new project with a landing page.

Simon MacDonald’s avatar

Simon MacDonald
10 mins to read

Tools for testing Functional Web Apps

Tools for testing Functional Web Apps

Tests should be proportionate to our cloud functions in scope and size. Fast and small, just like the services they're testing.

Taylor Beseda’s avatar

Taylor Beseda
3 mins to read

Begin Book Club

Begin Book Club

We are starting a book club. We love to read at Begin! Our daily stand-up calls frequently include updates and recommendations on books we are reading, so we wanted to share that with our community.

Simon MacDonald’s avatar

Simon MacDonald
2 mins to read

Fat Functions are an Anti-Pattern

Fat Functions are an Anti-Pattern

The debate over whether to use a single-purpose function vs. a fat lambda continues to this day, and in this post, we hope to convince you that Fat Lambda is truly an anti-pattern.

Simon MacDonald’s avatar

Simon MacDonald
6 mins to read

How-to: resize and transform images automatically without relying on 3rd party APIs

How-to: resize and transform images automatically without relying on 3rd party APIs

I got fed up with too many "A"s in my JAMstack and built an image processing plugin to eliminate one of them.

Ryan Bethel’s avatar

Ryan Bethel
7 mins to read

Shopify Webhooks with Begin

Shopify Webhooks with Begin

Receive and respond to Shopify webhooks with a free Begin.com account. Leverage the power and scale of AWS Lambda without the laborious Amazon web console.

Taylor Beseda’s avatar

Taylor Beseda
4 mins to read

Tale of the Tape: Highlight.js vs Shiki

Tale of the Tape: Highlight.js vs Shiki

One of the best things about JavaScript is the ecosystem, as there always seems to be a package that can be used to accomplish your task. However, one of the worst things about JavaScript is that there are often many packages that you can use to achieve the same task. It’s not always obvious which package is best. How do we know which one to use?

Simon MacDonald’s avatar

Simon MacDonald
4 mins to read

Adding dark mode to the personal website template

Adding dark mode to the personal website template

Dark Mode is a popular feature of many websites. It helps to reduce eye strain by adjusting the brightness of the screen according to current lighting conditions. In this post, we will progressively enhance our personal website template to add dark mode functionality.

Simon MacDonald’s avatar

Simon MacDonald
4 mins to read

Avoid Surprise Bills from AWS

Avoid Surprise Bills from AWS

Architect users often ask for some way to avoid large surprise bills from AWS. The budget-watch plugin sets a cost limit for your app and temporarily shuts it down when the limit is reached. It is the first step to solving this problem for our community.

Ryan Bethel’s avatar

Ryan Bethel
6 mins to read

Architect 8.4: say hello to Lambda tree shaking

Architect 8.4: say hello to Lambda tree shaking

One of the thing that sets OpenJS Architect apart from other serverless tools is its opinion that serverless apps work best when composed of many small, discrete Lambda cloud functions.

Ryan Block’s avatar

Ryan Block
2 mins to read

Architect 8.3: custom file paths & much more

Architect 8.3: custom file paths & much more

By popular demand: OpenJS Architect 8.3 (El Chupacabra) now supports custom file paths, custom Lambda templates, a fresh new local (and global) preferences file, and lots more!

Ryan Block’s avatar

Ryan Block
2 mins to read

The fastest request is the one you never make

The fastest request is the one you never make

C.R.E.A.M — Cache rules everything around me

Paul Chin Jr’s avatar

Paul Chin Jr
3 mins to read

Architect 8.0: HTTP catchall syntax, @proxy, new HTTP methods, npm 7 compatibility

Architect 8.0: HTTP catchall syntax, @proxy, new HTTP methods, npm 7 compatibility

More flexible and powerful than ever, with greedy catchall syntax, and legacy server migration with @proxy

Ryan Block’s avatar

Ryan Block
3 mins to read

Begin now ships API Gateway HTTP APIs by default

Begin now ships API Gateway HTTP APIs by default

We're excited to announce that all new Begin apps will now ship with next-generation AWS API Gateway HTTP APIs by default!

Paul Chin Jr’s avatar

Paul Chin Jr
3 mins to read

Architect 7.0: HTTP APIs and even better Sandbox testing!

Architect 7.0: HTTP APIs and even better Sandbox testing!

By popular demand: API Gateway HTTP APIs are now the default in Architect serverless apps

Ryan Block’s avatar

Ryan Block
3 mins to read

Begin supports renaming default GitHub branches

Begin supports renaming default GitHub branches

We're excited to announce that Begin apps will deploy with any default branch you configure in GitHub.

Paul Chin Jr’s avatar

Paul Chin Jr
1 mins to read

How to rename your `master` branch to `main` (or something else)

How to rename your `master` branch to `main` (or something else)

Terms like master-slave carry powerful implications of racial supremacy and oppression, and have no place in our lexicon. Efforts across our industry are rightfully underway to retire such references to the dustbin of history, where they belong.

Ryan Block’s avatar

Ryan Block
2 mins to read

Serverless Deno + React with server-side rendering on Begin

Serverless Deno + React with server-side rendering on Begin

Deno is a next-generation JavaScript runtime that features a built-in TypeScript compiler and code bundler, allowing developers to create applications without Webpack, Babel, or Rollup.

Paul Chin Jr’s avatar

Paul Chin Jr
4 mins to read

Testing in Deno: the basics

Testing in Deno: the basics

Deno is a next-generation JavaScript runtime that makes testing a first class capability. In this guide we'll show you how to use Deno to write an automated test suite. In part 2 we will setup Begin.com for CI/CD and module publishing.

Brian Leroux’s avatar

Brian Leroux
4 mins to read

A brand new primitive for your Begin apps: event functions!

A brand new primitive for your Begin apps: event functions!

Today we're introducing an entirely new primitive to Begin apps: event functions (@events)!

Ryan Block’s avatar

Ryan Block
2 mins to read