Skip to content

Writing

Notes from building things

Build logs, architecture decisions and the occasional debugging war story. Published on dev.to and mirrored here.

7 min read

A template is just a list with a flag: reusable shopping lists

Reusable 'Weekly essentials' lists shipped with one new schema field and zero new tables. The design fork (new model vs status vs flag), the copy-both-ways helper, and the three ripple effects one boolean forced.

reactnative
aws
architecture
buildinpublic

6 min read

You can't GROUP BY in DynamoDB — so the client does the counting

The feature was one line of SQL: my most-added grocery items, ranked. DynamoDB doesn't have the clause. Here's the client-side aggregation that shipped instead — with explicit scan budgets, honest counts, and a documented exit ramp.

aws
dynamodb
reactnative
buildinpublic

5 min read

I deleted the drag-and-drop library and shipped four buttons instead

Drag-to-reorder on a grouped React Native list set off a cascade of Android gesture bugs — crash, refresh freeze, header overlap, janky scroll. The fix wasn't debugging harder. It was re-reading the requirement.

reactnative
expo
android
buildinpublic

3 min read

Set up React Query on an Expo Project

There is a good chance that you will need to interact with an external API to receive and send data,...

mobile
react
reactnative
tutorial

1 min read

Introduction to the project (Frontend)

In this series, I will begin a journey into creating a platform that will allow anyone willing, to...

javascript
opensource
typescript
nextjs

2 min read

2D Array - HackerRank JavaScript Solution

Given a 6 X 6 Array arr: 1 1 1 0 0 0 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...

javascript
tutorial
programming
algorithms