← cd ../projects
2024 · Solo · postgraduate thesis, PUC-RS
vizinhelp
My postgraduate thesis: a neighborhood skill-exchange app, taken end to end, from an Angular front end and Node API to Keycloak auth and CI deploying to AWS.

context
Built as the final project of my full-stack postgraduate program at PUC-RS. The idea: neighbors post things they can teach or help with, other neighbors register interest, and the author gets an email.
It was my chance to own a whole system rather than one layer of it: front end, API, database, authentication, and the pipeline that ships it.
stack
AngularTypeScriptNode.jsPostgreSQLKeycloak
decisions
01
Keycloak for authentication
- considered
- Hand-rolling login and JWT handling in the API.
- why
- Identity is a solved problem and an easy one to get wrong. A dedicated identity server handled login and tokens, and the Express API just validated requests.
02
Registering interest doesn't require an account
- considered
- Requiring login before contacting a neighbor.
- why
- The first interaction should be cheap. Making that endpoint public removed the biggest drop-off point in the flow.
03
Automated deploys from day one
- considered
- Building and copying files to the server by hand.
- why
- A pipeline builds the front end and deploys it to EC2 on every push, with a separate job for the API, so the thesis demo always matched the code.
outcome
- ▸Shipped over two months, April to May 2024, through 21 pull requests.
- ▸Node/Express API on PostgreSQL with Jest unit tests on the endpoints.
- ▸One-command local environment with Docker Compose: Keycloak, Postgres and pgAdmin.