diff --git a/README.md b/README.md index 45f98af..b096c0e 100644 --- a/README.md +++ b/README.md @@ -1,69 +1,82 @@ -# CodeIgniter 4 Application Starter +# 종량제 — 쓰레기봉투 물류시스템 (jongryangje) -## What is CodeIgniter? +**[종량제 개발목록 (엑셀 다운로드)](https://github.com/wixon-associates/jongryangje/raw/main/assets/종량제_개발목록_20260127.xlsx)** — 로컬 복제 후에는 [`assets/종량제_개발목록_20260127.xlsx`](./assets/종량제_개발목록_20260127.xlsx) -CodeIgniter is a PHP full-stack web framework that is light, fast, flexible and secure. -More information can be found at the [official site](https://codeigniter.com). +지자체·지정판매소 등을 대상으로 하는 **종량제 쓰레기봉투 물류·업무 웹 애플리케이션**입니다. +백엔드는 **[CodeIgniter 4](https://codeigniter.com/)** 기반입니다. -This repository holds a composer-installable app starter. -It has been built from the -[development repository](https://github.com/codeigniter4/CodeIgniter4). +**저장소:** [wixon-associates/jongryangje](https://github.com/wixon-associates/jongryangje) -More information about the plans for version 4 can be found in [CodeIgniter 4](https://forum.codeigniter.com/forumdisplay.php?fid=28) on the forums. +--- -You can read the [user guide](https://codeigniter.com/user_guide/) -corresponding to the latest version of the framework. +## 요구 사항 -## Installation & updates +- **PHP** 8.2 이상 (`composer.json` 기준) +- **Composer** 2.x +- **MySQL / MariaDB** (프로젝트는 `MySQLi` 드라이버 사용) +- 권장 PHP 확장: `intl`, `mbstring`, MySQL 사용 시 `mysqlnd` -`composer create-project codeigniter4/appstarter` then `composer update` whenever -there is a new release of the framework. +--- -When updating, check the release notes to see if there are any changes you might need to apply -to your `app` folder. The affected files can be copied or merged from -`vendor/codeigniter4/framework/app`. +## 빠른 시작 (로컬) -## Setup +### 1) 저장소 복제 -Copy `env` to `.env` and tailor for your app, specifically the baseURL -and any database settings. +```bash +git clone https://github.com/wixon-associates/jongryangje.git +cd jongryangje +``` -## Important Change with index.php +### 2) 의존성 설치 -`index.php` is no longer in the root of the project! It has been moved inside the *public* folder, -for better security and separation of components. +```bash +composer install +``` -This means that you should configure your web server to "point" to your project's *public* folder, and -not to the project root. A better practice would be to configure a virtual host to point there. A poor practice would be to point your web server to the project root and expect to enter *public/...*, as the rest of your logic and the -framework are exposed. +### 3) 환경 설정 -**Please** read the user guide for a better explanation of how CI4 works! +루트에 있는 샘플 파일을 복사해 `.env`를 만듭니다. -## Repository Management +```bash +cp env .env +``` -We use GitHub issues, in our main repository, to track **BUGS** and to track approved **DEVELOPMENT** work packages. -We use our [forum](http://forum.codeigniter.com) to provide SUPPORT and to discuss -FEATURE REQUESTS. +`.env`에서 최소한 다음을 설정합니다. -This repository is a "distribution" one, built by our release preparation script. -Problems with it can be raised on our forum, or as issues in the main repository. +| 항목 | 설명 | +|------|------| +| `app.baseURL` | 예: `http://localhost:8080/` (끝에 `/`) | +| `database.default.*` | DB 호스트·DB명·사용자·비밀번호 | +| `encryption.key` | 개인정보(이메일·연락처) 암호화용. **64자리 hex** (예: `php -r "echo bin2hex(random_bytes(32));"`) | -## Server Requirements +> `.env`는 **Git에 올리지 마세요.** 비밀번호·키가 들어갑니다. -PHP version 8.2 or higher is required, with the following extensions installed: +### 4) 데이터베이스 준비 -- [intl](http://php.net/manual/en/intl.requirements.php) -- [mbstring](http://php.net/manual/en/mbstring.installation.php) +팀에서 공유한 순서에 맞추거나, 예시로는 아래 스크립트를 참고합니다. -> [!WARNING] -> - The end of life date for PHP 7.4 was November 28, 2022. -> - The end of life date for PHP 8.0 was November 26, 2023. -> - The end of life date for PHP 8.1 was December 31, 2025. -> - If you are still using below PHP 8.2, you should upgrade immediately. -> - The end of life date for PHP 8.2 will be December 31, 2026. +| 파일 | 용도 | +|------|------| +| `writable/database/init_jongryangje_dev.sql` | DB·DB 사용자 생성 예시 | +| `writable/database/login_tables.sql` | 회원·로그인·지자체 등 기본 테이블 | +| `writable/database/member_approval_request_add.sql` | 회원가입 역할 승인 요청 테이블 (별도 추가) | +| `writable/database/menu_tables.sql` 등 | 메뉴·시드 관련 SQL | -Additionally, make sure that the following extensions are enabled in your PHP: +실제 적용 순서와 계정 정보는 **팀 내부 문서**를 따르세요. + +--- + +## 주요 URL (참고) + +| 경로 | 설명 | +|------|------| +| `/` | 홈 (비로그인 시 환영 화면 등) | +| `/login`, `/logout` | 로그인·로그아웃 | +| `/register` | 회원가입 (역할 승인 플로우 연동) | +| `/dashboard` | 로그인 후 사이트형 메인 흐름 | +| `/dashboard/classic-mock` 등 | UI 시안용 라우트 | +| `/admin` | 관리자 (권한·필터 적용) | +| `/admin/access/approvals` | 회원가입 역할 **승인 대기** 처리 | + +정확한 라우트는 `app/Config/Routes.php`를 확인하세요. -- json (enabled by default - don't turn it off) -- [mysqlnd](http://php.net/manual/en/mysqlnd.install.php) if you plan to use MySQL -- [libcurl](http://php.net/manual/en/curl.requirements.php) if you plan to use the HTTP\CURLRequest library diff --git a/assets/종량제_개발목록_20260127.xlsx b/assets/종량제_개발목록_20260127.xlsx new file mode 100644 index 0000000..f5b9b8f Binary files /dev/null and b/assets/종량제_개발목록_20260127.xlsx differ