Desarrollo del:
- VueJs v2
- Vuex, Vue Router
- JavaScript
- HTML, Sass, Animaciones
- Atomic Design
- Scroll Pagination
- NodeJs v20.9.0
- Uso de backend modular
- ExpressJs
- TypeScript
- NodeJs v20.9.0
- Arquitectura Hexagonal
- MongoDB
- Migraciones de base de datos
Esta es la forma más sencilla, solo se necesita levantar el frontend y este hará uso del API https://pokeapi.co/ directamente.
flowchart LR
Frontend -- Uso de Backend --> PokéAPI
Para ello es necesario tener lo siguiente:
- Tener NodeJs v20.9.0
- Instalar vue2 de forma global
npm install -g @vue/cli
- Ubicado en
/frontend, copiar el.env.exampley crear un nuevo fichero llamado.env. su contenido debe tener:
VUE_APP_BACKEND=POKEAPI
VUE_APP_POKEAPI=https://pokeapi.co/api/v2
VUE_APP_APIREST=http://localhost:3000El valor POKEAPI de VUE_APP_BACKEND hará que el frontend use para el backend el valor de VUE_APP_POKEAPI.
- Instalar las dependencias:
npm install
- Levantar el proyecto en el puerto 8080 para el modo desarrollo:
npm run serve
O para producción:
npm run build
Esta es la forma completa, se usará tanto el frontend, el backend como la base de datos de mongodb. La base de datos será alimentada con data obtenida del API https://pokeapi.co/.
flowchart LR
Frontend -- Uso de Backend--> Backend[Backend TypeScript]
Backend -- Uso de BD --> transactionDatabase[(Database Mongo DB)]
Para levantar el proyecto es necesario tener lo siguiente:
- Seguir los pasos anteriores para levantar el Frontend con la única diferencia que en el
.envdeberá quedar así:
VUE_APP_BACKEND=APIREST
VUE_APP_POKEAPI=https://pokeapi.co/api/v2
VUE_APP_APIREST=http://localhost:3000El valor APIREST de VUE_APP_BACKEND hará que el frontend use para el backend el valor de VUE_APP_APIREST.
- Ubicado en
backend, copiar el.env.exampley crear un nuevo fichero llamado.env. su contenido debe tener:
# Server
PORT=3000
# DB
MONGODB_URI=mongodb://localhost:27017/pokemondb
MONGODB_DATABASE=pokemondb- Instalar dependencias
- Instalar typescript de forma global:
npm install -g typescript
- Instalar migrate-mongo de forma global:
npm install -g migrate-mongo
- Levantar el proyecto en el puerto 3000 (o como esté en el env) para modo desarrollo:
migrate-mongo up
npm run dev
O para producción:
npm run build
migrate-mongo up
npm start
Se deberia tener esta misma vista tanto si se usa el Método 1 o el Método 2
