Thorsten은 주간 업무 보고를 효율적으로 관리하기 위한 Go 언어 기반의 웹 애플리케이션 프로젝트입니다.
본 프로젝트의 핵심 목표는 **"누구나 쉽게 운영할 수 있는 시스템"**입니다. 소프트웨어 전문 지식이 부족한 일반 업무 담당자도 손쉽게 이해하고 관리할 수 있도록, 복잡한 기술적 요소를 최소화하고 직관적인 구조로 설계되었습니다. 또한, 향후 기능 확장(데이터베이스 연동, API 서비스 등)을 유연하게 수용할 수 있도록 견고한 기반을 마련하였습니다.
- batch/: 개발 및 운영 편의를 위한 자동화 도구 모음입니다. (예: 서버 자동 재시작)
- handlers/: 웹사이트의 "창구" 역할을 합니다. 요일을 기준으로 사용자의 요청을 받아 화면을 보여주거나 데이터를 처리합니다.
- api/: 데이터만 주고받는(JSON) 창구입니다.
- web/: 화면(HTML)을 보여주는 창구입니다.
- models/: 주간 보고서, 사용자 정보 등 우리가 다루는 "데이터 양식"을 정의하는 곳입니다.
- services/: 실제 업무 처리(저장, 조회, 계산 등)를 담당하는 "주방"과 같은 곳입니다.
- views/: 사용자가 보게 될 화면(HTML 파일)들이 모여 있는 곳입니다.
- assets/: 디자인(CSS), 기능(JS), 이미지 파일 등을 관리합니다.
- main.go: 프로그램의 시작점입니다.
Go가 설치되어 있다면 복잡한 과정 없이 바로 실행해볼 수 있습니다.
터미널(명령 프롬프트)을 열고 프로젝트 폴더로 들어갑니다.
기본적인 실행 방법은 다음과 같습니다.
go run main.go명령어를 실행하면 기본적으로 http://127.0.0.1:8080 주소로 서버가 시작됩니다.
애플리케이션 실행 시 다음과 같은 옵션을 사용하여 설정을 변경할 수 있습니다.
| 옵션 | 설명 | 기본값 |
|---|---|---|
--watch |
소스 코드 변경을 감지하여 서버를 자동으로 재시작합니다. (개발용) | false |
--debug |
디버그 모드를 활성화하여 요청 로그를 터미널에 출력합니다. | false |
--addr |
서버를 실행할 IP 주소를 설정합니다. | 127.0.0.1 |
--port |
서버를 실행할 포트 번호를 설정합니다. | 8080 |
-
개발 모드 실행 (추천) 소스 코드 변경 시 자동 재시작 및 로그 출력을 활성화합니다.
go run main.go --watch --debug
-
디버그 모드 실행 (로그 확인 필요 시)
go run main.go --debug
-
포트 변경 실행
go run main.go --port 9090
-
외부 접속 허용 및 디버그 모드
go run main.go --addr 0.0.0.0 --debug
설정한 주소(기본: http://localhost:8080)를 인터넷 브라우저에 입력하여 접속합니다.