Mark Centoni
Hopelab
Roles: Fullstack Software Engineer
Client website: hopelab.org

Hopelab is a transformative social innovation lab and impact investor working to support the mental well-being of adolescents ages 10-25, especially BIPOC and LGBTQ+ young people. I built the headless CSM site with React/Nextjs/GraphQL on the frontend and WordPress/ACF/WPGraphQL/Pantheon on the backend.

Hopelab: Redesign

Hopelab Redesign

Hopelab Redesign thumbnail
Hopelab people thumbnail
Hopelab story carousel thumbnail
Hopelab investments grid thumbnail
Hopelab hero thumbnail

New site build for the redesign using React, Typescript, Tailwind and Next.js with the app router using GraphQL with WordPress WPGraphQL + ACF for the editor and API.

The custom design required a completely custom UI library of 40+ components including multiple dialog, carousel, card and filterable grid variants, using Storybook to facilitate building the frontend and backend concurrently. The pagebuilder was created with ACF flexible content fields with cloned component and helper field groups, and 6 custom content types. In order to support combinations of components not covered in the design and with the designer not available during development, a good deal of design thinking was applied to standardize grids, vertical spacing and sizing options to the client's needs.

Hopelab: Live Previews

Hopelab live previews

Hopelab live previews thumbnail
Hopelab live previews thumbnail

Using Next.js API routes and middleware, I connected WordPress preview functionality to Next.js ISR caching so live pages are cached and statically generated for speed, while previews are refreshed live. Middleware handles preview refresh and exit, and a revalidation API with tags is connected to a WordPress publish hook, so when updates are published they are available live immediately without rebuilding the entire site.

There are also live component previews added to the WordPress post editor to see component edits without leaving the editor.

Hopelab: Megamenu

hopelab megamenu

I built the API in PHP/Wordpress and frontend in React for a highly customizable, responsive megamenu.

Hopelab: Layouts

hopelab layouts

I built several customizable responsive content layouts with a custom API for cases studies, insights reports and teams.

Hopelab: Social Sharing

hopelab social sharing

I built several social sharing tools to help Hopelab visitors share their great work on social media platforms, including selectable share snippets.

Hopelab: Mobile

hopelab mobile

Each of the features I worked on for Hopelab were built mobile first so they would be easily accessed where their target audiences spend the most time.

Hopelab: Upgrades

hopelab home

I upgraded Hopelab to the latest versions of key software and plugins to keep them secure and using the latest features. Upgrading WP Advanced Custom Fields and Nextjs in particular required significant API and frontend modifications that afforded them a number of optimizations in both editing and displaying content.

Hopelab: Data Visualization

hopelab charts

I built an editor with an API and frontend components for Hopelab to manage data and insert and display data visualizations in a variety of content objects.