Skip to content

Yuuggaa/Expressify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

64 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽฎ Expressify - Face Expression Game

Python MediaPipe OpenCV Pygame License

Permainan interaktif untuk mendeteksi ekspresi wajah secara real-time!

Fitur โ€ข Instalasi โ€ข Cara Bermain โ€ข Dokumentasi โ€ข Tim


๐Ÿ“ Deskripsi Project

Expressify adalah permainan interaktif berbasis deteksi ekspresi wajah yang menantang pemain untuk menunjukkan berbagai ekspresi dengan cepat dan akurat! Dalam waktu yang terbatas, Anda akan diberi instruksi acak seperti senyum lebar ๐Ÿ˜Š, cemberut sedih ๐Ÿ˜ข, kaget maksimal ๐Ÿ˜ฒ, atau wajah datar ๐Ÿ˜. Setiap ekspresi yang benar akan menambah skor Anda!

๐ŸŽฏ Preview Game

https://youtu.be/yy_7H83gZ9U

Menu Utama Gameplay Leaderboard
Menu Game Leaderboard

๐ŸŽ“ Latar Belakang Akademik

Game ini dikembangkan sebagai Tugas Besar untuk mata kuliah Sistem Teknologi Multimedia menggunakan teknologi MediaPipe Face Mesh untuk deteksi landmark wajah tanpa deep learning. Project ini mendemonstrasikan implementasi Computer Vision dan Human-Computer Interaction dalam bentuk aplikasi interaktif yang menarik.

โœจ Fitur

๐ŸŽฎ Gameplay

  • ๐ŸŽฏ Real-time Face Detection - Deteksi wajah instan menggunakan MediaPipe Face Mesh (478 landmark points)
  • ๐Ÿ˜Š 4 Ekspresi Berbeda - Happy, Sad, Surprised, Neutral dengan deteksi akurat
  • ๐ŸŽš๏ธ 3 Tingkat Kesulitan
    • ๐ŸŸข Easy: 30 detik, 2 ekspresi
    • ๐ŸŸก Medium: 20 detik, 4 ekspresi
    • ๐Ÿ”ด Hard: 15 detik, 4 ekspresi (cooldown lebih cepat)

๐Ÿ† Sistem Kompetisi

  • ๐Ÿ“Š Leaderboard System - Simpan top 10 scores untuk setiap tingkat kesulitan
  • ๐Ÿ‘ค Player Profiles - Nama pemain kustom (maksimal 15 karakter)
  • ๐Ÿ“ˆ Performance Metrics - Feedback performa berdasarkan persentase skor

๐ŸŽจ User Experience

  • ๐Ÿ–ผ๏ธ UI Interaktif - Antarmuka modern dengan Pygame & animasi smooth
  • ๐ŸŽต Audio Support - Sound effects & background music (optional)
  • ๐ŸŽจ Visual Effects - Particle system, gradient backgrounds, glow effects
  • ๐ŸŒˆ Rainbow Animations - Animated title dengan warna dinamis

๐Ÿ› ๏ธ Teknis

  • โšก Optimized Performance - Target 30 FPS untuk gameplay yang smooth
  • ๐ŸŽฎ Intuitive Controls - Navigasi keyboard yang mudah dipahami
  • ๐Ÿ’พ Data Persistence - Leaderboard tersimpan di JSON
  • ๐Ÿ”ง Modular Architecture - Clean code dengan separation of concerns
  • ๐Ÿ“ฆ Package Structure - UI components organized in modular package
  • ๐ŸŽจ Reusable Components - Shared rendering utilities across screens

๐ŸŽญ Deteksi Ekspresi


๐Ÿ˜Š Happy
Sudut mulut naik

๐Ÿ˜ข Sad
Sudut mulut turun

๐Ÿ˜ฒ Surprised
Mulut & mata terbuka

๐Ÿ˜ Neutral
Wajah rileks

๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ Tim Pengembang

