• Strona główna
  • O mnie
  • Projekty
  • Kontakt
  • Status usług
  • Scroll down

    O mnie

    Tworzę aplikacje mobile natywne dla platformy Android oraz wieloplatformowe.
    Specjalizują się również w tworzeniu aplikacji webowych, szczególnie w zakresie backendu i automatyzacji wdrożeń, choć fronend nie jest mi obcy.


    Technologie

    • AndroidX
    • MVVM
    • LiveData
    • Room Database
    • Hilt
    • Firebase Messaging Cloud
    • Coroutines
    • RxJava
    • Spring Security
    • Spring Session
    • JDBC
    • Hibernate
    • OAuth2 Client
    • OAuth2 Server
    • Spring Cloud OpenFeign
    • Spring Cloud Netflix - Eureka
    • MySQL
    • PostgreSQL
    • Redis
    • Teamcity
    • Github Actios
    • Jenkins
    • Unreal Engine 4
    • Unity
    • OpenGL
    • Blender
    • Oracle Cloud(VPS)
    • Python
    • C++
    • C#
    • PHP PHP
    • Symfony Symfony
    • Flutter Flutter
    • Java Java
    • Kotlin Kotlin
    • Android Android
    • Jetpack Compose Jetpack Compose
    • Spring Boot Spring Boot
    • HTML + CSS HTML + CSS5
    • TypeScript TypeScript
    • Databases Databases
    • SQL SQL
    • Git Git
    • IntelliJ IDEA IntelliJ IDEA
    • VS Code VS Code
    • Linux Linux
    • Caprover Caprover
    • Docker Docker
    • CI/CD CI/CD
    • Games + 3D Graphics Games + 3D Graphics
    • Others Więcej

    Projekty

    Screenshot of main screen Screenshot of player screen

    RTSP Player

    Opis:

    Mobilna aplikacja na system Android służąca do odtwarzania strumieni wideo z kamer IP, która wyróżnia się przede wszystkim wbudowaną obsługą dodawania podglądu na podstawie modelu kamery oraz dodawania wielu kamer jednocześnie.

    Technologie:

    • Android
    • Java
    • MVVM
    • RxJava
    • Hilt
    • Room Database
    • Live Data
    • Data Binding
    • JUnit
    • RTSP
    • ExoPlayer
    • VLC

    Generatora identyfikatorów żądań dla Spring Boot

    Opis:

    Narzędzie do śledzenia żądań dla architektury mikrousług. Generuje identyfikator dla żądań przychodzących, wstrzykuje go do żądania wychodzącego i wyświetla w logach.

    Cały projekt ma strukturę modułową, co poprawia ponowne wykorzystanie kodu i jego czytelność, a także umożliwia dodawanie dodatkowych modułów w przyszłości. W przyszłości planowane jest dodanie obsługi Kafki oraz obsługi serwera Netlify.

    Technologie:

    • Spring Boot
    • Kotlin
    • Logs
    • Cloud OpenFeign
    • Eureka Client/Server
    Screenshot of login screen Screenshot of main screen

    Emodul Notifier

    Opis:

    Mobilna aplikacja automatyzująca załączanie pomp o zadanej porze dla kotłów Defro oraz powiadamianie o niskim poziomie paliwa.

    Technologie:

    • Android
    • Kotlin
    • Jetpack Compose
    • Coroutines
    • Hilt
    • MVVM
    • Room Database
    • Retrofit
    • WorkManager
    Screenshot of webpage main screen Screenshot of mobile app main screen

    Lightnings radar

    Opis:

    Aplikacja pogodowa, która wyświetla informacje o uderzeniach piorunów w pobliżu Twojej lokalizacji i alerty pogodowe. Wysyła również powiadomienia na Twój smartfon dla lokalizacji wybranych w aplikacji.

    Projekt składa się z kilku współpracujących ze sobą aplikacji i jest podzielony na usługę główną, usługę aktualizacji pogody dla lokalizacji zapisanych w bazie danych oraz usługę pobierającą dane z zewnętrznego interfejsu API.

    Używa zewnętrznego API - burze.dzis.net

    Technologie:

    • Spring Boot
    • Android
    • Java/Kotlin
    • FCM
    • React
    • Microservices
    • Eureka Server
    Screenshot of the Planet System app

    Centralny system uwierzytelniania

    Opis:

    System logowania i rejestracji działa jako dostawca tożsamości dla moich zewnętrznych aplikacji, korzystając z protokołu OpenID Connect. Obsługuje aktywację e-mail i funkcję resetowania hasła.

    Obsługuje logowanie się za pomocą zewnętrznych dostawców tożsamości (Google). Zaimplementowano również własne przepływ logowania, przy pierwszym logowaniu użytkownik musi przejść przez początkową konfigurację konta (przypisać unikalną nazwę użytkownika).

    Technologie:

    • Kotlin
    • Spring Boot
    • Thymeleaf
    • JDBC
    • OAuth2 Authorization Server
    • OAuth2 Client
    • Session/Redis
    • OpenID Connect
    Screenshot of the Support System web app

    Support system

    Opis:

    System FAQ obsługujący zagnieżdżone kategorie, wyszukiwania i przyjazne linki.

    Logowanie odbywa się za pomocą zewnętrznego systemu autoryzacji za pośrednictwem protokołu OpenID Connect, tylko konto administratora może edytować wpisy i kategorie.

    Istnieją plany rozszerzenia projektu o obsługę wielojęzyczności i powiadomień użytkowników.

    Technologie:

    • PHP
    • Symfony
    • Twig
    • Doctrine
    • OpenID Connect
    Screenshot of the LinkHub web app

    LinkHub

    Opis:

    Aplikacja do agregacji i zarządzania linkami. Umożliwia utworzenie prostej strony profilowej z linkami do zewnętrznych stron internetowych, witryn internetowych i serwisów społecznościowych.

    Technologie:

    • PHP
    • Laravel
    • Blade
    • SQL
    Screenshot of the Planet System app

    Wizualizacja układów planetarnych

    Opis:

    Projekt pracy magisterskiej miał na celu opracowanie i zaimplementowanie od podstaw silnika graficznego umożliwiającego wizualizację różnorodnych układów planetarnych opisanych przez zadany skrypt.

    Obsługuje ruch planet w czasie rzeczywistym z możliwością globalnego przyspieszania i zwalniania, możliwość zmiany skali obiektów, proporcji planet i orbit w czasie rzeczywistym, a także możliwość wybierania obiektów, aby móc zobaczyć ich opis i obiekt z bliska.

    Technologie:

    • C++
    • OpenGL
    Screenshot of admin panel Screenshot of home page

    FAQ System

    • PHP
    • Symfony
    • Twig
    • Doctrine
    • Bootstrap

    System FAQ, oferujący przeglądanie kategorii i znajdujących się w nich wpisów. Niestety panel administracyjny nie został w pełni ukończony. Projekt w szczególności miał na celu zapoznanie się z frameworkiem Symfony.

    Screenshot of webpage main screen
    Screenshot of app main screen Screenshot of app share screen

    ShareIt

    Opis:

    Aplikacja mobilna, wdrożona w ramach prac inżynierskich. Umożliwia udostępnianie danych (plików, schowka, powiadomień, tekstu, linków) ze smartfona w sieci lokalnej za pomocą serwera WWW uruchomionego na urządzeniu.

    Technologie:

    • Android
    • Java
    • MVVM
    • Live Data
    • HTTP
    • WebSocket
    • HTML
    • JavaScript
    • CSS

    Speed-X &
    Portal of Aldana

    • Unity
    • C#
    • Git
    • Scrum
    • Teamwork

    Realizacja gry wyścigowej oraz gry typu tower defense. Praca była realizowana w zespołach wykorzystując metodykę scrum.

    Portal of Aldana

    • Unity
    • C#
    • Git
    • Teamwork

    Realizacja systemu siatki oraz budowania budynków - opracowanie podstawowych klas obiektów na siatce wraz z obsługą ich budowania, ulepszania oraz wchodzenia z nimi w interakcję. Współpraca z zespołem podczas tworzenia poszczególnych klas budynków.

    Screenshot of main screen Screenshot of edit screen

    Class schedule

    Opis:

    Aplikacja umożliwiająca zarządzanie rozkładem jazdy zaimportowanym z systemu USOSWeb.

    Wyświetla powiadomienia o kolejnych zajęciach, umożliwia dostosowanie kolorów w zależności od rodzaju zajęć i ukrywanie wybranych przedmiotów.

    Technologie:

    • Android
    • Java
    • ICS

    Kontakt

    2023-2025 © damianhoppe.pl

    System wsparcia

    Screenshot of home page
    Strona główna
    Screenshot of admin panel
    Panel administracyjny

    ShareIt

    ShareIt is a project implemented as part of engineering work. The application was an idea partly based on existing solutions that lacked certain functionalities. For this reason, I decided to create my own solution that allows you to access selected content from your smartphone on any device in the local network using only a web browser. Additionally, access to data can be limited by a system of permissions and users, and the web application presents data in real time using the WebSocket protocol.


    Home screen after logging in to the web application


    Mobile app home screen and share screen

    Functionalities

    • User management

      The default account is the guest account, this is the primary account and can be disabled in settings. It is also possible to add your own password-protected users and define the level of access to specific resources (modules).
    • Modularity

      A module is a part of the application that implements and handles access to certain content from the device. This allowed us to create an application architecture in which the system consists of a base part and modules, where the base part supports and manages the modules. This makes it possible to easily add new modules from the code level and simplifies access management by specifying available modules for the user.
    • Sharing

      The application also has a base module that is available to every user, which allows you to share selected elements from the device itself by integrating with the system share option or by selecting the appropriate option in the application. The content is made available to selected users, and we can delete items made available to users from the application level.
    • Quick sharing

      Fast sharing allows you to temporarily send a file, text, or link to a selected device using a WebSocket connection, so you can send the content to the target device without assigning it to the user.
    • Real-time updates

      To ensure an even better user experience, the project uses the WebSocket protocol, thanks to which the mobile application can send information directly to the web application. Each module implements its own way of sending information via a WebSocket connection, but the underlying code is another layer that is responsible for providing control over communication and wrapping the transmitted information, which is then unpacked in the client-side web application.
    • Shared content

      List of possible content (modules it offers):
      1. Shared items - list of shared items for the logged in user
      2. Files - file browser
      3. Gallery - album and image browser
      4. Movies - movie viewer from your device
      5. Downloads - contents of the "/Downloads" directory
      6. Music - sound file browser
      7. Clipboard - currently copied text
      8. Notifications - list of notifications displayed on the device
      WebSocket support is implemented for each module, thanks to which the content is updated in real time after changes are detected on the device.
    • Access from multiple platforms

      This project does not require the installation of additional software on the client side, it only requires a browser, which should be available on most devices. Thanks to this, it is possible to access data from almost any device in the local network, starting from computers, other smartphones or even TVs.

    Tools and technologies

    Git, Android Studio, Java, AndroidX, MVVM, Room Database, JSON, HTTP, CSS, HTML, JavaScript, WebSocket

    Download