当前位置: 首页 > 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…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

【位运算】消失的两个数字(hard)

消失的两个数字&#xff08;hard&#xff09; 题⽬描述&#xff1a;解法&#xff08;位运算&#xff09;&#xff1a;Java 算法代码&#xff1a;更简便代码 题⽬链接&#xff1a;⾯试题 17.19. 消失的两个数字 题⽬描述&#xff1a; 给定⼀个数组&#xff0c;包含从 1 到 N 所有…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

ios苹果系统,js 滑动屏幕、锚定无效

现象&#xff1a;window.addEventListener监听touch无效&#xff0c;划不动屏幕&#xff0c;但是代码逻辑都有执行到。 scrollIntoView也无效。 原因&#xff1a;这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作&#xff0c;从而会影响…...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生&#xff0c;我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要&#xff0c;而您认真负责的教学态度&#xff0c;让课程的每一部分都充满了实用价值。 尤其让我…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

MySQL 知识小结(一)

一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库&#xff0c;分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷&#xff0c;但是文件存放起来数据比较冗余&#xff0c;用二进制能够更好管理咱们M…...