John Singh's Work | ContraWork by John Singh
John Singh

John Singh

Web development, document formatting and spreadsheet support

Cover image for My own script kit for
My own script kit for Shopify catalog work, shown on made-up files for a fictional lighting brand. New products go into an import file built on the store's export columns, each as a draft, and a missing spec is left empty and listed. Edits to existing listings come first as a side-by-side preview to approve. Afterwards it compares the fields in the before and after exports you supply and lists differences outside the agreed batch (here, one planted price change); it can't verify that an export is complete. Tested on made-up files only, not on a client's store, and it never writes to a store itself.
1
11
Cover image for Two short sample decks I
Two short sample decks I made to show how I format presentations: an operations review for a fictional bakery, with a native chart and an action table, and a service introduction for a fictional bike-repair business, with a process diagram. Everything stays editable: real text, native shapes and a real chart object with its data embedded in the file. They're fictional portfolio samples, not client work, and the figures are illustrative. I checked them in LibreOffice renders, so your own PowerPoint is the final check.
0
10
Cover image for To show how I work
To show how I work on page speed, I built a fictional product page for a made-up desk brand twice, as two static pages (not a Shopify store and not a client's): once with six problems that commonly slow a store down, then with them fixed. In Google PageSpeed Insights' mobile lab test on 22 September 2026, the score went from 68 to 96 and the main product photo from 24.3 s to 2.7 s. I also wrote a sample report on it: each cause ranked by the time it added, what was measured, and the check that shows it's fixed. It shows the method, not a result on a real store, and I don't promise a score.
1
15
Cover image for RosterPress is my own browser
RosterPress is my own browser tool for small shops that make personalised team apparel. It reads the roster a coach sends (CSV, tab- or semicolon-separated text, or an Excel .xlsx) and turns it into individual proofs, a PDF production packet, packing labels and a clean CSV that all agree. Anything uncertain, such as a missing size, a possible duplicate or one number on two names, becomes a question for a person rather than a silent fix. A revised file shows exactly what changed. Every team and name shown is fictional, and purchasing isn't open yet.
0
16