Skip to content

marcocruzado/api-duquesa-fastapi

Repository files navigation

PROYECTO LA DUQUESA SALÓN & SPA

Descripción del proyecto:
Este es un proyecto para un Salón & Spa llamado La Duquesa donde tendremos lo siguiente:

  • Todas las transacciones que se han realizado en el centro.
  • Todos los servicios que se ofrecen en el centro.
  • Todas los categorías de los servicios que se ofrecen en el centro.
  • Todos los usuarios que se han registrado en el centro.
  • Todos los roles que se han registrado en el centro.

Requisitos:
Para poder ejecutar el proyecto se necesita tener instalado:

  1. virtualenv
  2. python 3.8
  3. fastapi
  4. uvicorn
  5. serverless
  6. nodejs
  7. npm
  8. serverless-python-requirements

Instalación:
Para poder instalar el proyecto se debe seguir los siguientes pasos:

  1. Clonar el proyecto.
  2. Crear un entorno virtual.
  3. Activar el entorno virtual.
  4. Instalar las dependencias.

Clonar el proyecto:

git clone https://github.com/marcoantoniocruzado1994/api-duquesa-fastapi.git

Crear un entorno virtual:

virtualenv venv

Activar el entorno virtual:

source venv/bin/activate

Instalar las dependencias:

pip install -r requirements.txt

Ejecutar npm install

npm install

Local:

Primera forma:

La instalación con FastAPI


Para poder ejecutar el proyecto en local se debe seguir los siguientes pasos:
  1. Activar el entorno virtual.
  2. Ejecutar el proyecto.

Activar el entorno virtual:

source venv/bin/activate

Ejecutar el proyecto:

uvicorn main:app --reload

Segunda forma:

Con Docker


Para poder ejecutar el proyecto en local se debe seguir los siguientes pasos:

Ejecutar el contenedor:

docker build -t imagen-duqueza:0.1.2 .

Luego de ejecutar el comando anterior se debe ejecutar el siguiente comando:

docker run --name duqueza-container -p 8000:8000 imagen-duqueza:0.1.2

Previo al despliegue

Para poder desplegar el proyecto se debe tener en cuenta lo siguiente:

  • Se debe tener una cuenta en AWS.
  • Se debe tener instalado serverless.

luego de estos dos puntos tienes que configurar tu cuenta de AWS en serverless, para esto debes ejecutar el siguiente comando:

serverless config credentials --provider aws --key <key> --secret <secret>

Y si vas a usar Cloud9 para desplegar el proyecto debes ejecutar el siguiente comando:

serverless config credentials --provider aws --key <key> --secret <secret> --profile cloud9

Para que así al hacer el deploy se encuentre con tu cuenta de AWS.

Despliegue:

Para poder desplegar el proyecto se debe seguir los siguientes pasos:

  1. Instalar serverless
  2. Instalar serverless-python-requirements

Instalar serverless:

npm install -g serverless

Instalar serverless-python-requirements:

npm install --save-dev serverless-python-requirements

Desplegar el proyecto

Para poder desplegar el proyecto se debe ejecutar el siguiente comando:

serverless deploy --stage dev

Endpoints

El proyecto cuenta con los siguientes endpoints:

  • GET /transaction/detail

  • GET /transaction/detail/{transaction_id}

  • GET /transaction/specific_detail/{transaction_id}

  • POST /transaction/new

  • PUT /transaction/update/{transaction_id}

  • DELETE /transaction/delete/{transaction_id}

  • GET /role/detail

  • GET /role/detail/{role_id}

  • POST /role/new

  • PUT /role/update/{role_id}

  • DELETE /role/delete/{role_id}

  • GET /service/detail

  • GET /service//detail/{service_id}

  • GET /service/detail_by_category/{category_id}

  • POST /service/new

  • PUT /service/update/{service_id}

  • DELETE /service/delete/{service_id}

  • GET /additional/detail

  • GET /additional/detail/{additional_id}

  • GET /additional/detail_by_service/{service_id}

  • POST /additional/new

  • PUT /additional/update/{additional_id}

  • DELETE /additional/delete/{additional_id}

  • GET /category/detail

  • GET /category/detail/{category_id}

  • POST /category/new

  • PUT /category/update/{category_id}

  • DELETE /category/delete/{category_id}

  • GET /user/detail

  • GET /user/detail/{user_id}

  • POST /user/new

  • POST /user/login

About

Simple RestApi for Spa Duquesa

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •