当前位置: 首页 > article >正文

【PromptCoder + Bolt.new】Cascade模式自动生成页面和对应的路由

【PromptCoder + Bolt.new】Cascade模式自动生成页面和对应的路由

官网:PromptCoder

PromptCoder:智能代码提示词生成

PromptCoder是一款利用人工智能技术的智能代码生成工具。它能够识别设计图或截图,并自动生成与之匹配的前端代码。无论是复杂的交互组件还是简洁的静态页面,PromptCoder都能帮助开发者轻松复刻一个完整的页面或原型图,极大地提升开发效率,减少手动编码的时间和错误率。

PromptCoder的核心特点

交互简单易用:通过先进的图像识别技术,PromptCoder能够理解设计意图。开发者只需上传一张设计图或截图,即可得到精确的代码提示和生成的代码片段。

  • 从免费开始:PromptCoder提供免费注册体验,让开发者可以无门槛地尝试其强大的功能,无需担心前期成本投入。
  • 多框架支持:PromptCoder支持多种前端框架,如React、Vue、Flutter等,使得开发者可以无缝集成到现有的项目中,无需担心兼容性问题。
  • 多种模式选择:普通模式支持从截图中获取准确信息并生成提示词,cascade模式会将截图中潜在的路由点分析出来,并直接应用在代码生成中!
实战案例:从dribbble中复制一个dashboard页面
  1. 首先,我们在dribbble网站上寻找我们喜欢的设计稿,这个dashboard不错,简洁清新的感觉我很喜欢,只需要截图就行!

请添加图片描述

  1. 将设计图上传到PromptCoder,工具自动识别设计图中的各个元素,并根据选择的框架(如React)生成提示词和代码框架。(如果要生成对应的路由,记得一定选择cascade mode!)

请添加图片描述
3. 进入bolt.new,将生成好的提示词复制进去即可!

请添加图片描述
我们不仅会得到相似的页面,同时也完成各种路由的跳转,例如 manage,history 等。。。

提示词示例

Create detailed Next.js components with these requirements:

Use 'use client' directive for client-side components

Style with Tailwind CSS utility classes for responsive design

Use Lucide React for icons (from lucide-react package). Do NOT use other UI libraries unless requested

Use stock photos from picsum.photos where appropriate, only valid URLs you know exist

Configure next.config.js image remotePatterns to enable stock photos from picsum.photos

Avoid duplicate components

Automatically source and display logos from a CDN in design placeholders

Follow proper import practices:

Use @/ path aliases
Keep component imports organized
Update current src/app/page.tsx with new comprehensive code
Don't forget root route (page.tsx) handling
You MUST complete the entire prompt before stopping

Layout Overview

