Sabin Mainali's Work | ContraWork by Sabin Mainali
Sabin Mainali

Sabin Mainali

B2B SaaS Content, Email, Websites & Automation

    4
    Followers
Followed by Sagar N, Aman K, and Aymane M
Brand Fill Loader: your logo is the loader. Drop in any logo and it fills up like liquid while a rolling counter climbs to 100%, then the logo pops and a check badge lands. It is made for SaaS upload, export and onboarding screens, where a generic spinner would normally sit. To rebrand it, replace one logo image, retype three texts (status, done message, brand name) and change two colors. The second brand in the video (Nimbus Pay) was made through the SVGator MCP in six edits. Named layers: logo, status-text, status-done, brand-name, progress-bar, badge-bg, percent. Motion designed in code, project built and rebranded through the SVGator MCP, then checked in the SVGator editor. X post: https://x.com/sabinm47/status/2112050094589751574
2
2
113
Prove You're Human: a Halloween captcha that trains a ghost Built with the Rive CLI and GPU Canvas. It starts as free Wi-Fi at a guesthouse in the Himalayas. A friendly helper called Momo asks you to prove you're human: select all squares with mountains. Then feet. Then a human. The last picture pulls back, and you see she was standing in every one of them. Whatever you pick is "Correct". The captcha thanks you for the training data, plays your own clicks back in reverse, and every square you picked flips over into a piece of her. Then she ticks "I'm not a robot". Play again and the check changes. There are five, and each one teaches her one more human thing: Look: select the squares. Move: slide the piece to fit. The second slider runs backwards, and she replays your drag. Talk: type the word you see. She types it back the right way round: OPEN THE DOOR. Find: click in order, ending with "you". She walks your route, footprints pointing the wrong way. Final: select all squares with Kichkandi. She is not in the picture any more. Kichkandi is a ghost from Nepali folklore. You can only recognise her by her feet: they point backwards. Play it: https://prove-youre-human-i0ijdu.rive.to Rive CLI + GPU Canvas The scene is RML generated by a Python script and built, checked and published with the Rive CLI (--verify, scripted --pointer/--advance playthroughs of all five checks, push, --publish=web). The agent was Claude Code. GPU Canvas runs two WGSL shaders: captcha.wgsl draws the captcha board from my drawing: square selection, the pans between rounds, her eyes catching light, the tiles flipping into her portrait, the slide-to-fit puzzle piece, her footprint trail, and the blank paper where she used to stand. snow.wgsl is the night outside: Himalayan ridges, prayer flags, snow that slows and then rises as the dread grows, and her footprints in the snow coming closer every check. Luau scripting runs the game (five checks, input, replay of your own clicks and drag) and feeds both shaders. Data binding: 68 view model properties drive the UI, the shaders and Momo. A state machine gives Momo six moods (idle, happy, unsure, scared, gone, evil), switched by data. Human touch Both pictures are my own hand drawings: the village scene is the captcha photo, and the full figure is her portrait. Sound is synthesised in code (an original music-box tune, drone, stinger, knock, footsteps). No stock audio. The voiceover is the Windows speech voice. #rivehalloweenchallenge @rive_app
0
175
Cover image for Product video: WhatsApp number setup tutorial, built in code
Product video: WhatsApp number setup tutorial, built in code
0
3
Cover image for Spec sample: calm, funny brand for an anxiety clinic
Spec sample: calm, funny brand for an anxiety clinic
0
5