W ramach Europe Code Week podczas hackatonu Hack Heroes ubiegłoroczny uczestnik koła programistycznego napisał aplikację o nazwie "Lern" motywującą do nauki języków obcych.
Posiada ona tryb nauki, który polega na wyświetleniu słówka oraz po kliknięciu jego tłumaczenia. Wyrzucenie karty w prawo zalicza nam słówko i daje punkt, a w lewo nie przyznaje nam punktu. Dla leniwych powstała funkcja dodania słówek z grafiki, dzięki czemu automatycznie wypełniają się słówka w formularzu. Znajdziemy w niej również grupy, dzięki którym nauczyciele mogą udostępniać różne zestawy dla wielu osób, które poza grupą pozostają prywatnymi fiszkami.
Daniel w backendzie użył technologii takich jak:
- ASP.NET,
- EF.
- Core,
- Azure Computer Vision (do odczytywania tekstu z grafiki),
- wzorce DDD + CQRS,
- Cloudinary (jako CDN do avatarów użytkowników),
- Tokeny JWT do autoryzowania użytkownika.
Natomiast apka została napisana w TypeScript za pomocą React Native + Expo, Material Design użyto do wyglądu, natomiast axios do obsługi żądań z serwera. PostgreSQL został użyty jako baza danych do trzymania danych użytkowników. Do konteneryzacji backendu oraz innych usług został użyty docker, co umożliwia w przyszłości stworzenie klastra przy użyciu kubernetes.
Autor projektu pomimo wysłania go na konkurs, ma w planach jego doskonalenie m.in. w zakresie systemu grup i użytkowników, sprawdzania wymowy słówka poprzez użycie Azure Translator, system ulubionych zestawów czy dodania nowych trybów do zestawów np. w formie quizu.