About RiverX
RiverX is an AI platform for building and evolving websites and web applications. It brings model selection, coding agents, repository-backed projects, live previews, database provisioning, and publishing into a connected workflow. People should be able to move from an idea to a working application, understand what the agent changed, and keep improving it without losing control of their code.
Our product spans a Next.js and React frontend, a Node.js backend, agent and workspace services, Supabase for authentication and core application data, and Turso for project databases and the skills catalog. GitHub, Railway, Vercel, and external model providers are part of the engineering environment. Each role below owns a specific part of making that experience dependable.
The role
You will build the interface people use to turn an idea into a running application. The work is more demanding than a chat window: a project can be provisioning, an agent can be editing files, a preview can be restarting, and a user may be reviewing changes or stopping a run. Your job is to make those states understandable, responsive, and recoverable.
What you will own
- Build and refine the dashboard, project workspace, conversation interface, preview controls, file and terminal surfaces, and publishing flows using React, Next.js, and TypeScript.
- Design client state around streaming events, queued messages, cancellation, reconnects, and server-confirmed state. Preserve drafts and user intent through retries and navigation.
- Make project creation, template selection, model selection, and database setup feel like one coherent workflow, with useful progress and actionable errors.
- Improve initial loading, hydration, rendering cost, memory use, and interaction responsiveness. Investigate the actual route and request path before calling a performance problem solved.
- Build accessible components with keyboard support, visible focus, responsive layouts, meaningful status announcements, and consistent light and dark themes.
- Handle untrusted Markdown, long model output, large histories, and embedded previews without letting one document or run destabilize the interface.
- Work with backend and design partners to define API contracts, remove ambiguous states, and verify changes through realistic integration and browser checks.
What you should bring
- Strong practical experience shipping React and TypeScript applications, including Next.js server and client rendering boundaries.
- A clear understanding of asynchronous state, effects, request cancellation, caching, and race conditions in interactive applications.
- Confidence with semantic HTML, CSS, responsive design, accessibility, and browser debugging tools.
- Experience diagnosing slow or unreliable interfaces using network traces, profiling, logs, and reproducible cases.
- Good judgment about when to reuse a component, simplify a flow, or introduce a new abstraction.
- Examples of interfaces you helped ship, with an explanation of the technical tradeoffs and your own contribution.
Useful additional experience
Developer tools, code editors, terminal interfaces, iframe communication, server-sent events, AI product interfaces, or rendering complex user-generated content.
Early priorities
Understand the path from project creation to an agent run and published preview. Then take ownership of a concrete usability or reliability issue, ship an accessible improvement, and demonstrate that interrupted and failed flows recover as well as the happy path.
Include in your application
A product or repository link and one example of a difficult frontend state-management, performance, or accessibility problem you solved.
Working together
This is a full-time, remote role. We work through clear written proposals, reproducible examples, thoughtful code or design reviews, and direct collaboration when a problem needs it. You should be comfortable owning an outcome across implementation, validation, documentation, and follow-through. Please include your location and time zone in your application so we can discuss practical collaboration arrangements.
How to apply
Apply through this page with your résumé as a PDF. Add links to relevant work and a short note explaining your contribution to a project, a difficult decision you made, and what you learned. Work can come from employment, open source, independent projects, or research. Share only material you have permission to share; please do not include customer data, credentials, or confidential code.
