프로젝트 소개
مسارك(Masarak)는 예멘의 고등학생을 대상으로 하는 아랍어 RTL 웹 플랫폼으로, 학생들이 자신의 적성을 탐색하고 이용 가능한 학업 및 진로 선택지를 체계적으로 이해하도록 돕는 것을 목표로 한다. 이 플랫폼은 전공 안내와 RIASEC 모델에 기반한 탐색 경험을 결합하고, 해석 결과와 전공과 연계된 추천을 제시한다. 문서는 이 플랫폼이 진로 지도 및 탐색 도구이며 진단적 심리 검사나 학생, 가족, 상담사의 결정을 대체하는 것이 아니라고 명시한다.
이 프로젝트가 다루는 문제는 전공에 대한 지식 부족, 적성의 불명확성, 인상이나 타인의 의견에 의존, 선택지 비교의 어려움, 그리고 지역 맥락에 맞는 콘텐츠 부족으로 인해 고등학생이 대학 전공을 선택하기 어렵다는 점이다.
대상 사용자는 두 부류다. 전공을 탐색하고 자신의 적성을 파악하며 추천과 해석을 받고자 하는 학생, 그리고 계정을 만들기 전에 플랫폼을 알아보고 전공을 탐색·비교하려는 비회원 방문자다.
목표 MVP 범위에는 프로젝트 내 고정 학업 전공 안내, 전공 정보 탐색 및 비교, 계정 생성과 로그인·로그아웃, 학생 진행 상황 저장, 18개 상황 × 4개 선택지의 탐색 평가, 평가 중 답변 저장, 서버에서의 RIASEC 지표 계산, 비진단적 지도 언어로 결과 해석, 전공과 연계된 다중 추천, 이전 결과 보관, 반응형 아랍어 RTL 인터페이스, 병합 전 자동 테스트 및 빌드 검사가 포함된다.
현재 MVP 범위 밖: 관리자 패널, 관리 통계, 시스템 내 전공 관리 CRUD, 독립 공개 API, 독립 모바일 앱, 심리 진단 또는 공인 심리측정, 학생을 대신한 강제 결정. 문서는 범위에 기능이 있다고 해서 반드시 현재 구현되었다는 뜻은 아니며, 구현 상태는 Issues와 Pull Requests, main 브랜치를 통해 추적된다고 밝힌다.
채택 기술: Laravel 12와 PHP 8.2+, MySQL 8.4.x 데이터베이스, Eloquent ORM, Blade 뷰, Tailwind CSS, JavaScript/Fetch, Cookies와 CSRF를 사용하는 Laravel Session 인증, Vite 빌드 도구, Node.js 24.x, Composer 2.x와 npm, PHPUnit/Laravel Tests. 핵심 기술 결정은 Laravel Monolith, Blade + Tailwind, JavaScript/Fetch, MySQL 8.4.x, 세션 인증, routes/web.php, 고정 전공 카탈로그, 서버 측 RIASEC 처리다. 프로젝트는 MVP에서 React, Vue, SPA, Laravel Breeze, Sanctum, JWT, API Tokens, SQLite, MariaDB를 사용하지 않는다고 명시한다.
전공 데이터는 프로젝트 내 고정 파일인 resources/data/specializations.json에 저장되며, 현재 MVP에는 전공용 데이터베이스 테이블도, CRUD 패널도, 콘텐츠 관리 패널도 없다.
저장소에는 프로젝트 관리 및 작업 추적 문서가 포함되어 있으며, Mini-SRS/Requirements, Project Brief, Team Roles, AI Usage Log, Deliverables Checklist, Technical Decisions, System Architecture, System Workflows, Use Cases 등이 있고 AI_Log.md, DELIVERABLES_CHECKLIST.md, docs 폴더 같은 파일이 있다.
작업 방식은 GitHub Issues, 브랜치, Commits, Pull Requests, Code Review, GitHub Projects를 기반으로 하며, Issue → Branch → Implementation → Commit → Push → Pull Request → Review → Squash Merge → 브랜치 삭제 경로를 따른다. 유일한 영구 브랜치는 main이며 직접 개발하지 않는다.
실행에는 Git 2.x, PHP 8.2+, Composer 2.x, Node.js 24.x, npm, MySQL 8.4.x가 필요하며, Windows용 준비 스크립트로 check-environment.bat, setup-database.bat, setup-project.bat, verify-project.bat, start-project.bat가 있다. 또한 composer install, npm ci, php artisan config:clear, migrate, test, npm run build 후 php artisan serve와 npm run dev를 통한 수동 실행 경로도 있다. 애플리케이션은 http://127.0.0.1:8000에서 실행되며 /up에서 Health Check를 제공한다.
GitHub에서 깨끗한 환경으로 실제 Clean Clone 테스트를 수행했고 모든 단계를 통과했다. 저장소 구조, 환경 검사, 데이터베이스 설정, Composer와 npm 설치, Laravel 초기화, 마이그레이션, Laravel 테스트, Vite 빌드, MySQL 연결, 전체 검증, Git 보안 검사가 포함된다. 명시된 테스트 환경: Laravel 12.69.1, PHP 8.2.12, Composer 2.9.5, Node.js 24.13.1, npm 11.8.0, MySQL 8.4.11, Git 2.50.1.
프로젝트 규칙에는 main에 직접 Push 금지, .env나 비밀번호, 토큰, 비밀 업로드 금지, composer.lock과 package-lock.json 추적, 일반 설정 중 composer update나 npm update 사용 금지, Issue와 명확한 결정 없이 범위 밖 기능 추가 금지, AI로 생성된 코드는 사용 전에 이해하고 중요한 사용을 AI_Log.md에 문서화하는 것이 포함된다.
프로젝트 상태: 아이디어와 범위 확정, 기본 문서 준비, 저장소 생성과 main 보호 설정, Issues 및 Pull Requests 템플릿, Labels, Backlog → Ready → In Progress → In Review → Done 상태의 GitHub Project, 5개 Milestones, 15개 Issue, 자동 검증용 GitHub Actions, 환경·설정·검증 스크립트, Clean Clone 통과까지 완료되었다. 진행 중: Batch 3 — Assessment Journey, Batch 4 — Results & Security, Batch 5 — Finalization & Release, 남은 Issues 종료 및 최종 검증.
보안: 저장소에는 로컬 자격 증명이 없고, .env는 로컬 전용이며 업로드가 금지된다. Laravel은 세션, 쿠키, CSRF 보호, 비밀번호 해싱을 사용하며, 일상적인 애플리케이션 실행에 관리자 root 자격 증명을 사용하지 않는다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.