Tech Stack
Frontend: React Native 0.83 / React 19 (iOS and Android), TypeScript 5.8, React Navigation 6 | State & data: Redux Toolkit, Redux Saga, React Redux, Axios, Formik + Yup, AsyncStorage | UI: UI Kitten + Eva Design (components and theming), Reanimated + Gesture Handler, Victory Native (charts), Gifted Chat | Mobile services: Firebase (Auth, Firestore, Realtime Database, Storage), OneSignal (push), react-native-iap (in-app purchases), Sentry (crashes), Amplitude (analytics), Appcues (onboarding) | Backend: Java 17, Spring Boot 3.1.2, Gradle, Spring Web MVC + Thymeleaf (email templates and i18n in six languages), Spring Data JPA + Hibernate, Hypersistence Utils, QueryDSL 5.0, Flyway | Auth & security: Spring Security + OAuth2 Resource Server, JWT via AWS Cognito | Database & storage: PostgreSQL 15 (AWS RDS, eu-central-1), HikariCP, AWS S3 | Media & documents: javacv-platform, metadata-extractor, thumbnailator (image and video processing, thumbnails), openpdf (PDF reports) | Integrations: Stripe, OpenAI GPT (theokanning openai-gpt3-java), Apple App Store Server Library, Google API Client, Klaviyo, Mailgun, OneSignal | Tooling: Spring Cloud OpenFeign 4.0.3, Lombok + MapStruct 1.5.5, Springdoc OpenAPI (Swagger UI), Spring Boot Actuator, ShedLock, Testcontainers (PostgreSQL) + JUnit 5