← Jobs

Senior React dev — build a small component library + swipe-deck for an existing Vite app

Budget: $25.0 - $40.0 HOURLY / PART_TIME ⭐ 5.00 (12) South Africa

javascript, css, react-js

Fixed-scope contract, ~2-3 weeks. Possibility of small follow-on work, but this contract is self-contained. We have an existing React 18 + Vite single-page app (hand-rolled CSS with CSS custom properties — no Tailwind, no component-library framework). We build most screens ourselves. We want an experienced React engineer to set up the foundation we build against, and to build the one genuinely tricky interaction component, then hand it over clean. **Exactly what you'd deliver (this is the whole scope):** 1. A small **component library** from our Figma designs: design tokens wired to CSS custom properties (colours, spacing, radii, type), plus a handful of base primitives (button, input, chip, card, switch, modal) with their states (default/hover/active/focus/disabled). Plain CSS + CSS variables, matching our existing conventions — not a rewrite to Tailwind or MUI. 2. One **swipe-deck** component: a Tinder-style card stack with smooth drag/gesture handling and like/pass/super-like, as a reusable component with a clean prop API. 3. (Optional, only if time allows) a **custom video player** shell with an overlay layer we can render a watermark into. **What you would NOT do:** you're not building our full app, our backend, auth, or the bulk of the screens — we do that. We need the foundation done well and the swipe interaction done right, delivered into our repo with a short README. **Must-haves** - Strong React 18 (hooks, composition, clean prop APIs). - Fluent with **plain CSS and CSS custom properties** — you don't reach for Tailwind/MUI by default. - Real **interaction/animation** experience: gesture/drag handling, `requestAnimationFrame`, GPU transforms. Show us something you've built that moves. - You've owned a **component library / design system** before. - Comfortable working into an existing codebase and matching its conventions. **Please note:** this is for an adult (18+) content platform. You would only ever work with placeholder/dummy UI data and components — never explicit material — but we want you to be comfortable with an adult-industry client before we start. Please confirm in your reply. **To apply,** brief answers to the five supplied questions. Generic proposals are ignored. **Budget:** hourly, we'll discuss rate. Please give a rough hour estimate for items 1 and 2.
Openen op Upwork