- Flutter Webμ WebAssembly(WASM)λ‘ μ»΄νμΌνμ¬ κ²½λνλ μΉ νλ‘ νΈμλλ₯Ό ꡬννμ΅λλ€.
- λ΄λΆ 리λ μ€ μλ²μ μλ λ°°ν¬λλ CI/CD νμ΄νλΌμΈμ ꡬμΆνμ΅λλ€.
- μν λκΈ°ν λ° WebSocket μ°κ²° μμ μ±μ ν보νμ¬ μ€μκ°μ±κ³Ό μ΄μ μμ μ± λͺ¨λλ₯Ό λ§μ‘±μν€λ ꡬ쑰λ₯Ό μ€κ³νμμ΅λλ€.
- QA μλλ¦¬μ€ μ립 λ° λ©ν° νλ«νΌ ν μ€νΈλ₯Ό ν΅ν΄ μλΉμ€ νμ§μ μ λ°μ μΌλ‘ μ± μμ‘μ΅λλ€.
- μ€λ¦¬ κ°μ€λ¦¬λ κ°κ²μ μ¨μ΄ν κ³Ό μ£Όλ¬Έμ μ격μΌλ‘ κ΄λ¦¬ν μ μλλ‘ λμμ£Όλ μλΉμ€μ λλ€.
- OrRe_Webμ Flutterλ‘ κ΅¬μΆλ μΉ κΈ°λ° μ¨μ΄ν μλΉμ€λ‘, λΉνμλ κ°νΈνκ² λκΈ°μ΄μ λ±λ‘νκ³ λ§€μ₯ μ΄μμλ μ€μκ°μΌλ‘ μ¨μ΄ν /μ£Όλ¬Έ μν©μ νμ ν μ μλλ‘ λμ΅λλ€.
- Flutter Webμ WASM μ»΄νμΌ λ°©μμ ν΅ν΄ μΉμ λ‘λ© μλμ μ±λ₯μ μ΅μ ννμμΌλ©°, μ체 리λ μ€ μλ²μ μλ λ°°ν¬λλλ‘ DevOps νκ²½μ μ€κ³νμ΅λλ€.
- β μ¬μ©μλ μΉμμ λκΈ° μΈμμ νμΈνκ³ μ¬μ μ¨μ΄ν μ λ±λ‘ν μ μμ΅λλ€.
- β νμμ΄ μλλλΌλ λ§€μ₯ μμμ QR μ½λ λλ NFC νκ·Έλ₯Ό μ΄μ©ν΄ μ¨μ΄ν μ λ±λ‘ν μ μμ΅λλ€.
- β ν μ΄λΈλ§λ€ λΆμ°©λ QR μ½λ/NFC νκ·Έλ₯Ό μ€μΊνμ¬ λΉλλ©΄ μ£Όλ¬Έμ μ§νν μ μμ΅λλ€.
- β μΈλ ₯ λΆλ΄μ μ€μ΄κ³ μ΄μ ν¨μ¨μ λμΌ μ μμ΅λλ€.
- β μ μ£Όλ μ¨μ΄ν λ° μ£Όλ¬Έμ ν κ³³μμ ν΅ν© κ΄λ¦¬ν μ μμ΅λλ€.
- β μ€μκ°μΌλ‘ λ³λλλ λ°μ΄ν°λ₯Ό λ°μνμ¬ μμ½κ² λ§€μ₯μ μ΄μν μ μμ΅λλ€.
π μ격 μ¨μ΄ν μ± μ€λ¦¬, κ°μ€λ¦¬ μμ° μμ
- β Flutter Web (WASM λΉλ)
- β Riverpod, Responsive UI, Custom Animation
- β Spring boot
- β MySQL
- β μ체 리λ μ€ μλ² (Ubuntu)
- β Nginx (μ μ μΉ μλ² & Reverse Proxy)
- β GitHub Actions κΈ°λ° CI/CD ꡬμ±
- β TLS μΈμ¦μ μλ κ°±μ (Letβs Encrypt + Certbot)
- λ€μν λλ°μ΄μ€/λΈλΌμ°μ μμ Flutter Web λ λλ§ κ²μ¦
- λΈλΌμ°μ λ³ λμ μ°¨μ΄ λΆμ λ° λμ (Chrome/Safari/Edge λ±)
- WASM μ»΄νμΌλ‘ μΈν μ΄κΈ° λ‘λ© μ΅μ ν
- WebSocket μ°κ²° μνλ₯Ό μ§μμ μΌλ‘ νμΈνλ ν¬μ€ μ²΄ν¬ μκ³ λ¦¬μ¦ κ΅¬ν
- μ°κ²° ν΄μ μ HTTPS fallback μμ²μ ν΅ν΄ μλ² μν μ κ² λ° μλ μ¬μ°κ²°
- μ€μκ°μ±μ΄ μ€μν μ¨μ΄ν /μ£Όλ¬Έ μλΉμ€ νΉμ±μ λ§μΆ° μ₯μ λμ λ‘μ§ κ΅¬ν
- Flutter build web μ --wasm μ΅μ μΌλ‘ WASM λ°μ΄λ리 μμ±
- GitHub Actions λ΄μμ λΉλ κ²°κ³Όλ¬Όμ .tar.gzλ‘ μμΆ ν SCPλ₯Ό ν΅ν΄ μλ²λ‘ μ μ‘
- 리λ μ€ μλ²μμ μλ μμΆ ν΄μ λ° Nginx static κ²½λ‘μ λ°°ν¬
- λ°°ν¬ μλ£ ν μλ nginx reload + Cache Busting μ²λ¦¬
- iOS Safariμ WASM μ΄κΈ° λ‘λ© λ¬Έμ λμ
- μ¬μ©μ κ²½νμ μν₯μ μ£Όμ§ μλλ‘ λ‘λ© μΈλμΌμ΄ν° λ° λ€νΈμν¬ μμΈμ²λ¦¬ λ‘μ§ κ°ν