๐Ÿ‘จโ€๐Ÿ’ป Developer ๐ŸŽฏ Role ๐Ÿ“ง Contact
Hamka Putra Andiyan Lead Developer & Face Detection @hamka
Bayu Ega Ferdana Game Logic & Sound System @bayu
Falih Dzakwan Zuhdi Integration & UI Design @falih

๐Ÿ”ง Teknologi yang Digunakan

Teknologi Versi Deskripsi
Python 3.8+ Core programming language
MediaPipe 0.10.14 Face Mesh untuk deteksi 478 landmarks
OpenCV 4.10.0 Video capture & image processing
Pygame 2.6.0 Game engine & UI rendering
NumPy 1.26.4 Numerical computations

๐Ÿ—๏ธ Arsitektur Sistem

graph TB
    A[main.py<br/>Game Controller] --> B[face_detector.py<br/>MediaPipe Face Mesh]
    A --> C[game_logic.py<br/>Score & Timer]
    A --> D[ui/<br/>Modular UI Package]
    A --> E[sound_manager.py<br/>Audio System]
    A --> F[leaderboard_manager.py<br/>JSON Storage]

    B --> G[Camera Feed]
    C --> H[Expression Matching]
    D --> I[Screen Renderers]
    D --> J[Animation Systems]
    E --> K[Sound Effects & BGM]
    F --> L[leaderboard.json]

    I --> M[Menu Screen]
    I --> N[Game Screen]
    I --> O[Results Screen]
    J --> P[Particles]
    J --> Q[Floating Images]
Loading

๐ŸŽจ UI Module Architecture

graph LR
    A[UIManager<br/>Orchestrator] --> B[MenuScreen]
    A --> C[GameScreen]
    A --> D[ResultsScreen]
    A --> E[OtherScreens]
    A --> F[ImageManager]
    A --> G[Animations]

    B --> H[BaseRenderer]
    C --> H
    D --> H
    E --> H

    H --> I[Constants]
    F --> I
    G --> I
Loading

๐Ÿ“‹ Requirements

System Requirements

  • ๐Ÿ’ป OS: Windows 10/11, macOS, Linux
  • ๐ŸŽฅ Webcam: Built-in or external (minimum 480p)
  • ๐Ÿ Python: 3.8 atau lebih baru
  • ๐Ÿ’พ Storage: ~500 MB untuk dependencies
  • ๐Ÿ–ฅ๏ธ RAM: Minimum 4 GB (8 GB recommended)

Python Dependencies

Semua dependencies sudah terdaftar di requirements.txt:

mediapipe==0.10.14      # Face landmark detection
opencv-python==4.10.0.84 # Video processing
numpy==1.26.4            # Numerical operations
pygame==2.6.0            # Game engine & UI
Pillow==10.4.0           # Image processing

๐Ÿš€ Instalasi

โšก Quick Start (Recommended)

๐ŸชŸ Windows (PowerShell/CMD)
# 1. Clone repository
git clone https://github.com/Yuuggaa/Expressify.git
cd Expressify

# 2. Jalankan installer otomatis
setup.bat

# 3. Jalankan game
venv\Scripts\activate
python src\main.py
๐Ÿง Linux / ๐ŸŽ macOS
# 1. Clone repository
git clone https://github.com/Yuuggaa/Expressify.git
cd Expressify

# 2. Jalankan installer otomatis
chmod +x setup.sh
./setup.sh

# 3. Jalankan game
source venv/bin/activate
python src/main.py

๐Ÿ”ง Manual Installation

Click to expand manual installation steps
# 1. Clone repository
git clone https://github.com/Yuuggaa/Expressify.git
cd Expressify

# 2. Buat virtual environment
python -m venv venv

# 3. Aktifkan virtual environment
# Windows:
venv\Scripts\activate
# Linux/Mac:
source venv/bin/activate

# 4. Upgrade pip
python -m pip install --upgrade pip

# 5. Install dependencies
pip install -r requirements.txt

