Skip to content

acamus79/puppilots-backend

Repository files navigation

5th Devathon Team 3

SWAGGER DOC POSTMAN DOC


As part of the 5th edition of the Devathon, Puppilots.com is being developed as a web platform designed to simplify the administration of dog walking. Our focus is on providing customers with the opportunity to offer walks for their canine companions, while interested dog walkers can apply to perform these walks. To ensure a seamless experience, we have integrated PayPal as our secure and reliable payment gateway. This collection of REST API endpoints represents the core of the infrastructure that supports the application. Each endpoint is carefully designed to handle various functionalities, allowing users, whether they are customers or walkers, to efficiently interact with the platform. Through this API, key actions can be performed, such as ride creation and management, user authentication and payment validation. We invite you to explore this collection to get a complete overview of how our technology facilitates the connection between dog lovers and passionate walkers. Puppilots is dedicated to making the dog walking experience more enjoyable and convenient for everyone involved.

Created with a lot of love and dedication by Team 3 of the 5th Devathon:

  • 🇦🇷 Diego Vecch - GitHub
  • 🇻🇪 Marcos Rivero - GitHub
  • 🇨🇴 Sebastian Mayor - GitHub
  • 🇨🇱 Ricardo Oyarzo - GitHub
  • 🇦🇷 Adrian Camus - GitHub
  • 🇵🇪 Sebastian Llamuca - GitHub

Check out our website!


Sending email through envialosimple APi. Example of the result:


Developed in Nest.js, PostgreSQL, Prisma, Nginx, Docker and NX Monorepo

Arquitectura_puppilots2 puppilots - public 2 0


This workspace has been generated by Nx, a Smart, fast and extensible build system.

Start the app

To start the development server run nx serve Puppilots. Open your browser and navigate to http://localhost:4200/. Happy coding!

Generate code

If you happen to use Nx plugins, you can leverage code generators that might come with it.

Run nx list to get a list of available plugins and whether they have generators. Then run nx list <plugin-name> to see what generators are available.

Learn more about Nx generators on the docs.

Running tasks

To execute tasks with Nx use the following syntax:

nx <target> <project> <...options>

You can also run multiple targets:

nx run-many -t <target1> <target2>

..or add -p to filter specific projects

nx run-many -t <target1> <target2> -p <proj1> <proj2>

Targets can be defined in the package.json or projects.json. Learn more in the docs.

Want better Editor Integration?

Have a look at the Nx Console extensions. It provides autocomplete support, a UI for exploring and running tasks & generators, and more! Available for VSCode, IntelliJ and comes with a LSP for Vim users.

Ready to deploy?

Just run nx build demoapp to build the application. The build artifacts will be stored in the dist/ directory, ready to be deployed.

Build

npx create-nx-workspace@latest
cd mname-workspace
nx generate @nrwl/nest:application auth-service
nx generate @nrwl/nest:application email-service

Now Generate auth module, controller and service in app module...

nx generate @nrwl/nest:module auth --project=auth-service
nx generate @nrwl/nest:controller auth --project=auth-service
nx generate @nrwl/nest:service auth --project=auth-service

nx generate @nrwl/nest:module user --project=auth-service
nx generate @nrwl/nest:controller user --project=auth-service
nx generate @nrwl/nest:service user --project=auth-service

Add dependencies for auth service:

npm install --save @nestjs/jwt @nestjs/passport passport passport-jwt bcryptjs
npm install --save-dev @types/passport-jwt @types/bcryptjs

add dependencies for micropservices:

npm install --save @nestjs/microservices 

add code

Generate Api-Gateway

nx generate @nrwl/nest:application api-gateway

For docker setup

Add generatePackage option inside each workspace.json inside target->build->options

"generatePackageJson": true,

Then run build for your services

nx run-many --target=build --projects=api-gateway,auth-service --parallel

generate config module and service in api-gateway

nx generate @nrwl/nest:module config --project=api-gateway
nx generate @nrwl/nest:service config --project=api-gateway

Docker compose up

docker compose build
docker compose up -d

Note. yo need to have a .env file in the root folder with at least this vars:

DATABASE_URL=
AUTH_JWT_SECRET=

Set up CI!

Nx comes with local caching already built-in (check your nx.json). On CI you might want to go a step further.

Connect with us!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •