Kit de Inicio: Proyecto de Desarrollo de Software con TurboRepo
Este repositorio sirve como un kit de herramientas listo para usar y un esqueleto de proyecto que permite un inicio rápido en la construcción de aplicaciones de software innovadoras. Aprovecha tecnologías y frameworks avanzados como TurboRepo, NestJS, Vue 3 con Vite, TypeScript y Nuxt.js para facilitar un desarrollo de software fluido y eficiente.
Tabla de Contenidos
- Características y Contenidos
- Prerrequisitos
- Primeros Pasos
- Primeros Pasos con Docker
- Variables de Entorno
- Volar y Visual Studio Code (Modo Takeover)
- Scripts de Nivel Superior
- Extensiones de Visual Studio Code
- Mejoras y Reportes de Errores
- Contribución
- Licencia
Características y Contenidos
- TurboRepo: El repositorio está configurado para trabajar con TurboRepo, una herramienta que simplifica la gestión de múltiples repositorios interconectados dentro de un solo proyecto. Esto te permite enfocarte en el desarrollo de funcionalidades mientras TurboRepo se encarga de la organización.
- NestJS: El backend de la aplicación está construido sobre NestJS, un framework basado en Node.js que permite la creación de APIs escalables y modulares. Totalmente integrado con TypeScript, NestJS ofrece rendimiento y código legible.
- Vue 3 + Vite: La interfaz de usuario se basa en Vue 3, la última versión del popular framework de JavaScript. También usamos Vite, una herramienta rápida y moderna para construir interfaces de usuario.
- TypeScript: Todo el proyecto está escrito en TypeScript, mejorando la seguridad del código y facilitando el refactorizado y mantenimiento.
- Nuxt.js: El repositorio también incluye una configuración de ejemplo para Nuxt.js, un framework para crear aplicaciones SSR (Renderizado del lado del servidor) con Vue.js. Esto asegura un buen rendimiento SEO y carga rápida de contenido.
- Electron: El proyecto también puede empaquetarse como una aplicación de escritorio usando Electron, lo que permite crear aplicaciones multiplataforma.
- Capacitor: Capacitor está integrado para permitir la creación de aplicaciones móviles nativas usando tecnologías web.
- Docker: Docker se utiliza para contenerizar y gestionar el despliegue de la aplicación.
- Paquete Compartido: El repositorio incorpora un paquete compartido para mejorar la reutilización y mantenibilidad del código.
- Configuración de Pruebas con Vitest y Jest: El repositorio incluye una configuración predefinida para pruebas usando Vitest y Jest. Puedes escribir y ejecutar fácilmente pruebas unitarias para tus componentes Vue y código TypeScript. Simplemente utiliza la configuración de prueba proporcionada y aprovecha la rapidez de Vitest junto con el robusto framework de Jest.
Prerrequisitos
Se sugiere instalar globalmente en el entorno de desarrollo:
Comenzando
1. Clone the repository
git clone https://github.com/DhivinX/turbo-starter.git2. Enter your newly-cloned folder
cd turbo-starter3. Install the project and build packages in libs folder
pnpm install4. Dev: Run web with hot reload
pnpm dev-web # or make dev-web5. Dev: Run API project with hot reload
Note that you need to create the .env file in the project root directory beforehand
You should copy the .env.example file and rename it to .env
cp .env.example .envThen you can configure database access and other server settings
pnpm dev-api # or make dev-api6. Or run API and WEB projects with hot reload parallel
pnpm dev # or make dev
Comenzando con Docker
1. Clone the repository
git clone https://github.com/DhivinX/turbo-starter.git2. Enter your newly-cloned folder
cd turbo-starter3. Install the project and build packages in libs folder
pnpm install4. Copy env.example to .env.local and pass wished variables:
Change DATABASE_HOST to "postgres"
cp .env.example .env.local5. Build image:
make docker-build-local6. Run API and WEB projects development process with hot reload in docker container
make docker-run-local
Variables de entorno
.env.example
# Frontend: API server connection configuration
VITE_WEB_DEFAULT_LOCALE="en"
VITE_WEB_API_URL="http://localhost"
VITE_WEB_API_PORT=3000Backend public url
API_PUBLIC_URL=http://localhost:3000HTTP / HTTPS server config
API_HTTP_PORT=3000Cross-Origin Resource Sharing domain origins
More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
API_HTTP_CORS=["http://localhost", "http://localhost:8080", "http://localhost:8081", "http://localhost:8082", "app://localhost", "capacitor://localhost"]Keys required for hashing passwords and tokens
They should be filled with random, unique strings
API_SECRETS_PWDSALT="123456"
API_SECRETS_JWT="123456"Database type: postgres, mysql, sqlite etc.
More info: https://typeorm.io
DATABASE_TYPE="postgres"Database connection config
DATABASE_HOST="localhost"
DATABASE_PORT=5432Database name and user credentials
DATABASE_NAME="turbonv"
DATABASE_USER="postgres"
DATABASE_PASSWORD="root"Disable this in the production version of the application
More info: https://typeorm.io/faq#how-do-i-update-a-database-schema
DATABASE_ENABLE_SYNC=trueVolar y Visual Studio Code (Modo de toma de control)
Volar ahora es la extensión Vue - Official, por lo que el modo de toma de control ya no es necesario en la versión 2.0. Por favor, habilite la extensión incorporada TypeScript and JavaScript Language Features, si la había deshabilitado antes.
Scripts de nivel superior
#### DESARROLLO
dev- ejecutar todas las aplicaciones simultáneamente con recarga en calientedev-api- ejecutar el proyecto API con recarga en calientedev-web- ejecutar el proyecto WEB con recarga en calientedev-web-electron- ejecutar el proyecto WEB en aplicación electron con recarga en calientedev-nuxt- ejecutar la aplicación nuxt con recarga en calientedev-mobile- ejecutar la aplicación móvil con recarga en caliente
build- compilar todos los paquetes y aplicacionesbuild-api- compilar la aplicación del proyecto APIbuild-web- compilar la aplicación del proyecto WEBbuild-web-electron- compilar la aplicación electron con proyecto webbuild-nuxt- compilar la aplicación nuxtbuild-mobile- compilar la aplicación móvil
start- iniciar todas las aplicacionesstart-api- iniciar la aplicación del proyecto APIstart-web- iniciar un servidor web estático local que sirve los archivos desde diststart-nuxt- iniciar la aplicación nuxt
mobile-android- compilar la aplicación móvil y abrir en Android Studiomobile-ios- compilar la aplicación móvil y abrir en Xcode
test- ejecutar pruebas para todos los paquetes y aplicacioneslint- analizar todos los paquetes y aplicacionesclean- eliminar el directorio dist de todos los paquetes y aplicaciones
Extensiones de Visual Studio Code
{
"recommendations": [
"vue.volar",
"dbaeumer.vscode-eslint",
"editorconfig.editorconfig",
"visualstudioexptteam.vscodeintellicode",
"mikestead.dotenv",
"firsttris.vscode-jest-runner"
]
}
Requerido
vue.volar- Funciones de Lenguaje Vue (Volar)syler.sass-indented- Resaltado de sintaxis Sass.dbaeumer.vscode-eslint- Extensión ESLint para VS Code.editorconfig.editorconfig- EditorConfig para VS Code.
Opcional
mikestead.dotenv- DotENV - Soporte para la sintaxis de archivos dotenvvisualstudioexptteam.vscodeintellicode- IntelliCode
Mejoras y Reportes de Errores
Si encuentras un error o tienes una mejora en mente, por favor publica issues en GitHub.
Contribución
Si tienes ideas para mejorar este starter o deseas añadir nuevas funcionalidades, siéntete libre de enviar pull requests. ¡Tu contribución puede ayudar a otros desarrolladores a iniciar sus proyectos aún más rápido!
Licencia
Este kit de inicio se proporciona bajo la licencia MIT.
--- Tranlated By Open Ai Tx | Last indexed: 2026-05-04 ---