# 6. Jalankan game
python src/main.py

๐ŸŽต Optional: Audio Assets

Untuk pengalaman terbaik, tambahkan file audio di folder assets/sounds/:

  • bgm.wav - Background music untuk menu
  • click.wav - Sound effect untuk button click
  • high_score.wav - Sound untuk skor tinggi
  • true_answer.wav - Sound untuk jawaban benar

Note: Game akan berjalan normal tanpa file audio (graceful fallback)


๐ŸŽฎ Cara Menjalankan Game

๐Ÿš€ Quick Run

# Pastikan virtual environment aktif
# Windows:
venv\Scripts\activate

# Linux/Mac:
source venv/bin/activate

# Jalankan game
python src/main.py

๐ŸŽฏ Kontrol Game

Tombol Fungsi Screen
โ† โ†’ Navigasi horizontal Menu
โ†‘ โ†“ Navigasi vertikal Difficulty
SPACE Konfirmasi / Main lagi All
ENTER Submit nama Name Input
ESC Kembali / Keluar All
1 2 3 Ganti difficulty Leaderboard
BACKSPACE Hapus karakter Name Input

๐ŸŽฏ Cara Bermain

๐Ÿ“– Game Flow

๐Ÿ  Menu Utama โ†’ ๐Ÿ‘ค Input Nama โ†’ ๐ŸŽš๏ธ Pilih Kesulitan โ†’ ๐ŸŽฎ Gameplay โ†’ ๐Ÿ“Š Results โ†’ ๐Ÿ† Leaderboard

๐ŸŽฎ Step by Step

  1. ๐Ÿ  Menu Utama

    • Pilih PLAY untuk mulai bermain
    • Pilih LEADERBOARD untuk melihat top scores
    • Pilih QUIT untuk keluar
  2. ๐Ÿ‘ค Input Nama

    • Masukkan nama Anda (maksimal 15 karakter)
    • Nama akan muncul di leaderboard
    • Tekan ENTER untuk lanjut atau ESC untuk skip
  3. ๐ŸŽš๏ธ Pilih Kesulitan

    • ๐ŸŸข MUDAH: 30 detik, 2 ekspresi (Happy & Sad)
    • ๐ŸŸก SEDANG: 20 detik, 4 ekspresi (semua)
    • ๐Ÿ”ด SULIT: 15 detik, 4 ekspresi (cooldown cepat)
  4. ๐ŸŽฎ Gameplay

    • Lihat instruksi ekspresi di layar
    • Tunjukkan ekspresi yang diminta ke kamera
    • Skor bertambah jika ekspresi benar
    • Perhatikan timer - waktu terus berjalan!
  5. ๐Ÿ“Š Results

    • Lihat skor akhir dan performa Anda
    • Rating otomatis berdasarkan persentase:
      • ๐Ÿ† Rank S (80%+): LUAR BIASA! โญโญโญโญโญ
      • ๐Ÿฅ‡ Rank A (60-79%): BAGUS SEKALI! โญโญโญโญ
      • ๐Ÿฅˆ Rank B (40-59%): CUKUP BAIK! โญโญโญ
      • ๐Ÿฅ‰ Rank C (<40%): TERUS BERLATIH! โญ
  6. ๐Ÿ† Leaderboard

    • Top 10 pemain untuk setiap difficulty
    • ๐Ÿฅ‡ Gold - ๐Ÿฅˆ Silver - ๐Ÿฅ‰ Bronze medals
    • Tekan 1, 2, 3 untuk ganti difficulty

๐Ÿ’ก Tips & Tricks

๐ŸŽฏ Cara Mendapat Skor Tinggi
  • โœ… Pastikan pencahayaan baik - Hindari backlight
  • โœ… Posisikan wajah di tengah - Jaga jarak ~50cm dari kamera
  • โœ… Ekspresi yang jelas - Lebih ekspresif = lebih mudah terdeteksi
  • โœ… Fokus pada instruksi - Jangan terlalu cepat berganti ekspresi
  • โœ… Latihan mode Easy dulu - Pahami mekanisme sebelum Hard mode

