Api desarrollada con nodejs, typescript y desplegada en vercel para manejar un sistema de encuestas. Todo la información se almacena en una base de datos no relacional en dynamodb.
Requisitos para ejecutar el proyecto
- instalar nodejs 18 https://nodejs.org/es/
- instalar yarn https://yarnpkg.com/getting-started/install
- Crear una cuenta en aws https://aws.amazon.com/es/
- Crear una tabla en dynamodb con el nombre que desees
- Crear un usuario en aws con permisos de escritura y lectura en dynamodb
- Crear un archivo .env en la raíz del proyecto con las credenciales de aws y el nombre de la tabla creada en dynamodb
AWS_REGION=
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
DYNAMODB_TABLE_NAME=
PORT=
- Crear una cuenta en vercel https://vercel.com/
- Crear un proyecto en vercel con el repositorio de github
- Configurar las variables de entorno en vercel con las credenciales de aws y el nombre de la tabla creada en dynamodb
- Configurar el archivo de vercel.json
Realizar un clone del repositorio
git clone https://github.com/Servicio-Social-Sistemas/API-Usuarios.git
instalar las dependencias
yarn install
Para ejecutar el proyecto usa
yarn run dev
{
"responses": [
{"answer1": "rojo"},
{"answer2": "rojo"},
{"answer3": "azul"},
{"answer4": "verde"},
{"answer5": "verde"},
{"answer6": "rojo"},
{"answer7": "azul"}
],
"ubication" :{
"lat": "-08982",
"long": "-12332"
}
}
{
"responses": [
{"answer1": "rojo"},
{"answer2": "rojo"},
{"answer3": "azul"},
{"answer4": "verde"},
{"answer5": "verde"},
{"answer6": "rojo"},
{"answer7": "azul"}
],
"ubication" :{
"lat": "-08982",
"long": "-12332"
}
}
[
{
"createdAt": "2023-08-06T03:19:05.388Z",
"ubication": {
"lat": "12.435435",
"long": "44.56567"
},
"id": "c336bcb4-3248-44f9-ba51-0bac52168088",
"responses": [
{
"answer1": "rojo"
},
{
"answer2": "rojo"
},
{
"answer3": "azul"
},
{
"answer4": "verde"
},
{
"answer5": "verde"
},
{
"answer6": "rojo"
},
{
"answer7": "azul"
}
]
},
{
"createdAt": "2023-08-06T03:19:23.732Z",
"ubication": {
"lat": "12.435435",
"long": "44.56567"
},
"id": "c036239e-fb76-41b9-a377-5b933ca2ab90",
"responses": [
{
"answer1": "verde"
},
{
"answer2": "rojo"
},
{
"answer3": "azul"
},
{
"answer4": "azul"
},
{
"answer5": "verde"
},
{
"answer6": "rojo"
},
{
"answer7": "azul"
}
]
}
]
{
"id": "c336bcb4-3248-44f9-ba51-0bac52168088"
}