Skip to content

Latest commit

 

History

History
176 lines (108 loc) · 8.6 KB

README.es.md

File metadata and controls

176 lines (108 loc) · 8.6 KB

Rest Countries Info APP License: MIT Python Django

Homepage

- Introducción -

Rest Countries Info APP es un pequeño proyecto construido con Django que utiliza la API de REST Countries y la API de Wikipedia para visualizar informaciones detalladas de los países del mundo. Este proyecto se ha desarrollado con Python 3.12, JavaScript, Bootstrap 5, HTML5 y CSS3. Es el primer proyecto que subo a Github y el primero en general desarrollado con Django así que es posible que hayan errores, por lo cual cualquier aportación o consejo será bienvenido.

- Requisitos -

Asegúrate de tener Python instalado en tu sístema, para comprobarlo abre la línea de comandos y ejecuta el siguiente comando:

    py --version # Windows
    python --version # Unix/macOS

Si no tienes Python instalado entra en https://www.python.org/downloads/ y descarga la última versión.

- Instalación -

  1. Clona el repositorio:
    git clone https://github.com/davevad93/rest-countries-django-app.git
  1. Entra en la carpeta del repositorio:
    cd rest-countries-django-app
  1. Crea un entorno virtual:
    py -m venv venv # Windows
    python -m venv venv # Unix/macOS
  1. Activa el entorno virtual:
    venv/Scripts/activate.bat # Windows
    source venv/bin/activate # Unix/macOS
  1. Entra en la carpeta del proyecto:
    cd myproject
  1. Instala los paquetes necesarios:
    py -m pip install -r requirements.txt # Windows
    python -m pip install -r requirements.txt # Unix/macOS
  1. Genera una clave secreta aleatoria y guárdala en el archivo .env:
    (Esta aplicación no utiliza un sistema de autenticación y no almacena datos sensibles, sin embargo la mejor práctica es crear una clave secreta y almacenarla en una variable de entorno).
    # PASO 1: Abre el Shell de Python en el terminal.

    py manage.py shell # Windows
    python manage.py shell # Unix/macOS
    # PASO 2: Importa la función get_random_secret_key().

    from django.core.management.utils import get_random_secret_key
    # PASO 3: Genera la clave secreta con la función get_random_secret_key().

    print(get_random_secret_key())
    # Copia la clave.
    # PASO 4: Cierra el Shell de Python.

    exit()
    # PASO 5: Crea el archivo .env con la variable de entorno "SECRET KEY" y copia la clave generada en el PASO 3. 

    echo SECRET_KEY = 'Pega aquí la clave generada en el PASO 3' > .env
  1. Pon en marcha el servidor web de desarrollo:
    py manage.py runserver # Windows
    python manage.py runserver # Unix/macOS
  1. Accede a la aplicación a través de tu browser web en http://localhost:8000.

Homepage

- Características -

  • Busca los países por nombre.

Search

  • Filtra los países por región.

Filter

  • Visualiza las informaciones detalladas de cada país.

Description

  • Función de búsqueda haciendo clic en las tarjetas.

Card

- Anotaciones -

Puede haber inconsistencias con respecto a la información de ciertos países. Esto se debe a que para mostrar las informaciones básicas de cada país he usado la API de Rest Countries (última actualización del 2021) mientras que para mostrar las descripciones de los países he usado la API de Wikipedia (actualizada constantemente). Por poner un ejemplo, en Rest Countries aparece China como el páis más poblado, pero en 2022 India la ha superado, siendo a día de hoy el páis con más habitantes en el mundo.

- Desarrollado con -

  • Python
  • Django
  • JavaScript
  • Bootstrap
  • HTML
  • CSS

- Agradecimientos -

  • REST Countries API por los datos de los países mostrados en la app.

  • Wikipedia API por las descripciones de los países mostrados en la app.

  • Font Awesome por el ícono fa-search utilizado en la barra de búsqueda de la app.

  • Awesome Badges por las insignias en la sección "Desarrollado con".

- Atribuciones -

Algunos escudos de los países mostrados en este proyecto no proceden del JSON de la API di REST Countries porque algunos valores clave están vacíos, así que he exportado los escudos faltantes desde Wikimedia Commons. La mayor parte de ellos están en el dominio público y no necesitan atribución de autoría, pero algunos están bajo licencia de Creative Commons por tanto, voy a citar los autores dándole los créditos.

- Contribuir al proyecto -

Cualquier tipo de aportación es bienvenida! Si encuentras algún problema o tienes algúna sugerencia para mejorar el proyecto, por favor abre una issue o forkea el repositorio y haz una pull request. No te olvides de dar una estrella al proyecto. Muchísimas gracias!

- Licencia -

Este proyecto está bajo licencia MIT. Para obtener más información, consulta el archivo de LICENCIA.