๐Ÿ“ Struktur Project

Expressify/
โ”‚
โ”œโ”€โ”€ ๐Ÿ“‚ src/                          # Source code utama
โ”‚   โ”œโ”€โ”€ ๐ŸŽฎ main.py                   # Entry point & game controller
โ”‚   โ”œโ”€โ”€ ๐Ÿ‘๏ธ face_detector.py          # MediaPipe face detection
โ”‚   โ”œโ”€โ”€ ๐ŸŽฏ game_logic.py             # Game rules & scoring
โ”‚   โ”œโ”€โ”€ ๐Ÿ”Š sound_manager.py          # Audio system
โ”‚   โ”œโ”€โ”€ ๐Ÿ† leaderboard_manager.py    # Score persistence
โ”‚   โ”‚
โ”‚   โ””โ”€โ”€ ๐Ÿ“‚ ui/                       # Modular UI components
โ”‚       โ”œโ”€โ”€ ๐ŸŽจ ui_manager.py         # Main UI orchestrator
โ”‚       โ”œโ”€โ”€ ๐ŸŽญ constants.py          # Colors, fonts, dimensions
โ”‚       โ”œโ”€โ”€ ๐Ÿ–Œ๏ธ base_renderer.py      # Base rendering utilities
โ”‚       โ”œโ”€โ”€ โœจ animations.py         # Particle & animation systems
โ”‚       โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ image_manager.py      # Expression image loader
โ”‚       โ”œโ”€โ”€ ๐Ÿ  menu_screen.py        # Main menu renderer
โ”‚       โ”œโ”€โ”€ ๐ŸŽฎ game_screen.py        # Game screen renderer
โ”‚       โ”œโ”€โ”€ ๐Ÿ“Š results_screen.py     # Results screen renderer
โ”‚       โ”œโ”€โ”€ ๐ŸŽš๏ธ other_screens.py      # Difficulty, leaderboard, name input
โ”‚       โ”œโ”€โ”€ ๐Ÿ“– README.md             # UI module documentation
โ”‚       โ”œโ”€โ”€ ๐Ÿ“ ARCHITECTURE.md       # UI architecture diagram
โ”‚       โ””โ”€โ”€ ๐Ÿ“ฆ __init__.py           # Package initialization
โ”‚
โ”œโ”€โ”€ ๐Ÿ“‚ assets/                       # Game assets
โ”‚   โ”œโ”€โ”€ ๐Ÿ”Š sounds/                   # Audio files (optional)
โ”‚   โ”‚   โ”œโ”€โ”€ bgm.wav
โ”‚   โ”‚   โ”œโ”€โ”€ click.wav
โ”‚   โ”‚   โ”œโ”€โ”€ start.wav
โ”‚   โ”‚   โ”œโ”€โ”€ true_answer.wav
โ”‚   โ”‚   โ”œโ”€โ”€ high_score.wav
โ”‚   โ”‚   โ”œโ”€โ”€ botHigh_score.wav
โ”‚   โ”‚   โ”œโ”€โ”€ upLow_score.wav
โ”‚   โ”‚   โ””โ”€โ”€ low_score.wav
โ”‚   โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ images/                   # UI icons
โ”‚   โ”‚   โ”œโ”€โ”€ icon.ico                 # Application icon (Windows .exe)
โ”‚   โ”‚   โ”œโ”€โ”€ exchange.png             # Navigation icon
โ”‚   โ”‚   โ””โ”€โ”€ up-down.png              # Selection icon
โ”‚   โ””โ”€โ”€ ๐Ÿ“ธ photo/                    # Expression reference images
โ”‚       โ”œโ”€โ”€ Senang.png               # Happy expression
โ”‚       โ”œโ”€โ”€ Sedih.png                # Sad expression
โ”‚       โ”œโ”€โ”€ Kaget.png                # Surprised expression
โ”‚       โ””โ”€โ”€ Datar.png                # Neutral expression
โ”‚
โ”œโ”€โ”€ ๐Ÿ“‚ docs/                         # Dokumentasi tambahan
โ”‚   โ”œโ”€โ”€ BUILD_GUIDE.md               # Build executable guide
โ”‚   โ”œโ”€โ”€ FEATURES.md                  # Detailed features
โ”‚   โ”œโ”€โ”€ GAME_FLOW.md                 # Game flow diagram
โ”‚   โ””โ”€โ”€ SOUND_GUIDE.md               # Audio setup guide
โ”‚
โ”œโ”€โ”€ ๐Ÿ“‚ reports/                      # Project reports & documentation
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ report.tex                # LaTeX project report
โ”‚   โ”œโ”€โ”€ ๐Ÿ“š Referensi.bib             # Bibliography references
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ Readme.MD                 # Template usage guide
โ”‚   โ”œโ”€โ”€ ๐Ÿ“œ LICENSE                   # Template license
โ”‚   โ””โ”€โ”€ ๐Ÿ“‚ Figure/                   # Report figures & images
โ”‚
โ”œโ”€โ”€ ๐Ÿ“‚ scripts/                      # Build & utility scripts
โ”‚   โ”œโ”€โ”€ ๐Ÿ”จ build_exe.bat             # Build portable .exe (Windows)
โ”‚   โ”œโ”€โ”€ ๐Ÿ”จ build_exe_dir.bat         # Build install folder (Windows)
โ”‚   โ”œโ”€โ”€ ๐Ÿ”จ build_both.bat            # Build both versions (Windows)
โ”‚   โ””โ”€โ”€ ๐ŸŽจ create_icon.py            # Generate icon.ico from PNG
โ”‚
โ”œโ”€โ”€ ๐Ÿ“„ leaderboard.json              # Leaderboard data (auto-generated)
โ”œโ”€โ”€ ๐Ÿ“„ requirements.txt              # Python dependencies
โ”œโ”€โ”€ ๐Ÿš€ setup.bat                     # Windows installer
โ”œโ”€โ”€ ๐Ÿš€ setup.sh                      # Linux/Mac installer
โ”œโ”€โ”€ ๐Ÿ“‹ .gitignore                    # Git ignore rules
โ”œโ”€โ”€ ๐Ÿ“– README.md                     # Project documentation (this file)
โ”œโ”€โ”€ ๐Ÿ“– DOWNLOAD_README.md            # Download & usage guide for .exe
โ”œโ”€โ”€ ๐Ÿ“œ LICENSE                       # MIT License
โ””โ”€โ”€ ๐ŸŽฎ QUICKSTART.md                 # Quick start guide