Page Structure: The dashboard follows a common modern web app layout: a sidebar for navigation (fixed position on larger screens), a main content area displaying the financial data, and potentially a header that would be part of the main content for smaller screens. The main content is further divided into sections for wallet balance, quick transactions, detailed transactions, and a money statistics graph. This structure aims for optimal information density and ease of access.
Component Hierarchy: We can infer a component hierarchy like this:
DashboardLayout: Top-level layout containing the Sidebar and DashboardContent.
Sidebar: Contains Logo, NavigationMenu, and potentially a profile section.
DashboardContent: Container for the main dashboard elements. Likely involves WalletSummary, QuickTransactionsSection, TransactionsSection, and MoneyStatisticsGraph.
WalletSummary: Displays the wallet balance and contains SendMoneyButton and RequestMoneyButton.
QuickTransactionsSection: Displays a list of recent transactions. Uses QuickTransactionItem for each transaction.
TransactionsSection: Displays detailed transaction information. Uses TransactionItem for each transaction.
MoneyStatisticsGraph: Renders the line graph showing money statistics. Might leverage a charting library.
QuickTransactionItem: Represents a single quick transaction.
TransactionItem: Represents a single detailed transaction.
NavigationMenu: Contains NavigationItem(s).
NavigationItem: Represents a single item in the navigation menu.
Responsive Design Considerations: The layout should be responsive and adapt to different screen sizes. The sidebar might collapse into a hamburger menu on smaller screens. The content areas (wallet balance, transactions, graph) might re-arrange to a vertical flow on smaller screens. The graph should be responsive in size to fit the screen. Grid layouts (CSS Grid or next/image with layout="fill") can be leveraged for flexible and adaptive sizing.
Styling Specifications
Color Schemes: The screenshot implies a clean and modern color scheme. Common choices include:
Primary: A primary brand color (likely what's used in the Finma logo – potentially a blue or green). Used for key interactive elements.
Secondary/Accent: Another brand color used sparingly.
Background: A light gray or off-white background for the main content area.
Text: Dark gray or black for primary text, potentially a lighter gray for secondary text. Darker colors used for the graph lines.
Success/Positive: Usually a shade of green for income.
Error/Negative: Usually a shade of red for expenses.
Typography: The font family should be modern and readable (e.g., Inter, Roboto, Open Sans). Font sizes should be adjusted for different content areas (e.g., larger font for wallet balance, smaller font for transaction details). Font weights should be used to create visual hierarchy.
Spacing and Alignment: Consistent spacing is crucial for a clean and professional look. Employ a spacing scale (e.g., 8px, 16px, 24px, 32px) and adhere to it throughout the dashboard. Align content vertically and horizontally for a balanced layout. Consider using CSS Flexbox or Grid for alignment.
Animations and Transitions: Subtle animations and transitions can enhance the user experience. Examples include:
Hover effects: Button hovers should provide visual feedback (e.g., background color change, slight scaling).
Navigation transitions: Smooth transitions when navigating between pages or sections (e.g., fade-in, slide-in).
Loading indicators: Display a loading spinner or progress bar while data is being fetched. Consider using Tailwind CSS transition-* classes.
Interactive Elements
User Inputs: The dashboard includes buttons for sending and requesting money. These buttons should trigger appropriate actions (e.g., modals, forms). Further inputs might exist within the "Manage" section.
Navigation: The navigation menu allows users to switch between different sections of the dashboard. Clicking on a navigation item should update the displayed content. Use next/link for client-side navigation. The active navigation item needs to be clearly highlighted (e.g., different background color, bold font weight).
Loading States: When fetching data, the dashboard should display a loading indicator (e.g., spinner, skeleton UI). This prevents the user from thinking the application is frozen. Use a state variable (isLoading) and conditionally render the loading indicator.
Micro-Interactions: Micro-interactions can enhance the user experience. Examples include:
Button click feedback: Visual feedback when a user clicks a button (e.g., a ripple effect).
Tooltip: Display tooltips on hover for less obvious elements.
Animated graph updates: Animate the graph when new data is loaded.
Component Architecture
Atomic Design: The components should ideally follow an Atomic Design methodology (Atoms, Molecules, Organisms, Templates, Pages).
Atoms: Basic building blocks like buttons, labels, input fields, icons, and typography styles.
Molecules: Combinations of atoms, such as WalletSummary (which combines labels and buttons). NavigationItem (icon + label).
Organisms: More complex components that consist of molecules and/or atoms, such as QuickTransactionsSection.
Templates: Define the overall structure of a page. The DashboardLayout is a template.
Pages: Instances of templates populated with data, representing specific routes.
Props and State: Pass data down to components using props. Manage component-specific state using React's useState hook. Utilize context for application-wide state management (e.g., user authentication, theme).
Data Fetching: Use useEffect hook along with libraries like axios or fetch to retrieve data from an API. Libraries such as SWR or React Query can be used for efficient data fetching, caching, and revalidation. Ensure proper error handling and loading states during data fetching.
Reusability: Design components to be reusable across different parts of the application. This reduces code duplication and improves maintainability.
Typescript: Use Typescript to provide type safety and improve code maintainability, especially when passing complex data structures between components.
Routes
/: The main dashboard route. This route displays the wallet summary, transactions, and money statistics.
/my-card: Route to display the user's card information.
/receipts: Route to display the user's receipts.
/manage: Route to manage settings and configurations.
/history: Route to view the user's detailed transaction history.
/reports: Route to generate financial reports.

立即访问官网:PromptCoder,获取5积分!


http://www.kler.cn/a/533571.html

相关文章:

  • unity学习26:用Input接口去监测: 鼠标,键盘,虚拟轴,虚拟按键
  • MySQL常用数据类型和表的操作
  • 蓝桥杯刷题DAY3:Horner 法则 前缀和+差分数组 贪心
  • 计算机视觉-边缘检测
  • Kafka流式计算架构
  • 使用Visual Studio打包Python项目
  • 10.单例模式 (Singleton Pattern)
  • 防火墙策略
  • react的antd表格数据回显在form表单中
  • 2024 TCSVT: LS2T2NN
  • 深入解析 Chrome 浏览器的多进程架构:标签页是进程还是线程?(中英双语)
  • 20250205——Windows系统基于ollama的DeepSeek-R1本地安装
  • 备战蓝桥杯-并查集
  • 【力扣】54.螺旋矩阵
  • PyQt6/PySide6 的 QMainWindow 类
  • 数据传输-工作习惯问题
  • CNN的各种知识点(五):平均精度均值(mean Average Precision, mAP)
  • GaussDB安全配置建议
  • 本地安装部署deepseek
  • 使用 Swift 完成FFmpeg音频录制、播放和视频格式转换应用
  • RabbitMQ 从入门到精通:从工作模式到集群部署实战(一)
  • 【OpenCV实战】基于 OpenCV 的多尺度与模板匹配目标跟踪设计与实现
  • 简易C语言矩阵运算库
  • 【C语言】指针详细解读3
  • 激光工控机在自动化领域中有哪些作用?
  • vim modeline