메인 콘텐츠로 건너뛰기

개요

laravel-console-starter는 커스텀 artisan 명령어를 중심으로 하는 Laravel 애플리케이션 개발을 가속하는 스타터 키트입니다. 스탠드얼론 CLI 툴을 만드는 것이 아니라, Laravel 프레임워크의 에코시스템 전체(의존성 주입·알림·스케줄링·테스트)를 활용한 콘솔 애플리케이션을 빠르게 구축할 수 있습니다. GitHub Actions에서 스케줄 실행하고, 결과를 메일이나 Slack 등의 알림으로 전송하는 워크플로가 기본적인 사용 사례입니다.

요구 사항

  • PHP ^8.3
  • Laravel Framework ^13.0
  • Laravel Installer ^5.24

설치

laravel new --using=revolution/laravel-console-starter --no-interaction my-app
설치 후의 주요 디렉터리 구조:
my-app/
├── app/Console/Commands/   # 커스텀 artisan 명령어 배치
├── .github/workflows/
│   └── cron.yml            # GitHub Actions 스케줄 예시
├── config/                 # 애플리케이션 설정
└── routes/console.php      # 명령어 등록

주요 특징

콘솔 앱 특화

Web용 오버헤드를 배제하고 artisan 명령어 개발에 집중할 수 있는 구성입니다.

GitHub Actions 스케줄링

서버 cron 잡이 불필요. .github/workflows/cron.yml의 설정 예시가 처음부터 포함되어 있습니다.

Laravel 에코시스템 활용

알림·HTTP 클라이언트·테스트·DI 컨테이너 등 Laravel의 풍부한 기능을 그대로 사용할 수 있습니다.

퀵 스타트

명령어 만들기

php artisan make:command Hello --command=hello
app/Console/Commands/Hello.php가 생성됩니다. handle() 메서드에 로직을 구현하고, 명령어를 실행합니다.
php artisan hello

GitHub Actions로 스케줄 실행

.github/workflows/cron.yml을 편집하여 실행할 명령어와 스케줄을 설정합니다.
on:
  schedule:
    - cron: '0 0 * * *'  # 매일 UTC 오전 0시

jobs:
  cron:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: shivammathur/setup-php@v2
        with:
          php-version: 8.5
      - run: composer install --no-dev -q
      - run: cp .env.example .env
      - run: php artisan key:generate
      - run: php artisan your:command

알림 전송

명령어의 실행 결과를 알림으로 보내려면, make:notification으로 클래스를 만들고 Notification 파사드로 전송합니다.
php artisan make:notification TaskCompleted
Notification::route('mail', '[email protected]')
    ->notify(new TaskCompleted('처리가 완료되었습니다'));
알림 채널(메일·Slack 등)의 설정이 필요한 경우에는 php artisan config:publish mail이나 php artisan config:publish services로 설정 파일을 공개하세요.

애플리케이션 아이디어

이 스타터 키트로 구축할 수 있는 애플리케이션 아이디어입니다.
  • 웹사이트 헬스 체크와 Slack 알림
  • 서버 리소스 사용 현황 리포트를 메일 전송
  • SSL 인증서 만료일 확인과 알림
  • API 응답 시간 모니터링과 알림
  • 경쟁사 가격 변동 추적과 Discord 알림
  • Google AdSense 수익을 메일로 전송
  • AWS 비용을 Discord로 알림
  • 일일 암호 자산 포트폴리오 업데이트를 Discord로
  • 주가 알림을 Slack 채널로
  • 청구서 지불 기한 리마인더
  • 월간 경비 리포트 생성과 배포
  • 오래된 로그 파일 정리와 스토리지 리포트
  • 서로 다른 API 간 데이터 동기화와 결과 알림
  • CSV 데이터 임포트와 처리 결과 알림
  • 정기적인 데이터 익스포트와 클라우드 스토리지 업로드
  • 웹사이트의 링크 끊김 확인과 리포트
  • SEO 키워드 랭킹 모니터링과 변동 알림
  • 블로그 게시글 퍼포먼스 지표 주간 리포트
  • RSS 피드의 콘텐츠 집계와 알림
  • GitHub 저장소의 의존성 보안 알림
  • 코드베이스의 정적 분석 리포트
  • 배포 후의 애플리케이션 헬스 체크
  • API 문서 변경 감지와 알림
  • laravel-copilot-sdk를 사용한 AI 에이전트 툴
  • laravel/mcp 패키지를 사용한 로컬 MCP 서버
  • 도메인 만료일 모니터링과 알림
  • Google Trends 키워드 모니터링과 알림
  • 개인 지출 카테고리 인사이트 리포트

문서

튜토리얼

설치부터 명령어 작성, GitHub Actions에서의 스케줄링, 알림 전송, 실전 앱 예시까지.

참고 링크

마지막 수정일 2026년 7월 13일