๐Ÿ—๏ธ UI Module Structure (Modular Architecture)

src/ui/
โ”œโ”€โ”€ ui_manager.py         # Main orchestrator - coordinates all UI components
โ”œโ”€โ”€ constants.py          # Configuration (Colors, Dimensions, FontManager)
โ”œโ”€โ”€ base_renderer.py      # Reusable rendering utilities (gradients, text effects)
โ”œโ”€โ”€ animations.py         # Animation systems (ParticleSystem, FloatingImages, Confetti)
โ”œโ”€โ”€ image_manager.py      # Expression image loading & rendering
โ”œโ”€โ”€ menu_screen.py        # Main menu screen renderer
โ”œโ”€โ”€ game_screen.py        # Game playing screen renderer
โ”œโ”€โ”€ results_screen.py     # Results & ranking screen renderer
โ””โ”€โ”€ other_screens.py      # Additional screens (Difficulty, Leaderboard, NameInput)

Key Features of Modular UI:

  • โœ… Separation of Concerns - Each module has single responsibility
  • โœ… Maintainability - Easy to update individual screens
  • โœ… Reusability - Shared utilities in base_renderer
  • โœ… Scalability - Simple to add new screens or features
  • โœ… Clean Code - Well-organized with clear dependencies

๐Ÿ” Cara Kerja Deteksi Ekspresi

