이슈 트래커 (ISSUE TRACKER)
Laravel + Livewire 기반의 서버 중심 단일 애플리케이션 (monolith) 스택, 협업 기능을 갖춘 소규모 팀을 위한 심플한 이슈 추적 시스템 (작은 팀 내부 도구)
프로젝트 소개
ISSUETRACKER는 내부 팀을 위한 경량 이슈 관리 시스템으로, 복잡한 분산 구조 없이 하나의 Laravel 애플리케이션으로 구성된 모듈형 모놀리식 구조를 기반으로 한다.
이 시스템은 소규모 팀 환경에서 빠르게 도입하고 운영할 수 있도록 설계되었으며, 핵심적인 이슈 관리 흐름(생성, 할당, 댓글, 상태 관리)에 집중한다. 서버 중심 UI 구조(Livewire)를 통해 별도의 API 계층 없이도 실시간에 가까운 사용자 경험을 제공한다.
주요 기능
- 이슈 관리: 제목, 설명, 상태, 우선순위, 카테고리 기반의 작업 관리
- 협업 기능: 댓글 기반 토론, 담당자 지정, 작성자/참여자 중심 권한 관리
- 실시간 인터랙션: Livewire 기반 서버 주도 UI로 즉각적인 상태 반영
- 계정 관리: 이메일 인증 기반 회원가입 및 비밀번호 재설정
- 대시보드: 이슈 상태 및 활동 요약 제공
기술적 특징
- Laravel 13 + Livewire 4 기반의 서버 중심 인터랙티브 UI 구조
- REST API 없이 HTML + Livewire 상태 동기화 방식 사용
- WebSocket 없이도 동적 UI 구현 (AJAX + 서버 렌더링 혼합)
- SQLite 기본 구성, MySQL/MariaDB/PostgreSQL 확장 지원
- Tailwind CSS + Vite 기반 프론트엔드 빌드 환경
- DB 기반 세션, 캐시, 큐 처리 구조 (Redis 선택 가능)
아키텍처 개요
-
구조: Modular Monolith (단일 Laravel 애플리케이션)
-
흐름
Browser → Route → Livewire → Service → Model → Database -
레이어 구성
- Livewire: UI + 상태 관리
- Service: 비즈니스 로직 처리
- Model(Eloquent): 데이터 접근
- Policy: 권한 제어
- Job: 비동기 처리
-
별도의 API 서버, 마이크로서비스, 배포 오케스트레이션 없음
사용 방법
로컬 환경 기준:
- 의존성 설치
- 환경 파일 생성 및 키 설정
- 데이터베이스 마이그레이션
- 개발 서버 실행
이후 브라우저에서 접속하여 회원가입(이메일 인증) 후 바로 이슈 관리 기능을 사용할 수 있다.
운영 환경에서는 단일 PHP 애플리케이션 + DB + SMTP 구성만으로 동작하며, 별도의 복잡한 인프라 없이도 배포가 가능하다.
이 개발자의 다른 프로젝트
그누보드7 예약 모듈 - glitter-reservation
코어 수정 없이 붙여 사용하는 그누보드7 예약 모듈로, 신청·인증·조회·취소·관리까지 예약 흐름 전체를 모듈 단위로 제공합니다.
그누보드7 상담예약 템플릿 - Glitter Academy Core
GnuBoard7 Template 엔진 기반으로 상담예약 사이트 구성을 위한 초기 템플릿 예제로 설계되었습니다.
그누보드7 커뮤니티 템플릿 - SIRsoft Community
쇼핑몰(이커머스 의존)을 제거하고 커뮤니티 기능에 집중한 경량 사용자 템플릿, ID : sirsoft-comm