2025-04-13 11:58:26 +02:00
# Julius Baer Onboarding
2025-04-13 10:20:16 +02:00
2025-04-13 11:58:26 +02:00
An interactive onboarding simulation system designed for Julius Baer, a decision-based game interface. This project helps users understand client interaction scenarios and decision-making processes in a private banking context.
2025-04-13 10:20:16 +02:00
2025-04-13 11:58:26 +02:00
## 🔍 Features
2025-04-13 10:20:16 +02:00
2025-04-13 11:58:26 +02:00
- Interactive client scenario simulations
- AI-powered decision recommendations
- Real-time scoring and feedback
- Progress tracking
- Document processing capabilities
- Comprehensive validation system
2025-04-13 10:20:16 +02:00
2025-04-13 11:58:26 +02:00
## 🎯 Project Overview
2025-04-13 10:20:16 +02:00
2025-04-13 11:58:26 +02:00
The Julius Baer Onboarding Simulation is a full-stack application that:
- Simulates real-world client interaction scenarios
- Provides AI-powered decision recommendations
- Tracks user performance and learning progress
- Offers an intuitive and engaging user interface
2025-04-13 10:20:16 +02:00
2025-04-13 11:58:26 +02:00
## 🏗️ Architecture
2025-04-13 11:42:38 +02:00
2025-04-13 11:58:26 +02:00
### Backend (Python/Flask)
- RESTful API endpoints for game management
- Integration with Julius Baer's API
- AI advisor for decision recommendations
- Game state management and scoring system
- OCR capabilities for document processing
### Frontend (Alpine.js & Bootsrap)
- Modern, responsive user interface
- Interactive game flow
- Real-time decision feedback
- Score tracking and progress visualization
## ✅ Prerequisites
2025-04-13 11:42:38 +02:00
2025-04-13 11:58:26 +02:00
Install the following system dependencies:
- Python 3.12
- pip
- virtualenv
- Node.js (v16+)
- npm
- tesseract-ocr
## 🔧 Installation Steps
### 1. Install Python 3.11+ and Required Tools
#### For Ubuntu 22.04+
2025-04-13 10:20:16 +02:00
```bash
sudo apt update
2025-04-13 11:58:26 +02:00
sudo apt install python3.11 python3.11-venv python3.11-dev
2025-04-13 10:20:16 +02:00
```
### 2. Install Tesseract OCR
```bash
sudo apt install tesseract-ocr
```
### 3. Install Node.js and npm
2025-04-13 11:58:26 +02:00
```bash
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install -y nodejs
```
2025-04-13 10:20:16 +02:00
## 🚀 Project Setup
1. **Clone the repository**
```bash
git clone https://github.com/NoeBerdoz/julius_baer_onboarding
cd julius_baer_onboarding
```
2. **Set up the Python virtual environment**
```bash
python3.12 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
```
3. **Install frontend dependencies**
```bash
cd frontend
npm install
cd ..
```
2025-04-13 11:58:26 +02:00
## 📁 Project Structure
2025-04-13 10:20:16 +02:00
2025-04-13 10:36:26 +02:00
```
2025-04-13 11:58:26 +02:00
julius_baer_onboarding/
├── app.py # Main Flask application
├── config.py # Configuration settings
├── requirements.txt # Python dependencies
├── frontend/ # Frontend application
├── services/ # Backend services
├── dto/ # Data Transfer Objects
├── validation/ # Validation logic
├── utils/ # Utility functions
├── game_files/ # Game-related files
└── tests/ # Test suite
```
2025-04-13 10:20:16 +02:00
## 🧪 Development Workflow
2025-04-13 11:58:26 +02:00
1. **Start the backend server**
2025-04-13 10:20:16 +02:00
```bash
source .venv/bin/activate
2025-04-13 10:36:26 +02:00
python app.py
```
2025-04-13 11:58:26 +02:00
2. **Start the frontend development server**
2025-04-13 10:20:16 +02:00
```bash
cd frontend
npm run dev
```
2025-04-13 12:01:01 +02:00
# Screenshots of the app
The user has a view to see all documents

When the AI suggest that the dossier is fine

When the AI suggest that the dossier has an issue

The AI adapts to each dossier

The user makes the final decision and has interface feedbacks, loadings, game over screen...
