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

Cursor+Devbox AI开发快速入门

1. 前言

今天无意间了解到 Cursor 和 Devbox 两大开发神器,初步尝试以后发现确实能够大幅度提升开发效率,特此想要整理成博客以供大家快速入门.

简单理解 Cursor 就是一款结合AI大模型的代码编辑器,你可以将自己的思路告诉AI,剩下的目录结构的搭建以及项目代码的实现均由AI帮你完成

Devbox 则是一款集成开发环境(各种开发语言)、测试、生产部署的云平台,在上面你可以快速创建你想要的数据库(MySQL、Redis、MongoDB),更重要的是你可以在上面初始化各种类型的项目(如SpringBoot、Django、React、Vue)并配合Cursor编辑器快速在本地完成开发

上图就是本人使用这两种工具没有独立编写过一行代码完成的项目,看到这里如果很感兴趣的话就来与我一起探索结合AI开发的神秘大门吧!

2. 安装使用方式

2.1 Cursor 安装

⭐ Cursor官方网站:https://www.cursor.com/

首先我们需要进入官网,然后点击DOWNLOAD FOR WINDOWS进行下载安装

Cursor是部分收费的,当然新用户注册有一定免费额度,这里给大家推荐一款无限邮邮箱:

⭐ 2925邮箱官网:https://www.2925.com/

登录成功即可使用Cursor进行本地开发了!

2.2 Sealos 使用

2.2.1 数据库配置

⭐ Sealos官方网站:https://hzh.sealos.run/

首先可以在 Sealos 应用平台中找到数据库应用,选择新建数据库即可进行自定义配置

创建完成后可以在详情左下角找到对应的数据库连接地址:(后续编写后端代码时需要用到)

3. 代码开发

3.1 后端项目开发

3.1.1 后端项目创建

首先可以在 Sealos 应用平台中找到devbox应用,选择新建项目即可进行自定义项目初始化

此处后端项目就选择go语言的Gin框架进行初始化,此处还要注意后端项目的启动端口号

在项目列表界面选择使用 Cursor 进行本地开发

3.1.2 后端提示词

使用快捷键CTRL+I显示AI代码编辑器,根据需要输入以下内容:

