본문으로 건너뛰기

zenoBlog Overview

공식 블로그 URL: https://zenoblog-production.up.railway.app/

zenoBlog는 Laravel로 만든 개인 기술 블로그입니다.
방문자는 공개된 글을 읽고 카테고리로 필터링할 수 있고, 관리자는 로그인 후 글과 카테고리를 작성/수정/삭제합니다.

이 문서는 한 번에 외우는 문서가 아니라, 프로젝트를 파일별/기능별로 따라가며 공부하는 문서입니다.

민감 정보 제외

.env, DB 비밀번호, 앱 키, 계정 정보, 서버 비밀값은 이 문서에 적지 않습니다.
여기서는 프로젝트 구조와 코드 동작 원리만 정리합니다.

지금 프로젝트에서 배우는 것

챕터배우는 내용
프로젝트 구조Laravel 폴더가 각각 무슨 역할인지
Laravel 기초Route, Controller, Model, View, Migration
라우팅URL이 어떤 컨트롤러 함수로 연결되는지
공개 블로그글 목록, 글 상세, 카테고리 필터 흐름
관리자 글 CRUD글 작성/수정/삭제가 DB에 저장되는 과정
카테고리 관리카테고리 생성/수정/삭제와 글 연결
DB와 모델posts, categories, tags, users 관계
TipTap 에디터에디터 내용이 textarea를 거쳐 저장되는 방식
Blade와 화면Blade 문법, 레이아웃, SEO/OG 태그
인증과 권한Breeze 로그인과 관리자 미들웨어
Railway 배포Dockerfile, railway.toml, Vite build
공부 로드맵다음에 어떤 순서로 고치고 공부하면 좋은지

프로젝트 한 줄 흐름

브라우저 URL 요청
-> routes/web.php
-> Controller
-> Model / DB
-> Blade View
-> HTML 응답

Laravel을 볼 때는 항상 이 질문으로 시작하면 됩니다.

1. 어떤 URL로 들어왔지?
2. routes/web.php에서 어디로 보내지?
3. 어떤 Controller 함수가 실행되지?
4. 어떤 Model로 DB를 읽거나 저장하지?
5. 어떤 Blade 파일이 화면을 만들지?

이 문서의 나머지 챕터는 이 질문을 실제 zenoBlog 코드에 대입해서 설명합니다.