Uso de Cursor para generar proyectos con FastAPI y Python
Clase 3 de 4 • Curso de tips y trucos de IA
Resumen
Aprende paso a paso a utilizar Cursor, un editor de texto con inteligencia artificial integrada, para generar código de calidad profesional con Python y FastAPI. Este enfoque moderno une herramientas automáticas y fundamentos sólidos de ingeniería de software, permitiendo que la AI sea una extensión de tu flujo de trabajo, no una sustitución del conocimiento técnico.
¿Qué es Cursor y cómo se compara con otros editores de código con AI?
Cursor destaca entre una variedad de editores modernos (como Devin, Windsurf y GitHub Copilot) gracias a tener AI integrada en todas sus funciones, sobre la base de Visual Studio Code. Permite editar, crear y guardar código o texto, siendo compatible con extensiones populares, por ejemplo la de Python.
- Cursor integra Large Language Models (LLMs) y tiene acceso a varios modelos como Claude 3.7.
- Ofrece una interfaz donde puedes interactuar con AI vía chat para generar código, solucionar errores o recibir sugerencias contextuales de programación.
- Cada acción de AI puede ser aceptada, revertida o revisada por el usuario, fomentando el control humano y la calidad del código generado.
¿Cuáles son los pasos esenciales para crear un proyecto FastAPI con Cursor y AI?
Con Cursor puedes iniciar un proyecto de Python y FastAPI casi sin escribir código manualmente, pero necesitas comprender las bases de software e intervenir en puntos clave.
- Crea un entorno de trabajo (repositorio y carpeta), instala la extensión de Python y selecciona el modelo AI adecuado.
- Utiliza prompts en lenguaje natural para pedir a Cursor que genere el esqueleto del proyecto usando herramientas como UV y FastAPI.
- Supervisa las sugerencias de AI, ajustando los archivos creados a lo que realmente necesitas (por ejemplo, simplificar la estructura a solo main.py y settings.py cuando el contexto lo requiera).
- Ejecuta comandos generados para instalar dependencias y configurar archivos esenciales como pyproject.toml.
¿Cómo se depuran errores y se resuelven problemas de dependencias en un entorno AI?
La integración de la AI facilita la identificación de errores y la búsqueda de soluciones en tiempo real.
- Cuando tienes un error, puedes copiar los mensajes de log y pedirle ayuda a Cursor para sugerir soluciones inmediatas.
- El uso del Debugger (depurador) permite inspeccionar variables, puertos y rutas en ejecución directamente desde la interfaz de Cursor.
- Puedes ajustar configuraciones, como cambiar el puerto del servidor FastAPI, y validar el funcionamiento con comandos de prueba (como curl), todo orquestado desde el chat AI.
¿Cómo se genera y organiza código a partir de imágenes y reglas personalizadas?
Cursor soporta el procesamiento de imágenes multimodales; por ejemplo, puedes añadir una imagen de un diagrama de base de datos para pedir la generación automática de modelos en Python.
- Al exportar un diagrama desde Excalidraw y cargarlo en Cursor, la AI reconoce atributos e implementa clases, como modelos de Pydantic, según el esquema visual.
- Puedes pedir que el código generado se almacene en archivos específicos, como schemas.py, asegurando la organización deseada por el equipo.
- Cursor también permite referenciar archivos y símbolos (ej.: main.py, clases, o documentación) en los prompts para contextualizar mejor las peticiones.
¿Cómo se indexa documentación externa relevante y se usan buenas prácticas con Cursor?
Para mejorar la precisión de la AI y generar mejores respuestas, puedes indexar documentación oficial directamente en Cursor.
- Agrega URLs (ej.: la documentación de FastAPI) desde el menú de configuración para que la AI utilice fuentes confiables y actualizadas.
- Al mencionar archivos, símbolos o documentación en los prompts, Cursor otorga contexto adicional generando código más alineado con las mejores prácticas del framework.
- Es posible automatizar la corrección de comentarios y docstrings para cumplir con reglas internas (como idioma y existencia de documentación en funciones y métodos).
Ejemplo práctico: - Solicita la corrección de todos los comentarios en inglés y completa los docstrings faltantes usando prompts específicos.
¿Qué son las Cursor Rules y cómo se integran en proyectos colaborativos?
Cursor permite definir reglas de estilo y calidad mediante archivos .cursor.rules
y carpetas dedicadas.
- Estas reglas pueden ser propias o descargadas de la comunidad (cursor.directory), adaptadas al lenguaje y framework que utilices (como FastAPI o TypeScript).
- Puedes crear archivos de reglas para distintos contextos o carpetas (ej.: solo para funciones), personalizando docstrings, idioma, uso de Pydantic base models y más.
- La integración de reglas fomenta el desarrollo colaborativo y el cumplimiento de los lineamientos de la compañía.