킨텍스(KINTEX) 박람회의 부스 대기열 혼잡 문제를 해결하기 위한 PWA(Progressive Web App) 기반 실시간 부스 예약 시스템입니다. Python Flask 프레임워크로 제작되었으며, 앱 설치, 오프라인 접근, 인터랙티브 지도 등의 기능을 제공합니다.
킨텍스(KINTEX) 박람회의 부스 대기열 혼잡 문제를 해결하기 위한 PWA(Progressive Web App) 기반 실시간 부스 예약 시스템입니다. Python Flask 프레임워크로 제작되었으며, 앱 설치, 오프라인 접근, 인터랙티브 지도 등의 기능을 제공합니다.
https://moongeonho.pythonanywhere.com/access
(데모 사이트는 상시 운영되지 않을 수 있습니다.) 2025년 9월까지 운영됩니다.
- 실시간 부스 현황: 5초마다 부스별 대기 인원과 예상 대기 시간을 자동으로 업데이트합니다.
- 간편한 예약 시스템: 클릭 한 번으로 원하는 부스를 예약/취소하고, 완료 코드로 체험을 인증합니다.
- PWA 앱 설치: 웹 브라우저를 통해 스마트폰이나 PC 홈 화면에 앱을 설치하여 네이티브 앱처럼 사용할 수 있습니다.
- 인터랙티브 지도: 실제 지도 위에서 부스 위치를 확인하고, 핀을 클릭하여 상세 정보 확인 및 예약이 가능합니다.
- PDF 이수증 발급: 5개 이상의 부스를 체험하면 이름이 기재된 멋진 디자인의 이수증을 PDF로 발급받을 수 있습니다.
- 관리자 페이지: 부스별 대기 인원을 실시간으로 조정할 수 있는 관리자 전용 페이지를 제공합니다.
- Backend: Python, Flask, Pandas
- Database: SQLite
- Frontend: HTML, CSS, Vanilla JavaScript (AJAX)
- PWA: Service Worker, Web App Manifest
- Deployment: PythonAnywhere, Gunicorn
- PDF Generation: FPDF
-
리포지토리 복제:
git clone [https://github.com/snoopuppy582/KINTEX-Booth-App.git](https://github.com/snoopuppy582/KINTEX-Booth-App.git) cd KINTEX-Booth-App -
가상 환경 생성 및 활성화:
python -m venv venv source venv/bin/activate # macOS/Linux # venv\Scripts\activate # Windows
-
필요 라이브러리 설치:
pip install -r requirements.txt
-
데이터베이스 초기화 (최초 1회):
python init_db.py
-
Flask 서버 실행:
python app.py
-
웹 브라우저에서
http://자신의 아이피/access로 접속합니다.
추구 추가 예정
- 이 프로젝트의 기본 토대를 만들어주신 홍지명님께 감사드립니다.
- PWA 변환 및 전체적인 기능 개선, 배포 과정에서 많은 도움을 준 Gemini와 함께했습니다.