shadcn.io is not affiliated with official shadcn/ui
Freelancer Rates Budget Profile Block for Vue
A freelancer profile that turns a budget into hours: six skills with proficiency and hourly rate, the whole hours the budget buys in each, and an Open for work switch that decides the action.
Installation
Overview
Let a client see what their money buys before they write, with this freelancer profile for Vue with Ark UI. Inside a hairline frame with a plus mark on each corner, the first band names the freelancer. A budget goes in a Number Input with steppers, from $500 to $20,000, next to an Open for work Switch. A table lists six skills, each with a read-only Rating for proficiency, an hourly rate and the whole hours the budget buys in it, and a line says how many of the six cover a typical project of 38 hours. The foot, ruled by Guides, holds a status line beside the one action: a Shine Button to start a project while she is open, and an outline Join the waitlist button while she is not. It's built from Number Input, Switch, Rating, Badge, Avatar, Shine Button, Button and Guides, with a CSS entrance only. For a freelancer marketplace, a studio rate card or any service priced by the hour.
FAQ
How do I change the skills and rates?
Edit SKILLS at the top: each has a name, a proficiency in halves from 0 to 5 and a rate in dollars an hour. MIN_BUDGET, MAX_BUDGET and TYPICAL_HOURS set the field's range and the project length the summary compares against. Hours are the budget divided by the rate, rounded down, so there is nothing else to keep in step.
What if I type a number outside the range?
The table uses the nearest allowed value and the line under the field says so, for example Using the least, $500. A blank field counts as the least. Digits typed in a right-to-left locale are read correctly. On React Aria the field commits on blur, Enter or an arrow rather than on each keystroke.
What does the Open for work switch change?
Only the foot's action. While it is on, the one primary button reads Start a project; when you turn it off it is replaced by an outline Join the waitlist button, and the status line says when she takes work again. Both answer in the page and nothing is sent, so you can wire the first to your project form and the second to a waitlist.
What stays local, and how do I make it real?
The budget, the switch and both buttons. The status line says Project noted in this demo, nothing was sent, or the same for the waitlist. To make it real, post the budget and the chosen skills to your API from the button handlers and show its answer in the same line.
Is it accessible?
The field and the switch have visible and spoken names, the table has column and row headers, and each skill's proficiency is spoken as a number out of 5 while the drawn stars are hidden from assistive technology. The status line is a polite live region present from the start. Every control works from the keyboard.
Related
- Financial Planner Fee Calculator ProfileQuotes and services
- Consultant Availability ProfileSchedules and booking
- Tattoo Piece Estimator ProfileQuotes and services
- Illustrator Commission Builder ProfileQuotes and services
- Investor Allocation Drift ProfileTeam dashboards
- Barista Recipe Brew Timer ProfileQuotes and services