Choose Create or Explore
The + and / controls reveal supported actions. Explore helps prioritize work, prepare interview answers, and draft text from bounded Workspace and Opportunity context.
Full-stack software developer
Full-stack web product · Job-search operating system
Roleway turns a scattered job search into focused Workspaces and clear next steps. Keep roles, interviews, people, and documents together, then ask its AI Agent to explore your search or prepare a Workspace, task, note, or Next Action for approval.
Explore your search, turn a request into a proposal, and stay in control of every saved change.
The + and / controls reveal supported actions. Explore helps prioritize work, prepare interview answers, and draft text from bounded Workspace and Opportunity context.
Agent asks for missing details one at a time and clarifies the target Opportunity, Workspace, or date. It can propose a Workspace, task, note, or Next Action.
Review the destination and proposed fields before approval. Applied means the record was saved; Open takes you to the result. Expired or stale Next Action proposals require a fresh review.
Product showcase
Selected product surfaces and public demonstrations. Demo images use illustrative records; captions identify those examples.



A serious job search spreads across browser tabs, spreadsheets, calendars, documents, and notes. Different career targets blur together, follow-ups are missed, preparation loses context, and it becomes difficult to decide what deserves attention next.
An Account owns a Career Profile and multiple Workspaces, each with its own Jobs, Opportunities, preferences, people, documents, goals, and results. Home orders current work and each Opportunity retains its dossier and one Next Action. Agent helps users explore selected search context and create through conversation: clarify the destination, gather missing details, review the exact proposal, and open the saved result after approval.
Save a listing to Inbox. Track it as an Opportunity when it deserves active work, with a stage and one concrete Next Action.
Keep interviews, contacts, preparation tasks, and document versions connected to the right Opportunity and Workspace.
Home brings due work and upcoming interviews together. Notifications and Insights reflect activity recorded in the product.
Connect your own provider for Agent; core tracking works without it. Provider charges are separate from Roleway capacity limits.
Roleway is a pnpm and Turborepo TypeScript monorepo. A Next.js application composes shared workflow rules and Zod schemas, while Supabase provides authentication, PostgreSQL, row-level security, and the durable records behind Workspaces and Agent runs.
Server Components load authenticated Workspace data and Server Actions handle mutations. Client components stay focused on interactive controls, editors, collection views, onboarding, and the installable PWA shell.
Opportunity transitions, workflow labels, Agent permissions, and Zod boundary schemas live in shared packages so domain rules can be tested independently of route components.
Supabase migrations are the source of truth for Workspaces, Jobs, Opportunities, tasks, contacts, interviews, documents, notifications, analytics, and Agent records. Row-level security and server checks enforce ownership.
Next.js Server Actions gather bounded account context before one generation request through custom HTTP adapters for OpenAI, Anthropic, Gemini, OpenRouter, or compatible endpoints. Zod validates the structured answer and proposals before storage. Responses appear after completion; this implementation does not use Vercel AI SDK or token streaming. User-supplied credentials are encrypted with AES-256-GCM.
Agent proposes Workspaces, Opportunity tasks, Next Actions, and notes. Explicit approval invokes PostgreSQL functions that recheck ownership, proposal status, expiry, and domain rules in a transaction. Stale Next Action proposals are rejected instead of overwriting intervening edits. Explore uses bounded snapshots, not exhaustive account search. Documents contribute metadata; their full bodies, notes, activity history, and Help Center articles are not retrieved into model context.
These decisions affect what users can do, where product rules live, and how the system handles failure or change.
An Account can hold separate Workspaces for different career targets. Preferences, Jobs, Opportunities, documents, people, goals, notifications, and analytics stay isolated instead of becoming one shared junk drawer.
A Job stores discovered listing data. Tracking it creates an Opportunity with a stage and one concrete Next Action, so the active list represents deliberate work rather than another bookmarks folder.
Core tracking works without AI. Create and Explore are discoverable from the same + and / menu. Agent asks for missing details in chat, then presents the exact destination, text, and date for approval. Applications and employer messages remain user actions.
PostgreSQL row-level security scopes records to their owner and Workspace, while server actions independently authenticate callers and constrain mutations by owner and Workspace IDs.
The live product and public repository provide concrete evidence of the implemented features, architecture, tests, and documentation.