๐Ÿง  Algoritma Detection

graph LR
    A[๐Ÿ“น Camera Input] --> B[๐Ÿ” Face Detection]
    B --> C[๐Ÿ“ 478 Landmarks]
    C --> D[๐Ÿ“ Geometry Analysis]
    D --> E{Expression?}
    E -->|Mouth Up| F[๐Ÿ˜Š Happy]
    E -->|Mouth Down| G[๐Ÿ˜ข Sad]
    E -->|Mouth Wide| H[๐Ÿ˜ฒ Surprised]
    E -->|Neutral| I[๐Ÿ˜ Neutral]
Loading

๐Ÿ“Š Technical Details

Game ini menggunakan MediaPipe Face Mesh yang mendeteksi 478 landmark points pada wajah secara real-time:

1. ๐Ÿ” Deteksi Landmark

# Key landmarks used:
- Mouth: landmarks 61, 291 (corners), 13, 14 (lips)
- Eyebrows: landmarks 70, 63 (left), 300, 293 (right)
- Eyes: landmarks 159, 145 (left), 386, 374 (right)

2. ๐Ÿ“ Analisis Geometri

  • Happy ๐Ÿ˜Š:

    • Mouth corners elevated (y-position)
    • Slight mouth opening
    • Distance ratio: mouth_width / mouth_height > 2.0
  • Sad ๐Ÿ˜ข:

    • Mouth corners depressed
    • Eyebrows lowered
    • Mouth curvature negative
  • Surprised ๐Ÿ˜ฒ:

    • Mouth height > 20 pixels
    • Eyes wide open (eyebrow distance increased)
    • Jaw dropped significantly
  • Neutral ๐Ÿ˜:

    • Default state
    • Minimal facial muscle activation
    • Balanced landmark positions

3. โœ… Klasifikasi

# Confidence thresholds
HAPPY_THRESHOLD = 0.02      # Mouth corner elevation
SAD_THRESHOLD = -0.02       # Mouth corner depression
SURPRISED_THRESHOLD = 20    # Mouth height in pixels

๐ŸŽฏ Akurasi & Performance

Metrik Value
Detection FPS ~30 FPS
Landmark Detection 478 points
Expression Accuracy ~85-90%
Latency <50ms

๐Ÿ› Troubleshooting

โŒ Common Issues

๐ŸŽฅ Kamera tidak terdeteksi

Problem: Failed to open camera error

Solutions:

# 1. Check kamera tidak digunakan aplikasi lain
# Tutup Zoom, Teams, Skype, dll

# 2. Restart aplikasi
python src/main.py

# 3. Check permission kamera
# Windows: Settings โ†’ Privacy โ†’ Camera
# Mac: System Preferences โ†’ Security & Privacy โ†’ Camera

# 4. Test kamera dengan script sederhana
python -c "import cv2; cap = cv2.VideoCapture(0); print('OK' if cap.isOpened() else 'FAIL')"
๐Ÿ“ฆ Dependencies error

Problem: ModuleNotFoundError atau import errors

Solutions:

# 1. Pastikan venv aktif
# Windows:
venv\Scripts\activate
# Linux/Mac:
source venv/bin/activate

# 2. Reinstall dependencies
pip install --upgrade -r requirements.txt

# 3. Clear cache dan reinstall
pip cache purge
pip install --force-reinstall -r requirements.txt

# 4. Check Python version (min 3.8)
python --version
๐Ÿ Virtual environment issues

Problem: venv corrupted atau tidak bisa aktif

Solutions:

# 1. Hapus venv lama
# Windows:
rmdir /s venv
# Linux/Mac:
rm -rf venv

# 2. Buat venv baru
python -m venv venv

