Purpose:
As a self-taught developer, my goal was to create a place to track all of the non-traditional learning resources that I have used throughout my journey into tech. I created this application with the intention of organizing my learning process by tracking courses I have taken, articles and books that I have read, conferences and lectures I have attended and more. This project was completed to further my own personal learning endeavors and was never intended to gain traction as a service.
Process:
The Front-End of this application is built using React. Beyond the landing page, logged in users have access to a dashboard that displays a list of all of the resources they have collected. Each resource card includes a title, category, short description, a status and a completion date. Clicking into each resource allows a user to edit or delete that entry by making calls to the database through the Back-End API. Resources can also be filtered alphabetically or by most recently completed. The left-hand sidebar displays the user’s name, position, linked accounts (such as LinkedIn or GitHub) and a list of links to projects that the user has completed. New resources can be created and account information can be edited at any point. The Front-End application is deployed on Zeit (now Vercel).
The Back-End API for this project was built with Express on top of Node.js and uses knex.js to handle queries to the database. The database was built with PostgreSQL and used SQL to create the initial setup and handle the database migrations. Functionality within this API allows users to have full autonomy around viewing, adding, updating and deleting any resource, project or linked account associated with their personal account. I built out a basic authentication system in order to add extra security to individual user’s information. The database and server are deployed on Heroku.
Technologies Used:
- CSS
- React
- Node.js
- Express
- SQL
- PostgreSQL
www.katiewrennhansen.com