请为我开发一个基于 Go 和Gin 框架的 学生信息管理系统。学生要求包含字段有id学号,name姓名,classroom班级,项目需要实现以下四个 RESTful API 接口:

  1. 查询所有学生信息
    • 接口名: GET /api/stu/all
    • 功能: 从数据库的’list’集合中查询并返回所有学生
    • 参数: 无
    • 返回: 包含所有学生的列表
  2. 添加新的学生信息
    • 接口名: POST /api/stu/add
    • 功能: 向’list’集合中添加新的学生信息
    • 参数: { “id”: int, // 学号 “name”: string // 姓名,“classroom”: string // 班级 }
    • 返回: 新添加的学生对象,包含自动生成的唯一 id
  3. 更新学生信息
    • 接口名: POST /api/stu/update
    • 功能: 根据 id 更新学生信息
    • 参数: { “id”: int, // 学号 “name”: string // 姓名,“classroom”: string // 班级 }
    • 返回: 更新后的学生对象
  4. 删除学生信息
    • 接口名: POST /api/stu/del
    • 功能: 根据 id 删除指定的学生
    • 参数: id
    • 返回: 删除操作的结果(true or false)

技术要求:

  1. 使用 Gin 框架构建 API
  2. 使用 MySQL 作为数据库,进行数据库操作
  3. 实现异常处理
  4. 遵循 RESTful API 设计原则
  5. 添加基本的日志记录功能
  6. 实现后端cors跨域配置

这里数据库连接方式改成自己的!!!

以下是数据库连接方式:xxx

  1. 直接以当前目录作为项目根目。注意 此目录已经初始化完了go项目 直接修改即可
  2. 如果需要执行命令,请暂停创建文件,让我先执行命令

为这个项目中的所有代码写上详细注释

此时就会生成整个项目代码,再根据需要进行代码调整即可运行

3.2 前端项目开发

3.2.1 前端提示词

前端创建项目类似:选择使用React框架进行代码初始化,对应提示词如下:

请为我开发一个基于 React 框架以及Ant Design组件库的学生信息管理系统。要求如下:

  1. 功能需求:
    • 添加新的学生信息
    • 查看全部的学生信息
    • 删除某个指定的学生
    • 更新某个学生信息
  2. UI/UX 设计要求:
    • 全屏响应式设计,适配不同设备
    • 拥有亮色模式和夜间模式
    • 现代化、简洁的界面风格
    • 丰富的色彩运用,但保持整体和谐
    • 流畅的交互动画,提升用户体验
    • 在按钮和需要的地方添加上图标
    • 参考灵感:结合苹果官网的设计美学

要求:

  1. 直接以当前目录作为项目根目。注意 此目录已经初始化完了React项目结构 直接修改即可
  2. 如果需要执行命令,请暂停创建文件,让我先执行命令
  3. 请你根据我的需要,一步一步思考,给我开发这个项目。特别是UI部分 一定要足够美观和现代化
  4. 前端需要适配以下的后端接口

查询所有学生信息

- 接口名: GET /api/stu/all
- 功能: 从数据库的'list'集合中查询并返回所有学生
- 参数: 无
- 返回: 包含所有学生的列表

添加新的学生信息

- 接口名: POST /api/stu/add
- 功能: 向'list'集合中添加新的学生信息
- 参数: { "id": int, // 学号 "name": string // 姓名,"classroom": string // 班级 }
- 返回: 新添加的学生对象,包含自动生成的唯一 id

更新学生信息

- 接口名: POST /api/stu/update
- 功能: 根据 id 更新学生信息
- 参数: { "id": int, // 学号 "name": string // 姓名,"classroom": string // 班级 }
- 返回: 更新后的学生对象

删除学生信息

- 接口名: POST /api/stu/del
- 功能: 根据 id 删除指定的学生
- 参数: id
- 返回: 删除操作的结果(true or false)

最后稍加调整修改就能将前端项目运行起来了

4. 总结

相信大家自己摸索过后一定能够正确使用 Cursor + devbox 工具了,作为程序员重要的就是编码的思想,当自己的思路与需求能够理顺之后,代码的实现只是时间问题.而 Cursor 极大的提升了开发效率。当然 Sealos 平台还有其他的功能比如进行项目部署上线、定时任务等等。这些就靠大家自己摸索玩耍了!

相关文章:

Cursor+Devbox AI开发快速入门

1. 前言 今天无意间了解到 Cursor 和 Devbox 两大开发神器,初步尝试以后发现确实能够大幅度提升开发效率,特此想要整理成博客以供大家快速入门. 简单理解 Cursor 就是一款结合AI大模型的代码编辑器,你可以将自己的思路告诉AI,剩下的目录结构的搭建以及项目代码的实现均由AI帮…...

编写按层次顺序(同一层自左至右)遍历二叉树的算法。或:按层次输出二叉树中所有结点;

解:思路:既然要求从上到下,从左到右,则利用队列存放各子树结点的指针是个好办法。 这是一个循环算法,用while语句不断循环,直到队空之后自然退出该函数。 技巧之处:当根结点入队后,会…...

docker 安装mysql8.0.29

docker 安装mysql8.0.29 1、拉取镜像 docker pull mysql:8.0.292、启动容器 docker run -p 3306:3306 --name mysql8.0.29 -e MYSQL_ROOT_PASSWORDroot -d mysql:8.0.29-p 将本地主机的端口映射到docker容器端口(因为本机的3306端口已被其它版本占用,所以使用330…...

vue深入理解输入框字符限制的优化设计

文章目录 深入理解输入框字符限制的优化设计背景与挑战输入框限制的重要性常见需求 多种实现方法解析方法一:基于实时过滤的字符限制方法二:借助正则验证方法三:提交时二次校验 性能优化无障碍设计延伸场景与最佳实践1. 多语言国际化支持2. 动…...

完整指南:在Ubuntu 20.04 ROS 1环境中配置和使用Orbbec SDK

完整指南:在Ubuntu 20.04 ROS 1环境中配置和使用Orbbec SDK 要在Ubuntu 20.04系统中使用ROS 1环境配置和使用Orbbec SDK,可以遵循以下详细且系统化的步骤。这些步骤将引导您从下载必要的工具和SDK到学习如何使用这些资源,确保您能有效地利用…...

【Leetcode Top 100】138. 随机链表的复制

问题背景 给你一个长度为 n n n 的链表,每个节点包含一个额外增加的随机指针 r a n d o m random random,该指针可以指向链表中的任何节点或空节。 构造这个链表的 深拷贝。 深拷贝应该正好由 n n n 个 全新 节点组成,其中每个新节点的值…...

2024年12月HarmonyOS应用开发者基础认证全新题库

注意事项:切记在考试之外的设备上打开题库进行搜索,防止切屏三次考试自动结束,题目是乱序,每次考试,选项的顺序都不同 更新时间:2024年12月3日 这是基础认证题库,不是高级认证题库注意看清楚标…...

Flink问题总结

目录 1、Flink 的四大特征(基石) 2、Flink 中都有哪些 Source,哪些 Sink,哪些算子(方法) 3、什么是侧道输出流,有什么用途 4、Flink 中两个流如何合并为一个流 5、Flink 中两个流如何 join 6、Flink 中都有哪些 window,什么是滑动,滚动窗口 7、flink 中都有哪些…...

Day17 C++ vector 容器

2024.12.3 C vector 容器 C vector 容器 类比成数组 C 中的 vector 是一种序列容器,它允许你在运行时动态地插入和删除元素。 vector 是基于数组的数据结构,但它可以自动管理内存,这意味着你不需要手动分配和释放内存。 与 C 数组相比&a…...

常见Linux命令(详解)

文章目录 常见Linux命令文件目录类命令pwd 打印当前目录的绝对路径ls 列出目录内容cd 切换路径mkdir 建立目录rmdir 删除目录touch 创建空文件cp 复制文件或目录rm 移除文件或者目录mv 移动文件与目录或重命名cat 查看文件内容more 文件分屏查看器less 分屏显示文件内容head 显…...

AgGrid 组件封装设计笔记:自定义 icon 以及每个 icon 的点击事件处理

文章目录 问题目前解决效果 v1思路 目前解决效果 v0思路 代码V1 问题 自己封装的 AgGrid 如何自定义传递 icon &#xff0c;以及点击事件的处理&#xff1f; 目前解决效果 v1 思路 目前解决效果 v0 思路 一张图片说明一下 代码 V1 父组件使用 <template><MyPageL…...

vb.net常用命名空间

.NET的命名空间分为两个主要部分。一个是与微软程序语言相关的microsoft,一个是与操作系统相关的system,其中system主要分为应用程序类的命名空间和WEB程序类的命名空间两部分。 下面是常见的命名空间&#xff1a; Microsoft.VisualBasic 包含VB.NET的RUNTIME和编译运行VB程序…...

Netty面试内容整理-Netty 工作原理

Netty 的工作原理主要基于异步、事件驱动的 I/O 模型,结合 Reactor 多线程模式和高效内存管理来实现高并发网络通信。以下是 Netty 的工作原理详细解析: Reactor 线程模型 Netty 基于 Reactor 模式 来处理并发连接和 I/O 操作,主要分为 单线程模型、多线程模型 和 主从多线程…...

CMD 介绍

CMD 介绍 CMD 是 Windows 操作系统中的命令提示符&#xff08;Command Prompt&#xff09;程序&#xff0c;它是一种命令行工具&#xff0c;可以让用户通过键入命令来与计算机进行交互。 DOS: disk operating system, 磁盘操作系统. 是利用命令行来操作计算机. DOS 不是 CMD…...

【项目日记】仿mudou的高并发服务器 --- 实现HTTP服务器

对于生命&#xff0c;你不妨大胆一点&#xff0c; 因为我们始终要失去它。 --- 尼采 --- ✨✨✨项目地址在这里 ✨✨✨ ✨✨✨https://gitee.com/penggli_2_0/TcpServer✨✨✨ 仿mudou的高并发服务器 1 前言2 Util工具类3 HTTP协议3.1 HTTP请求3.2 HTTP应答 4 上下文解析模块…...

Android 使用TabLayout + ViewPager2 实现标签页的视图切换

学习笔记 步骤概览 添加依赖创建布局文件创建 ViewPager2 适配器设置 TabLayout 和 ViewPager2 的联动自定义每个页面内容&#xff08;Fragment&#xff09;自定义 TabLayout 样式&#xff08;可选&#xff09; 1. 添加依赖 首先&#xff0c;你需要在 build.gradle 文件中添…...

vue 项目实现阻止浏览器记住密码

​在各个浏览器中&#xff0c;登录输入密码一般都会弹出是否记住密码的功能&#xff0c;如果记住之后&#xff0c;会在各个密码框自动填充记住的密码&#xff0c;这无疑是一种不安全的操作&#xff0c;所以要实现禁用阻止浏览器记住密码的行为 查阅资料&#xff0c;也得到很多…...

7. 一分钟读懂“单例模式”

7.1 模式介绍 单例模式就像公司里的 打印机队列管理系统&#xff0c;无论有多少员工提交打印任务&#xff0c;大家的请求都汇总到唯一的打印管理中心&#xff0c;按顺序排队输出。这个中心必须全局唯一&#xff0c;避免多个队列出现资源冲突&#xff0c;保证打印任务井然有序。…...

28个炫酷的纯CSS特效动画示例(含源代码)

CSS是网页的三驾马车之一&#xff0c;是对页面布局的总管家&#xff0c;2024年了&#xff0c;这里列出28个超级炫酷的纯CSS动画示例&#xff0c;让您的网站更加炫目多彩。 文章目录 1. 涌动的弹簧效果2. 超逼真的3D篮球弹跳&#xff0c;含挤压弹起模态3. 鼠标放div上&#xff0…...

百问FB网络编程 - 主要函数介绍

6.3 网络编程主要函数介绍 下面全部函数的头文件都是 #include <sys/types.h> #include <sys/socket.h>6.3.1 socket函数 int socket(int domain, int type,int protocol);此函数用于创建一个套接字。 domain是网络程序所在的主机采用的通讯协族(AF_UNIX和AF_I…...

云计算——弹性云计算器(ECS)

弹性云服务器&#xff1a;ECS 概述 云计算重构了ICT系统&#xff0c;云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台&#xff0c;包含如下主要概念。 ECS&#xff08;Elastic Cloud Server&#xff09;&#xff1a;即弹性云服务器&#xff0c;是云计算…...

51c自动驾驶~合集58

我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留&#xff0c;CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制&#xff08;CCA-Attention&#xff09;&#xff0c;…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言&#xff1a; 通过AI视觉技术&#xff0c;为船厂提供全面的安全监控解决方案&#xff0c;涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面&#xff0c;能够实现对应负责人反馈机制&#xff0c;并最终实现数据的统计报表。提升船厂…...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用&#xff0c;可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器&#xff0c;能够帮助开发者更好地管理复杂的依赖关系&#xff0c;而 GraphQL 则是一种用于 API 的查询语言&#xff0c;能够提…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域&#xff0c;MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步&#xff0c;这两种通讯协议也正在被逐步融合&#xff0c;形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾&#xff1a; 在上一篇中&#xff0c;我们成功地为应用集成了数据库&#xff0c;并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了&#xff01;但是&#xff0c;如果你仔细审视那些 API&#xff0c;会发现它们还很“粗糙”&#xff1a;有…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象&#xff0c;只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意&#xff1a;它移动的位置必须是相连的有内容的单元格…...