Kishan Jotangiya's Work | ContraWork by Kishan JotangiyaKishan Jotangiya
Graphic Designer
Openfield: an unofficial Upwork redesign concept. A working prototype with ⌘K search, instant filters and a proposal form that shows your take-home pay before you bid. Not affiliated with Upwork. Nation: homepage and brand concept for an AI store builder. A concept I designed and built (menu system, real-seller hero, prompt-to-store demo, product tour and four inner pages) using Nation's public site assets. Live: nation.adbuddy.in (http://nation.adbuddy.in) Developed AdBuddy.in (http://AdBuddy.in), a digital media and AdTech platform connecting local businesses with advertising opportunities through salon-based digital screens. Worked on website development, SEO, AEO, GEO, structured data, website speed optimization, and digital marketing. Also contributed to platform planning and digital workflows involving advertiser analytics, salon partner management, and centralized ad content management. Title: THE LAST LIGHT
Play it: https://the-last-light-te5g2j.rive.to
(https://the-last-light-te5g2j.rive.to)Features used: Rive CLI + GPU Canvas (both), plus Scripting, Data Binding, State Machines and Audio
Description:
A little ghost, a dying lantern, and a mansion that will not open. THE LAST LIGHT is a small playable horror game that lives in a single Rive file.
You can only see what your lantern lights. Three lost souls hide in the dark; stay beside each one to hear its story and take its key. Haunted pumpkins chase you when you stray close, and once you free the first soul, something else wakes up: the Shade, which you only ever see as two red eyes in the dark. Spend light to throw a flare and drive it back, relight your lantern at the candles, and reach the door before the darkness closes. Win, and a darker night begins.
How it was built:
Rive CLI: the whole scene (mansion, graveyard, characters, text, animations) is written in RML, then verified, pushed and published from the terminal.
GPU Canvas: one WGSL shader draws the fog, the lantern's circle of light, the darkness around it, the flare ring, the lightning flash and the red danger vignette. The shader is the gameplay, not decoration: the darkness is what hides the enemies.
Scripting (Luau): movement, enemy chase behaviour, the Shade, candles, flares and difficulty per night.
Data Binding: about 50 view model properties connect the script to the artwork (positions, opacities, the lantern bar, story text).
State Machines: four layers for ambient motion, the ghost's moods (idle, drift, scared, celebrate, fade), the screens, and the door.
Audio: nine sound effects synthesized from scratch for this project.
Controls: arrows or WASD to move, Space to flare, or click and hold to steer. Click once to start.