Frameworks - Take434/Appollon GitHub Wiki
Many frameworks and Libraries are used in Appollon to increase developer productivity and user experience. The Project utilizes the following frameworks:
Tailwind is the main styling framework. It provides classes similar to bootstrap with the difference that each class usually only applies one CSS property. This enables really specific styling options without having to write any custom CSS ourselves. Out of the box, features like pseudo-classes supporting events or typing arbitrary values, are included within tailwind. Furthermore it offers a simple way to implement responsive design [1].
Prisma is the database framework. The decision to employ Prisma came from its ease of use and developer-friendly features. It comes with auto-generated typescript types and uses smart queries to increase performance. Smart Queries mean that Prisma checks if similar requests to the database are sent at similar times and batches them together, resulting in less calls to the database therefore increasing performance [2]. Prisma studio, a web interface to create, read, edit or delete data, is an out-of-box feature, that comes alongside Prisma [3]. There is one problem with it though, which is that Prisma does not support creating many entities at once that have nested objects. More on this topic can be found here
NextJs is a fullstack framework. Meaning, that it assists in both back- and frontend developing. It implements directory-based routing, which is provided by the App-Router and functions as a web server. It is based on the React library and makes use of its behavior. Furthermore, Nextjs has an experimental feature called server-actions. These give an easy option for requests to the server and are used in this application [4].
[1] Tailwind DocsOverview accessed on 23.07.2023
[2] Prisma Docs Smart Queries accessed on 23.07.2023
[3] Prisma Docs Overview accessed on 23.07.2023
[4] NextJs Docs Overview accessed on 23.07.2023