by Jay Gupta for NTU Open Source Society
Disclaimer: This document is only meant to serve as a reference for the attendees of the workshop. It does not cover all the concepts or implementation details discussed during the actual workshop.
Welcome to the two-part TGIFHacks workshop for Semester 2 AY 21/22. This workshop will give you a brief introduction to web-based API development.
Registration: NTU Event Registration System
Time: Friday, 11 February 2022. 6:30pm - 8:30pm
Location: Zoom (due to COVID-19 measures)
Recording: YouTube
You will learn the fundamentals behind the types of APIs (Framework, OS, Web-based APIs, etc.), web-based API protocols (SOAP, RESTful, GraphQL, etc.), REST Framework, and HTTP protocols.
After that, in a hands-on exercise, you will be introduced to the FastAPI, a modern, fast (high-performance), web framework for building APIs with Python. We will together build a minimalistic API that will store (in a database) and retrive the members of NTUOSS. This will open up countless possibilities for you to build exciting and amazing applications with the use of APIs.
Registration: NTU Event Registration System
Time: Friday, 18 February 2022. 6:30pm - 8:30pm
Location: Zoom (due to COVID-19 measures)
Recording: YouTube
You will learn the fundamentals of deploying a REST API on a server running in the cloud and automating the deployment using CI/CD pipelines. Next, you will be understanding the various security mechanisms (Basic, Keys, Tokens, etc.) for securing APIs and dive deep into OAuth2.0. Finally, we will wrap up with another important concept called CORS when building web APIs.
In a hands-on exercise, you will be introduced to GitHub Actions (CI/CD platform) and Heroku (Cloud Application Provider) which will be used in conjunction to deploy the REST API in an automated fashion. Afterwards, in the second hands-on exercise, you will learn to implement OAuth2.0 with the FastAPI framework in Python.
Raise your hand at any time with the 'Raise Hand' feature in Zoom during the workshop or shoot me an e-mail later.
Before you start the workshop, make sure you have these:
- Python 3.6+ installed in your system
- A code editor such as Visual Studio Code
- Postman API Platform Desktop App
If you find any mistake (typo or anything else), please post an issue, thanks!