# 3. Aktifkan dan install
# Windows:
venv\Scripts\activate
# Linux/Mac:
source venv/bin/activate

pip install -r requirements.txt
๐ŸŽฎ Game lag atau FPS rendah

Problem: Performance issues

Solutions:

  • โœ… Close aplikasi lain yang berat
  • โœ… Update graphics driver
  • โœ… Kurangi resolusi kamera (edit di main.py)
  • โœ… Disable particle effects (comment di ui_manager.py)
  • โœ… Check CPU usage (<80% recommended)
๐Ÿ”Š Audio tidak keluar

Problem: No sound atau audio error

Solutions:

# 1. Check file audio ada di assets/sounds/
ls assets/sounds/  # Linux/Mac
dir assets\sounds\  # Windows

# 2. Test pygame audio
python -c "import pygame; pygame.mixer.init(); print('OK')"

# 3. Game berjalan normal tanpa audio (graceful fallback)
# Pastikan file .wav format PCM
๐Ÿ˜ Ekspresi tidak terdeteksi akurat

Problem: False positives atau ekspresi salah

Solutions:

  • โœ… Pencahayaan: Pastikan ruangan cukup terang
  • โœ… Posisi: Jaga wajah di tengah frame
  • โœ… Jarak: 40-60 cm dari kamera ideal
  • โœ… Background: Hindari background yang ramai
  • โœ… Ekspresi: Buat ekspresi lebih jelas dan ekstrem
  • โœ… Kacamata: Lepas jika deteksi terganggu

๐Ÿ“š Dokumentasi Lengkap

๐Ÿ“– Additional Docs

๐Ÿ“ฅ Download Executable

Mau main tanpa install Python?

Download versi executable (.exe):

Tinggal download, double-click, dan main! ๐ŸŽฎ

๐Ÿ”จ Build Your Own Executable

Ingin build sendiri? Lihat panduan lengkap di BUILD_GUIDE.md

Quick Build (Windows):

# Build portable .exe (single file)
.\scripts\build_exe.bat

# Build install version (folder)
.\scripts\build_exe_dir.bat

# Build both versions at once
.\scripts\build_both.bat

Output:

  • dist/Expressify.exe - Portable version (~150-200 MB)
  • dist/Expressify/ - Install version (~180 MB unzipped)
  • dist/Expressify.zip - Zipped install version (auto-created)

๐Ÿ”— External Resources


๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Development Setup

# 1. Fork & clone
git clone https://github.com/YOUR_USERNAME/Expressify.git

# 2. Create branch
git checkout -b feature/amazing-feature

# 3. Make changes & commit
git commit -m "Add amazing feature"

# 4. Push & create PR
git push origin feature/amazing-feature

Code Style

  • Follow PEP 8 guidelines
  • Add docstrings to functions
  • Use type hints where applicable
  • Comment complex logic
  • Write descriptive commit messages

๐Ÿ“„ License

This project is created for academic purposes (Tugas Besar Sistem Teknologi Multimedia).

MIT License - feel free to use for educational purposes.


๐Ÿ“ž Contact & Support

๐Ÿ’ฌ Need Help?

GitHub Issues GitHub Discussions

๐Ÿ“ง Team Contacts


โญ Show Your Support

Jika project ini membantu Anda, berikan โญ di GitHub!

GitHub stars GitHub forks


๐ŸŽฎ Expressify

Tim Expressify

Hamka Putra Andiyan โ€ข Bayu Ega Ferdana โ€ข Falih Dzakwan Zuhdi

Sistem Teknologi Multimedia - 2025

โฌ† Back to Top

About

Expressify adalah sebuah permainan dimana kamu dapat menunjukkan seberapa cepat kamu bisa berubah wajah! Dalam 20 detik, kamu akan diberi instruksi acak seperti senyum lebar, cemberut sedih, atau kaget maksimal! setiap ekspresi benar menambah skor, lengkap dengan musik dan efek unik tiap mood.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors