The KlickerUZH is composed of two primary services: a frontend service that serves a React single-page application with Next.js, as well as a backend service that serves a GraphQL API with Express/Node.js and Apollo Server. The entire application is backed by a MongoDB database as a main data store. Some performance-critical tasks (e.g., data gathered during a running session) are outsourced to a Redis cache service for preprocessing and performance optimization.
- https://redis.io in conjunction with https://github.com/luin/ioredis
- https://www.mongodb.com in conjunction with https://mongoosejs.com/