mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-26 01:14:39 +02:00
refactor: restructure
monorepo with apps/ and services/ directories
This commit is contained in:
parent
25824ed0ac
commit
ff80aeec1f
4062 changed files with 2592 additions and 1278 deletions
|
|
@ -1,107 +0,0 @@
|
|||
# Location Update - Mana Core Auth
|
||||
|
||||
## Change Summary
|
||||
|
||||
The `mana-core-auth` service has been moved from `packages/mana-core-auth/` to the root level at `mana-core-auth/`.
|
||||
|
||||
## Rationale
|
||||
|
||||
The Mana Core Auth system is a **central authentication service** that serves the entire ecosystem, not a shared package/library. It should be at the monorepo root level, similar to other projects like:
|
||||
|
||||
- `maerchenzauber/`
|
||||
- `manacore/`
|
||||
- `memoro/`
|
||||
- `picture/`
|
||||
- `chat/`
|
||||
|
||||
This matches the monorepo structure where:
|
||||
- **Root-level projects** = Complete applications/services
|
||||
- **`packages/` directory** = Shared libraries and utilities (e.g., `@manacore/shared-auth`, `@manacore/shared-types`)
|
||||
|
||||
## Updated Structure
|
||||
|
||||
```
|
||||
manacore-monorepo/
|
||||
├── maerchenzauber/ # Project
|
||||
├── manacore/ # Project
|
||||
├── memoro/ # Project
|
||||
├── picture/ # Project
|
||||
├── chat/ # Project
|
||||
├── mana-core-auth/ # Central Auth Service ✅ (moved here)
|
||||
├── packages/ # Shared libraries
|
||||
│ ├── shared-auth/
|
||||
│ ├── shared-types/
|
||||
│ └── ...
|
||||
├── docker-compose.yml
|
||||
└── pnpm-workspace.yaml
|
||||
```
|
||||
|
||||
## Files Updated
|
||||
|
||||
### 1. docker-compose.yml
|
||||
- Changed postgres init volume: `./mana-core-auth/postgres/init`
|
||||
- Changed Dockerfile path: `./mana-core-auth/Dockerfile`
|
||||
|
||||
### 2. mana-core-auth/Dockerfile
|
||||
- Updated all `packages/mana-core-auth/` references to `mana-core-auth/`
|
||||
|
||||
### 3. mana-core-auth/package.json
|
||||
- Changed name from `@manacore/auth` to `mana-core-auth`
|
||||
- Reflects that it's a standalone service, not a shared package
|
||||
|
||||
### 4. Documentation Files
|
||||
- All `.md` files updated to reference correct path
|
||||
- `QUICKSTART.md`, `README.md`, `IMPLEMENTATION_SUMMARY.md` all updated
|
||||
|
||||
## Impact
|
||||
|
||||
### No Breaking Changes ✅
|
||||
- The service is standalone and doesn't affect other projects
|
||||
- Docker configuration updated to match new location
|
||||
- All internal references corrected
|
||||
|
||||
### Workspace Configuration
|
||||
The service is still part of the pnpm workspace (via `pnpm-workspace.yaml`), so you can still run:
|
||||
```bash
|
||||
pnpm install
|
||||
pnpm --filter mana-core-auth start:dev
|
||||
```
|
||||
|
||||
## Quick Start (Updated)
|
||||
|
||||
```bash
|
||||
# Navigate to the service
|
||||
cd mana-core-auth
|
||||
|
||||
# Generate JWT keys
|
||||
./scripts/generate-keys.sh
|
||||
|
||||
# Configure environment
|
||||
cp .env.example .env
|
||||
# Edit .env with your keys
|
||||
|
||||
# Start infrastructure
|
||||
docker-compose up postgres redis -d
|
||||
|
||||
# Run migrations
|
||||
pnpm migration:run
|
||||
|
||||
# Start development server
|
||||
pnpm start:dev
|
||||
```
|
||||
|
||||
## Integration with Other Projects
|
||||
|
||||
When you create the `@manacore/shared-auth` package for mobile/web apps, it will:
|
||||
- Live in `packages/shared-auth/` (shared library)
|
||||
- Connect to the `mana-core-auth` service (central service)
|
||||
- Be imported as `import { AuthService } from '@manacore/shared-auth'`
|
||||
|
||||
Clear separation:
|
||||
- **`mana-core-auth/`** = The backend service (NestJS, PostgreSQL)
|
||||
- **`packages/shared-auth/`** = Client library for apps (React Native, SvelteKit)
|
||||
|
||||
---
|
||||
|
||||
**Date:** 2025-11-25
|
||||
**Status:** ✅ Structure updated and verified
|
||||
Loading…
Add table
Add a link
Reference in a new issue