¡Bienvenido a MyPortfolio! Este es un proyecto Full-Stack profesional que presenta mi experiencia como analista y desarrollador de software. MyPortfolio nace como una plataforma de presentación personal para mostrar proyectos, habilidades y trayectoria profesional de forma elegante, interactiva y escalable.
Este proyecto está organizado como un monorepo y contiene:
- Cliente (
client/): Aplicación frontend en React + Vite, diseñada para ser interactiva y visualmente atractiva, incluyendo un logotipo animado personalizado. - Servidor (
server/): backend con Node.js, Express y MongoDB.
Incluye control de calidad, buenas prácticas de código, documentación de API y configuración para despliegue futuro.
Sigue estos pasos para configurar y ejecutar el proyecto localmente:
- Clonar el repositorio:
git clone https://github.com/Defer1189/myPortfolio.git
cd myPortfolio- Instalar dependencias de la raíz (herramientas globales como Husky, Prettier, ESLint):
npm install- Instalar dependencias del cliente:
cd client
npm install
cd ..- Instalar dependencias del servidor:
cd server
npm install
cd ..El servidor utiliza archivos .env para la configuración específica del entorno.
- En la carpeta
server/, crea un archivo.env.developmentpara el entorno de desarrollo:
# server/.env.development
PORT=3000
DB_URI=mongodb://localhost:27017/myportfolio_dev
NODE_ENV=development
SWAGGER_SERVER=http://localhost:3000- Para producción, crea un archivo
server/.env.productioncon las credenciales y URLs correspondientes (este archivo NO debe ser commiteado si contiene secretos):
# server/.env.production
PORT=PRODUCCION_PUERTO
DB_URI=MONGODB_ATLAS_URI
NODE_ENV=production
SWAGGER_SERVER=https://tu_dominio.com
# Añade otros secretos como JWT_SECRET si es necesario- (Opcional) Crea
server/.env.stagingsi planeas usar un entorno de pre-producción.
Puedes ejecutar el cliente y el servidor de forma independiente, o ambos simultáneamente:
-
Ejecutar ambos (Cliente y Servidor) simultáneamente (recomendado para desarrollo): Desde la raíz del proyecto (
myPortfolio/), ejecuta:npm run dev
Ambos servidores se iniciarán en paralelo.
-
Servidor Backend (independiente):
-
Modo Desarrollo (desde
myPortfolio/server/):npm run dev
La API estará disponible en
http://localhost:3000(o el puerto configurado en.env.development). La documentación de Swagger estará enhttp://localhost:3000/api-docs. -
Modo Producción (desde
myPortfolio/server/):npm start
La API se ejecutará con la configuración de
.env.production.
-
-
Cliente Frontend (independiente):
- Modo Desarrollo (desde
myPortfolio/client/):La aplicación React estará disponible ennpm run dev
http://localhost:5173(o el puerto por defecto de Vite).
- Modo Desarrollo (desde
¡Visita la aplicación desplegada para verla en acción!
Aquí encontrarás capturas de pantalla o un GIF animado del logotipo y las secciones clave de la aplicación.
(Se añadirán imágenes aquí una vez estén disponibles.)
Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.
¡Tus contribuciones son bienvenidas! Si deseas contribuir a este proyecto, por favor, consulta la guía de contribución en CONTRIBUTING.md para más detalles sobre cómo empezar y las pautas a seguir.
¿Tienes preguntas, ideas o feedback? ¡Contáctame a través de mi perfil de GitHub o abre un issue!