Skip to content

Technologies

Henri Sjöblom edited this page Nov 10, 2024 · 6 revisions

Main technologies

  • Next.js
  • TailwindCSS
  • Supabase
  • OpenAI API (GPT-4)

Reasons for these technologies

Since this a school project, most of these technologies are brand new to most of us. This is a great opportunity to learn and deepen knowledge of certain technologies.

Next.js

Next.js is a modern full stack framework for React and is gaining popularity at a fast pace. The developer experience is great, for example routing has been made really easy. You just need to create a folder for the route and that's it. No hardcoding routes to App.tsx like with React Router.

TailwindCSS

Tailwind allows you two write CSS to the component's className, which makes coding styles more convenient. This style is called inline CSS. Tailwind has a lot of third-party libraries, like Shadcn that is used in some places. Tailwind offers an excellent documentation on their site which also creates a great developer experience.

Supabase

Supabase is a popular opensource alternative to Google's firebase. We chose Supabase because we need a robust authentication and authorization system that is secure, offers bot protection, ability to reset password, change email etc. The database is also in Supabase, the developer experience is also great with this. No need to write raw SQL commands.

OpenAI API

OpenAI's GPT models seems to be the standard for large language models used in AI assistants, which is why we chose them. The developer experience has a lot of to improve, for example the requests are not always returned as JSON which can break a lot of stuff. Despite this, the pricing is affordable, and the model's capabilities are well-suited to our project.

Clone this wiki locally