Project Planner
atroui/project-plannerFreeBlock
Multi-step project scoping planner UI.
Install it
npx shadcn@latest add https://atroui.com/r/project-planner.jsonSource
1"use client";23import { ArrowLeft, ArrowRight, CheckCircle2 } from "lucide-react";4import { AnimatePresence, motion, useReducedMotion } from "motion/react";5import Link from "next/link";6import { useRouter } from "next/navigation";7import { useMemo, useState } from "react";89import { cn } from "@/lib/utils";1011type PlannerState = {12 projectType: "mvp" | "full" | "";13 features: string[];14 aiRequired: boolean | null;15 aiType: string;16 budget: string;17 timeline: string;18 name: string;19 email: string;20};2122const STEPS = [23 "Project type",24 "Features",25 "AI needs",26 "Budget",27 "Contact",28 "Estimate",29] as const;3031const FEATURE_OPTIONS = [32 "User authentication",33 "Payments / billing",34 "Admin dashboard",35 "Real-time features",36 "AI / ML feature",37 "Mobile-responsive",38 "Third-party integrations",39];4041const AI_TYPES = [42 "Document processing",43 "Chat / conversational",44 "Content generation",45 "Search / RAG",46 "Classification / tagging",47];4849const BUDGETS = [50 { id: "<2k", label: "Under $2k" },51 { id: "2k-5k", label: "$2k - $5k" },52 { id: "5k-10k", label: "$5k - $10k" },53 { id: "10k+", label: "$10k+" },54];5556function estimateProject(state: PlannerState): {57 service: string;58 serviceId: string;59 priceRange: string;60 timeline: string;61 summary: string;62} {63 const featureCount = state.features.length;64 const hasAI =65 state.aiRequired === true || state.features.includes("AI / ML feature");6667 if (state.projectType === "mvp" && featureCount <= 3 && !hasAI) {68 return {69 service: "7-Day MVP Sprint",70 serviceId: "mvp-sprint",71 priceRange: "$4,800",72 timeline: "7 days",73 summary: "A focused sprint to ship your core workflow fast.",74 };75 }7677 if (hasAI && featureCount <= 4) {78 return {79 service: "AI Feature Integration",80 serviceId: "ai-integration",81 priceRange: "$2,400 - $4,000",82 timeline: "1-2 weeks",83 summary:84 "Add a well-designed AI feature to your existing or new product.",85 };86 }8788 if (state.features.includes("Admin dashboard") && featureCount >= 4) {89 return {90 service: "Full-Stack Product Build",91 serviceId: "full-stack-build",92 priceRange: "$8,000 - $15,000",93 timeline: "4-8 weeks",94 summary: "End-to-end product development with multiple features.",95 };96 }9798 if (state.projectType === "mvp") {99 return {100 service: "7-Day MVP Sprint",101 serviceId: "mvp-sprint",102 priceRange: "$4,800 - $6,000",103// … truncated
What it pulls in
npm packages
Other registry items
Files it writes
More from atroui
All 81 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Analytics Provideranalytics-provider | atroui | Blocks | Free | 1 dep | |
| AR Portfolioar-portfolio | atroui | Blocks | Free | 1 dep | |
| Before / Afterbefore-after-slider | atroui | Blocks | Free | no deps | |
| Calendly Embedcalendly-embed | atroui | Blocks | Free | 1 dep | |
| Changelogchangelog | atroui | Blocks | Free | no deps | |
| Command Menucommand-menu | atroui | Blocks | Free | 4 deps | |
| Contact Formcontact-form | atroui | Blocks | Free | 2 deps | |
| Contextual CTAcontextual-cta | atroui | Blocks | Free | 2 deps |
