Este proyecto consta de un backend desarrollado con Django y un frontend desarrollado con Next.js.
Este es un proyecto de backend desarrollado con Django, utilizando Docker para la infraestructura y PostgreSQL como base de datos.
Antes de comenzar, asegúrate de tener instalado:
También necesitarás:
Nota: No es necesario instalar Python ni PostgreSQL en tu máquina local. Docker se encargará de proporcionar ambos en contenedores aislados.
Navega a la carpeta del backend:
cd Proyecto-sistema-web-de-despacho/backend
Crea un archivo .env.dev
con el siguiente contenido:
DEBUG=1
SECRET_KEY=clavesecreta
DJANGO_ALLOWED_HOSTS=localhost 127.0.0.1 [::1]
SQL_ENGINE=django.db.backends.postgresql
SQL_DATABASE=djangobackend
SQL_USER=postgresuser
SQL_PASSWORD=postgrespassword
SQL_HOST=db
SQL_PORT=5432
DATABASE=postgres
Importante: Estas son las credenciales que se usarán para acceder a la base de datos PostgreSQL en el contenedor Docker. No es necesario que coincidan con ninguna instalación local de PostgreSQL.
Desde la carpeta del backend, ejecuta el siguiente comando para construir y levantar el proyecto:
docker-compose up --build
Este proceso puede tardar unos minutos la primera vez que se ejecuta.
Una vez que veas mensajes indicando que el servidor está corriendo, el proyecto estará listo para usar.
Después de que los contenedores estén corriendo, abre una nueva terminal y ejecuta:
docker-compose exec web python manage.py migrate
Esto aplicará todas las migraciones de Django a la base de datos.
Para acceder a la interfaz de administración de Django, puedes crear un superusuario con:
docker-compose exec web python manage.py createsuperuser
Sigue las instrucciones en la terminal para crear el usuario.
Para detener los contenedores:
docker-compose down
Para inicializar el contenedor sin construir:
docker-compose up
Para ver los logs en tiempo real:
docker-compose logs -f
docker-compose up --build
.Asegúrate de tener instalado:
Navega a la carpeta del frontend:
cd Proyecto-sistema-web-de-despacho/frontend/nextjsdespacho
Instala las dependencias:
npm install
Crea un archivo .env
en la carpeta nextjsdespacho
con el siguiente contenido:
NEXT_PUBLIC_BACKEND_URL=http://localhost:8000/
Esto configura la URL del backend para que el frontend pueda comunicarse con él.
Para iniciar el servidor de desarrollo de Next.js, ejecuta:
npm run dev
El frontend estará disponible en http://localhost:3000
Si deseas construir la aplicación para producción:
Ejecuta el comando de construcción:
npm run build
Para iniciar la versión de producción:
npm start
Para ejecutar tanto el backend como el frontend:
http://localhost:3000
y al backend en http://localhost:8000
.NEXT_PUBLIC_BACKEND_URL
en el archivo .env
del frontend.El proyecto está organizado de la siguiente manera:
Proyecto-sistema-web-de-despacho/
├── backend/
│ ├── django_backend/
│ │ ├── Dockerfile
│ │ ├── entrypoint.sh
│ │ ├── requirements.txt
│ │ └── [otros archivos y carpetas de Django]
│ ├── .env.dev
│ └── docker-compose.yml
├── frontend/
│ └── nextjsdespacho/
│ ├── .env
│ ├── tailwind.config.js
│ └── [otros archivos y carpetas de Next.js]
└── README.md
Las contribuciones son bienvenidas. Si deseas contribuir al proyecto, sigue estos pasos:
git checkout -b feature/AmazingFeature
).git commit -m 'Add some AmazingFeature'
).git push origin feature/AmazingFeature
).Por favor, asegúrate de actualizar las pruebas según corresponda y de seguir las convenciones de código del proyecto.