Simon MacDonald

Simon MacDonald @macdonst

About: Father, Software Engineer, Comic Enthusiast, Coffee Lover and Head of Developer Experience at Begin.com

Location:
Ottawa, ON 🇨🇦
Joined:
Feb 23, 2017

Simon MacDonald
articles - 39 total

Island Architecture with Web Components

Learn about island architecture with web components and how it fits seamlessly with Enhance's philosophy.

Learn More 1 0Jul 18 '24

Component Communication in Enhance

Enhance makes it easy to build applications composed of web components. Each component encapsulates its own UI and functionality. However, under some circumstances you may need to communicate between components to share data or react to changes elsewhere on the page.

Learn More 1 0Jul 18 '24

A React Developers Guide to Writing Enhance Components

Frequently, we are asked by React developers why patterns they have learned while writing components using JSX do not translate to writing web components. In this post, I'll try to capture some common gotchas that developers coming from React or other JavaScript view frameworks may run into when writing plain vanilla web components.

Learn More 3 1Mar 8 '24

Removing React is just weakness leaving your codebase

It’s 2024, and you are about to start a new project. Do you reach for React, a framework you know and love or do you look at one of the other hot new frameworks like Astro, Enhance, 11ty, SvelteKit or gasp, plain vanilla Web Components?

Learn More 76 59Jan 31 '24

Shadow DOM: Not by Default

Why doesn't Enhance advocate for diving straight into the shadow DOM and how could you even write web components without using the shadow DOM?

Learn More 6 0Aug 18 '23

Introducing Enhance Movies

We are excited to present our non-trivial learning application, Enhance Movies, designed to highlight the exceptional web development experience you get from Enhance. With a strong focus on simplicity, performance, progressive enhancement, and offline local development capabilities, this application is set to transform your understanding of what can be done by focusing on the web platform.

Learn More 10 0Jul 26 '23

Why you should roll your own auth

Conventional wisdom states that rolling your own authentication system can be a significant undertaking that requires a lot of expertise in security and web development. In most cases, using a third-party authentication service is better than trying to build your own from scratch. However, there are some cases where rolling your own auth may be beneficial.

Learn More 1 0May 10 '23

Supporting Publish Own Site, Syndicate Elsewhere

Our next step towards making it easier for everyone to participate in the open and indie web is the release of @enhance/arc-plugin-posse. This plugin checks your RSS feed for new content and syndicates it to whatever platforms you choose. The plugin is designed to work seamlessly with the Enhance Blog Template, but you can also deploy it as a standalone plugin for existing sites.

Learn More 2 0May 1 '23

Webmention Support in Enhance Blog Template

We want to make it easier for folks to participate in the open and indie web. Our first step towards this goal was the publication of our Enhance Blog Template which enables you to publish your site and own your content. Our next step is adding support for incoming and outgoing webmentions to the blog template.

Learn More 1 0Apr 19 '23

Making the leap to AWS with Architect

A guest post from Ameya Charnalia detailing his experience moving from Heroku to AWS via Architect.

Learn More 0 0Apr 14 '23

Adding Comments to the Enhance Blog Template

Recently, we released the Enhance Blog Template, and one thing I felt was missing was the ability to have random people on the internet disagree with me. That’s right. We’re adding a comment section.

Learn More 1 0Mar 30 '23

Introducing the Enhance Blog Template

One thing we’ve heard from users is that they want more options for getting started using Enhance. Today we are excited to announce our first Enhance application template - Blog.

Learn More 1 0Mar 17 '23

Enhance API Routes and OpenAPI

Documenting Enhance API's with OpenAPI.

Learn More 3 0Mar 8 '23

Why does everyone "suddenly" hate Single Page Apps?

My thoughts on the recent backlash against Single Page Applications

Learn More 23 24Feb 22 '23

Why we Server Side Render Web Components

Our rational on choosing the platform over chasing JavaScript frameworks.

Learn More 9 0Feb 10 '23

I just wanted to buy pants. How excessive JavaScript is costing you money

A cautionary tale about our over-dependence on client-side JavaScript.

Learn More 14 8Jan 24 '23

Using Fast Components in an Enhance App

Fast is a library of web components and framework for building web components from Microsoft. With a minor amount of configuration you can use Fast components in your Enhance app.

Learn More 3 0Jan 20 '23

Converting Lit Components to Enhance

Lit is a fine framework for building web components, but there are a few reasons you may want to convert a Lit component into an Enhance component. Read on to find out how to avoid some common web component pitfalls.

Learn More 4 0Jan 17 '23

On the twelfth day of Enhancing: Debugging

How to debug your remote applications.

Learn More 0 0Jan 6 '23

On the eleventh day of Enhancing: Environment Variables

Setting environment variables to enable different behaviors in production.

Learn More 1 0Jan 5 '23

On the tenth day of Enhancing: Deploying your app

Deploy your Enhance app to the cloud using the Begin CLI.

Learn More 0 0Jan 4 '23

On the ninth day of Enhancing: Externalizing Scripts

To improve developer experience let's externalize some scripts.

Learn More 1 0Jan 3 '23

On the eighth day of Enhancing: Progressively Enhanced Forms

Let's progressively enhance our submit button.

Learn More 0 0Jan 2 '23

On the seventh day of Enhancing: Forms

Getting started storing data is a snap with Enhance and HTML forms.

Learn More 2 0Jan 1 '23

On the sixth day of Enhancing: Head component

Overriding the head component to provide social links.

Learn More 3 0Dec 31 '22

On the fifth day of Enhancing: Enhance Styles

Let's apply some styling to our example application.

Learn More 0 0Dec 29 '22

On the fourth day of Enhancing: Composing elements

Building web components out of smaller components is one of the most powerful features of web components.

Learn More 3 0Dec 29 '22

On the third day of Enhancing: API routes and the Store

On day three, we’ll introduce API routes and the store.

Learn More 1 0Dec 28 '22

On the second day of Enhancing: Your first page and component

Picking up from where we left off yesterday. Let’s add a new page to our application.

Learn More 3 0Dec 27 '22

On the first day of Enhancing: Getting Started

We embark on a 12 day journey to build and deploy your first Enhance app.

Learn More 2 0Dec 26 '22