Skip to content
View DuncanWilder's full-sized avatar

Block or report DuncanWilder

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
DuncanWilder/README.md

Hi, I'm Duncan 👋

I'm a full-stack software engineer based in Manchester, UK.

🖼️ Sometimes I help people code.

👨‍💻 I also write on Substack on how to write scalable code, or make technical decisions that scale.

Feel free to check out my LinkedIn.

Check out some of the stuff I've been playing around with in my pinned repositories 👇

Other work

I'm not ready to share the source code for these, but here's some other things I've tinkered with.

Saltplate

Saltplate recipes page

Saltplate is a recipe management website I built. Add your own recipes to it, add them to a planner + scale them for how many each needs to feed, then add them to a smart shopping list, designed to make the weekly shop easy.


Gooder News

Gooder News homepage

Gooder News is an AI-powered news aggregator that uses the latest AI features to filter and group positive news stories from mainstream UK publishers.

It’s easy to get bogged down in all the negativity that exists on the Internet. But there’s also a lot of positive news out there—it’s just harder to find.

There are sites like Positive News that focus on positive stories, but they often don’t discuss current events such as general elections or football.

That’s where Gooder News comes in. See the latest news, without the negativity.

Lamina

Gooder News homepage

Lamina is a dependency inversion layer that sits on top of component testing libraries such as Enzyme or React Testing Library. It abstracts component-testing logic and libraries into a single API, avoiding tying your test code to a specific library.

When Enzyme fell out of favour in 2021, we had a big project to migrate to RTL. Who knows how long it'll last until it falls out of favour itself. By using an abstraction layer on top of your component tests, you can avoid the pain of switching between testing libraries without needing big re-writes every few years.

Pinned Loading

  1. BooleanSearchParser Public

    A way to translate Boolean Search logic into MySQL Fulltext Parameters

    PHP 7 3

  2. testflex Public

    TestFlex is a dependency inversion layer for your unit test code. Write your code with TestFlex, then use any test runner you want.

    JavaScript

  3. highdash Public

    A lightweight replacement for Lodash

    TypeScript

260 contributions in the last year

Contribution Graph
Day of Week April May June July August September October November December January February March
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Less
No contributions.
Low contributions.
Medium-low contributions.
Medium-high contributions.
High contributions.
More
Loading A graph representing DuncanWilder's contributions from March 31, 2024 to April 03, 2025. The contributions are 66% commits, 34% pull requests, 0% issues, 0% code review.   Code review   Issues 34% Pull requests 66% Commits

Contribution activity

April 2025

DuncanWilder has no activity yet for this period.
Loading