DEV Community

AlexJoeb
AlexJoeb

Posted on

Building For BridgeGood

"Technology is best when it brings people together" - Matt Mullenweg

A few weeks ago, I entered into Lambda School's Labs. In Labs, I was placed on a team that had the opportunity to work with a company called BridgeGood. BridgeGood proudly serves the Oakland, California area as a co-op designer space. They recently got a working space for their co-op community and came to Lambda School, searching for a room reservation and donation system.

So our team set forth. We aimed to solve the problem of creating a full-fledged reservation system. Considering the number of rooms, the type of room, the amount of availability in each room, and the date and time of the reservation. I was tasked with working on the project, setting up the application program interface (API), all of the API's endpoints, and the database where information about rooms, reservations, donations, and users would be stored.

"Once a new technology rolls over you, if you're not part of the steamroller, you're part of the road." - Stewart Brand

At the beginning of the project, I was concerned about using certain technologies that we had in our technology stack. Some of the tools I had never seen before, let alone used. So - I put on my learning hat, sat down, and started to learn everything that I could about the technology and planned how it would effectively be implemented into our project.

SwaggerUI in the Code

One of those technologies was SwaggerUI. Swagger allows the easy implementation of endpoint documentation. You provide SwaggerUI with the information below:

  • A summary of the endpoint.
  • The group the endpoint goes into (Reservations).
  • The type of endpoint (GET, POST, PUT, DELETE).
  • The endpoint's route (/reservation).
  • The structure of the request body.
  • The authorization type (Okta).
  • The possible responses After that, SwaggerUI builds out great looking and easy to use documentation page for you on the /API-doc endpoint on your server.

Swagger UI allows anyone — be it your development team or your end consumers — to visualize and interact with the API’s resources without having any of the implementation logic in place.

  • SwaggerUI's Landing Page

SwaggerUI Documentation Reservation List
SwaggerUI Reservation POST endpoint

_____________________/_______________________

When I was looking at the project from the infancy stages, it seemed daunting to learn these new technologies. But, after sitting down to learn them, I've really learned to love working with Swagger UI and the other technologies that I've learned, such as Docker.

After facing technical challenges from the beginning, I've learned to grow from the huddles that I had to jump over and the hoops I leaped through. After this portion of life is gone and Labs is a moment in time of the past, I'm going to be very appreciative of the team that I was put on and the project I was selected for.

Thank you for reading.

Top comments (0)