Skip to content
This repository has been archived by the owner on May 10, 2020. It is now read-only.

Una app para organizar la impresión y distribución de piezas 3D para respiradores artificiales en Cuba, como parte de la lucha contra la COVID-19.

Notifications You must be signed in to change notification settings

CarlosLugones/cuba-vs-covid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CubaVSCovid

Una app para organizar la impresión y distribución de piezas 3D para respiradores artificiales en Cuba, como parte de la lucha contra la COVID-19.

Arquitectura

Esta aplicación web consta de un backend y un frontend, comunicados por una API en GraphQL.

Stack frontend:

  • VueJS
  • NuxtJS
  • Buefy
  • Axios
  • Apollo
  • Vuelidate
  • Vuex

Más detalles en package.json.

Stack backend:

  • Python 3.6
  • Django 3.0.4
  • Graphene 2.1.8
  • Djangorestframework 3.2.1

Más detalles en pyproject.toml.

Ejecutar el frontend en modo desarrollo:

Si usas yarn:

cd frontend
yarn install
yarn dev

Si usas npm:

cd frontend
npm install
npm run dev

El frontend quedará expuesto en localhost:3000.

Ejecutar el backend en modo desarrollo:

Usamos poetry como manejador de dependencias de Python.

pip3 install --user poetry
cd backend
poetry install
poetry run ./dev.py createsuperuser
poetry run ./dev.py runserver

El backend quedará expuesto en localhost:8000.

Sugerencia: Aplica estos alias en tu .bashrc o .zshrc para que sea más cómodo:

alias poetry="python3 -m poetry"
alias django="poetry run ./dev.py"
alias djm="django makemigrations; django migrate;"
alias djr="django runserver"

Así, puedes usar estos comandos:

Comando Descripción
poetry install Instalar dependencias
djr Levantar backend
djm Migrar base de datos

Contribuir

¿Deseas contribuir? Contáctame en Telegram.

Guía de despliegue

  1. Clona el repositorio.

  2. Colócalo en /root/apps/cubavscovid/codebase en tu VPS.

  3. Crea un archivo .env en dicha locación y añade las siguientes líneas:

    CUBAVSCOVID__DJANGO_SECRET_KEY=unallavesecretaaleatoria
    CUBAVSCOVID__DJANGO_HOSTNAME=covid.copincha.org
    CUBAVSCOVID__DJANGO_PRODUCTION_STATIC_ROOT=/storage/frontend/static
    CUBAVSCOVID__DJANGO_PRODUCTION_MEDIA_ROOT=/storage/frontend/static/media
  4. Crea un archivo .env dentro de frontend y añade las siguientes líneas:

    BASE_URL=http://covid.copincha.org
    BACKEND_BASE_URL=http://covid.copincha.org/api/
    API_BASE_URL=http://covid.copincha.org/api/
  5. Levanta los servicios usando docker-compose:

    sudo docker-compose up --build
  6. Entra por bash al container del backend y añade un superusuario:

    sudo docker exec -it backend bash
    poetry run ./prod.py createsuperuser
    exit
  7. Habilita los puertos 80 y 443 en el firewall para permitir el tráfico hacia la aplicación.

Voilà!

🦠😷🦠

About

Una app para organizar la impresión y distribución de piezas 3D para respiradores artificiales en Cuba, como parte de la lucha contra la COVID-19.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published