MERN Calendar es una aplicación de calendario construida con el stack MERN (MongoDB, Express, React, Node.js) que te permite gestionar eventos y citas de manera sencilla y eficiente. Este proyecto incluye un backend basado en Express y un frontend construido con React, ambos gestionados utilizando pnpm.
- Creación, edición y eliminación de eventos.
- Visualización de eventos en un calendario.
- Interfaz de usuario moderna y responsiva.
- API RESTful para la gestión de eventos.
- Frontend: React
- Backend: Express.js
- Base de datos: MongoDB
- Gestión de paquetes: pnpm
-
Node.js: 14 o superior.
-
pnpm: Asegúrate de tener pnpm instalado. Si no lo tienes, puedes instalarlo globalmente con el siguiente comando:
npm install -g pnpm
-
MongoDB: Necesitarás una instancia de MongoDB (puede ser local o en la nube, como MongoDB Atlas).
git clone https://github.com/tu-usuario/mern-calendar.git
cd mern-calendar
Navega al directorio del backend y usa pnpm
para instalar las dependencias:
cd backend
pnpm install
Navega al directorio del frontend y también instala las dependencias:
cd frontend
pnpm install
Asegúrate de configurar las variables de entorno necesarias para la conexión a la base de datos y otros servicios.
Crea un archivo .env
en el directorio backend
y añade lo siguiente:
DB_URL=tu_uri_de_mongodb
PORT=8080
En el directorio backend
, ejecuta el siguiente comando para iniciar el servidor del backend:
pnpm dev
En el directorio frontend
, ejecuta el siguiente comando para iniciar el servidor de desarrollo del frontend:
pnpm dev
Una vez que ambos servidores estén en funcionamiento:
- El backend estará corriendo en
http://localhost:8080
(por defecto). - El frontend estará disponible en
http://localhost:4531
.
mern-calendar/
│
├── backend/ # Backend de Express
│ ├── config/ # Archivos de configuración (por ejemplo, MongoDB)
│ ├── controllers/ # Lógica para manejar las rutas
│ ├── models/ # Modelos de base de datos
│ ├── routes/ # Rutas del servidor
│ └── server.js # Archivo principal del servidor
│
├── frontend/ # Frontend de React
│ ├── public/ # Archivos estáticos públicos
│ ├── src/ # Archivos fuente del frontend
│ ├── pages/ # Páginas principales de la aplicación
│ └── App.js # Archivo principal de la aplicación
│
└── README.md # Este archivo
Si deseas contribuir a este proyecto, por favor sigue estos pasos:
- Haz un fork del repositorio.
- Crea una rama para tu nueva funcionalidad (
git checkout -b feature/nueva-funcionalidad
). - Realiza tus cambios y haz un commit (
git commit -am 'Agrega nueva funcionalidad'
). - Sube tus cambios a tu fork (
git push origin feature/nueva-funcionalidad
). - Abre un Pull Request para revisión.
Este proyecto está bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.