chore: phase 1 nativephp foundation setup

This commit is contained in:
Dwindi Ramadhana
2026-02-03 21:58:14 +07:00
commit dcec38ba94
64 changed files with 11633 additions and 0 deletions

53
rebuild-progress.md Normal file
View File

@@ -0,0 +1,53 @@
# NativePHP Rebuild Progress (Retraced)
## Confirmed source folders
- Backend: `../dewemoji-api`
- Chrome extension: `../dewemoji-chrome-ext`
- Website: `../dewemoji-site` (currently scaffold/empty)
## Current baseline
- Active backend logic exists in `dewemoji-api`.
- Active extension logic exists in `dewemoji-chrome-ext`.
- `dewemoji-site` currently has structure but no implemented content (mostly 0-byte files).
- New rebuild app scaffold now exists at `app/` (Laravel + NativePHP Desktop installed).
## Phase checklist
### Phase 0 - Retrace and documentation
- [x] Revalidated source folders with corrected names.
- [x] Rebuilt docs against corrected folders.
- [x] Marked `dewemoji-site` as scaffold status.
### Phase 1 - Foundation
- [x] Initialize NativePHP app in `dewemoji` (`app/` folder).
- [x] Install NativePHP Desktop scaffolding (`config/nativephp.php`, `NativeAppServiceProvider`).
- [x] Define initial env/config strategy (documented in `phase-1-foundation.md`).
- [x] Decide canonical data source: start from `dewemoji-api/data/emojis.json`.
### Phase 2 - API parity (extension first)
- [ ] Implement `GET /v1/emojis`.
- [ ] Implement `GET /v1/categories`.
- [ ] Implement `POST /v1/license/verify`.
- [ ] Preserve response/header compatibility (`X-Dewemoji-Tier`).
- [ ] Support both `q` and `query` inputs.
### Phase 3 - Website rebuild
- [ ] Build website pages in new app (index, emoji detail, api docs, legal pages).
- [ ] Replace scaffold in `dewemoji-site` via new NativePHP output.
### Phase 4 - Extension integration
- [ ] Point `dewemoji-chrome-ext` API base to new app endpoint.
- [ ] Validate free/pro flow, insert mode, and tone behavior.
### Phase 5 - Quality and release
- [ ] Add endpoint tests + regression checks for extension-critical fields.
- [ ] Add migration and rollback checklist.
## Critical risks to address early
- Backend mismatch: `q` vs `query`.
- Backend tier validation stubs in legacy PHP.
- Contract differences between current `/api/*` and extension `/v1/*`.
- Website source currently split (`dewemoji-api` active pages vs `dewemoji-site` empty scaffold).