Skip to content

Implementation for Fuksi Electronical Lärpäke for Luuppi ry (Tampere University)

Notifications You must be signed in to change notification settings

luuppiry/luuppi-larpake

Repository files navigation

Build and Deploy

Lärpäke

Electronical Luuppi Lärpäke. Track who attends the most events in their freshman year!

About

Image of Lärpäke

This repository contains implementation for the new generation of freshman event attendance cards (aka Lärpäke).

Luuppi is student organization for computer science, mathematics and statistical data analysis students in Tampere University Finland.

Fuksilärpäke is traditional part of freshman year for students in Luuppi. Fresmen compete on who gathers the most points during their freshman year. You can get points by fro example attending different events organized by Luuppi and other university organizations. Those with the most points are awarded with different prizes at the Luuppi Christmas party.

Getting started

Instructions for running the project can be found on Setup wiki

Requirements

Technologies

Web API

c sharp logo

ASP.NET Core .NET9 C# C# 13 Web API Controllers REST JWT OpenApi Scalar Dependency Injection

In the heart of the Lärpäke is the REST api implemented using ASP.NET Core Web API with controllers. Api is implemented using RESTful architechture and fro easier use, OpenApi Scalar is used to visualize api endpoints and their request data. Authentication and authorization are implemented using json web tokens (JWT). As usual, services are managed by dependency injection (DI).

Database

PostgreSQL Dapper

The web API uses PostgreSQL database to store all the data created by user clients. Dapper ORM is used in the C# code to map sql query results into objects. For those interested, database graphs can be found Wiki -pages under Database Graphs (here).

Api Events

SSE

Web api serves Server Sent Events (SSE) for subscribed clients when user's event attendance is marked as completed hereby causing UI update.

Front End

Vite Typescript CSS HTML

Front end is built with minimal vite + Typescript, HTML, CSS stack.

For UI design drawings see Wiki -> Design (here).

Project Timeline

This project is meant to be production ready for Freshmen starting their studies in fall 2025.

Contributing

Contributions are always welcomed! Project is still at its youth so no contributing guidelines are written so far. If you are interested in improving Lärpäke, contact us!

Contributors

@henrivain & @JurnetFIN

Support & Features

For support and feature requests preferably open a issue in Github (see Issues -page) Or send email to

henri.vainio(at)luuppi.fi or juliusz.kotelba(at)luuppi.fi

Aika on rahaa?

Tähän projektiin kulutettu aika

@henrivain

wakatime

@JurnetFIN

wakatime