Every 2 years or so, the software engineering students at the University of Auckland come together and attempt to create a website for submitting course reviews. And every 2 years, without fail, the website shuts down.
Why?
Upkeep costs are pretty steep for this kind of service. After attempting to scale their websites, the costs started to go out of control and they had to scrap everything.
There needs to be a solution that optimizes for cost, from the beginning. This is where this project comes in.
Using my knowledge of:
nextjs
react
typescript
abusing chat-gpt
I will create a highly optimized website, that will be able to run for free, forever
This is the trello board that i'm using for project managment, i'm keeping it updated with the current state of the project
I started of with ideating a design in figma.
I tried to stay consistent with the style my university uses, hopefully there won't be a copyright issue in the future
I tried for something minimal and functional, but I like how it turned out
This is what i've currently done:
-
Validated that it will work, for free, indefinitely
-
Created and deployed a website -> https://jxav22.github.io/student-course-review/
Notably: I didn't use any design libraries, so everything was written from the bottom up! While this is of course a skills flex (?), I think it also gave the project a pretty unique look
-
Populated it with scraped reviews from the sites that shut down -> webscraping repository
-
Set up a service using google forms to allow people to submit reviews
- Automating the backend service
- Scraping more reviews
- Doing some advertising
- Migrating the reviews to a SQL database
- (tastefully) incoporating design libraries to migitate weak points
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
I hosted everything on github pages:
https://jxav22.github.io/student-course-review/
https://github.com/jxav22/student-course-review/deployments/github-pages
>> Try searching for "ELECTENG 101" for a course with a lot of reviews!
I also experimented with deploying it on Vercel, but it unfortunately takes more than 45 minutes to build :')
https://github.com/jxav22/student-course-review/deployments/Production