mirror of
https://github.com/s-frick/effigenix.git
synced 2026-03-28 08:29:36 +01:00
refactor: restructure repository with separate backend and frontend directories
- Move Java backend to backend/ directory - Create frontend/ directory for TypeScript TUI and future WebUI - Update .gitignore for Node.js and worktrees - Update README.md with new repository structure - Copy documentation to backend/
This commit is contained in:
parent
ec9114aa0a
commit
c2c48a03e8
141 changed files with 734 additions and 9 deletions
94
README.md
94
README.md
|
|
@ -2,6 +2,20 @@
|
|||
|
||||
ERP-System für Fleischereien mit HACCP-Compliance, GoBD-konform, Mehrfilialen-Support.
|
||||
|
||||
## Repository Structure
|
||||
|
||||
```
|
||||
effigenix/
|
||||
├── backend/ # Java Spring Boot Backend
|
||||
│ ├── src/ # Java source code (DDD + Clean Architecture)
|
||||
│ ├── docs/ # Backend documentation
|
||||
│ └── pom.xml # Maven configuration
|
||||
│
|
||||
└── frontend/ # TypeScript Frontend (TUI & WebUI)
|
||||
├── apps/ # Applications (CLI TUI, WebUI)
|
||||
└── packages/ # Shared packages (api-client, types, validation)
|
||||
```
|
||||
|
||||
## Architektur
|
||||
|
||||
**Domain-Driven Design + Clean Architecture + Java 21 + Spring Boot**
|
||||
|
|
@ -58,14 +72,15 @@ ERP-System für Fleischereien mit HACCP-Compliance, GoBD-konform, Mehrfilialen-S
|
|||
|
||||
## Getting Started
|
||||
|
||||
### Prerequisites
|
||||
### Backend (Java Spring Boot)
|
||||
|
||||
**Prerequisites:**
|
||||
- Java 21+
|
||||
- Maven 3.9+
|
||||
- PostgreSQL 15+
|
||||
- Docker (optional, für PostgreSQL)
|
||||
|
||||
### Database Setup
|
||||
**Database Setup:**
|
||||
|
||||
```bash
|
||||
# PostgreSQL mit Docker
|
||||
|
|
@ -77,9 +92,11 @@ docker run --name effigenix-postgres \
|
|||
-d postgres:15
|
||||
```
|
||||
|
||||
### Build & Run
|
||||
**Build & Run:**
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
|
||||
# Build
|
||||
mvn clean install
|
||||
|
||||
|
|
@ -90,16 +107,41 @@ mvn spring-boot:run
|
|||
mvn spring-boot:run -Dspring-boot.run.profiles=dev
|
||||
```
|
||||
|
||||
### API Documentation
|
||||
**API Documentation:**
|
||||
|
||||
Nach dem Start verfügbar unter:
|
||||
- Swagger UI: http://localhost:8080/swagger-ui.html
|
||||
- OpenAPI Spec: http://localhost:8080/api-docs
|
||||
|
||||
### Frontend (TypeScript TUI)
|
||||
|
||||
**Prerequisites:**
|
||||
- Node.js 20+
|
||||
- pnpm 9+
|
||||
|
||||
**Setup & Run:**
|
||||
|
||||
```bash
|
||||
cd frontend
|
||||
|
||||
# Install dependencies
|
||||
pnpm install
|
||||
|
||||
# Run TUI in dev mode
|
||||
pnpm run dev
|
||||
|
||||
# Build for production
|
||||
pnpm run build
|
||||
```
|
||||
|
||||
Detailed frontend documentation: [frontend/README.md](frontend/README.md)
|
||||
|
||||
## Project Structure
|
||||
|
||||
**Backend (Java):**
|
||||
|
||||
```
|
||||
src/main/java/com/effigenix/
|
||||
backend/src/main/java/de/effigenix/
|
||||
├── domain/ # Domain Layer (keine Framework-Dependencies!)
|
||||
│ └── usermanagement/
|
||||
│ ├── User.java
|
||||
|
|
@ -120,8 +162,27 @@ src/main/java/com/effigenix/
|
|||
├── security/ # AuthorizationPort, Action
|
||||
└── common/ # Result, ApplicationError
|
||||
|
||||
src/main/resources/
|
||||
└── db/migration/ # Flyway Migrations
|
||||
backend/src/main/resources/
|
||||
└── db/migration/ # Liquibase Migrations
|
||||
```
|
||||
|
||||
**Frontend (TypeScript):**
|
||||
|
||||
```
|
||||
frontend/
|
||||
├── apps/
|
||||
│ └── cli/ # Terminal UI (Ink)
|
||||
│ ├── src/
|
||||
│ │ ├── components/ # UI components
|
||||
│ │ ├── hooks/ # React hooks
|
||||
│ │ └── state/ # State management
|
||||
│ └── package.json
|
||||
│
|
||||
└── packages/ # Shared packages (reusable for WebUI)
|
||||
├── api-client/ # HTTP client für Backend API
|
||||
├── types/ # TypeScript types (generated from OpenAPI)
|
||||
├── validation/ # Zod schemas
|
||||
└── config/ # Shared configuration
|
||||
```
|
||||
|
||||
## User Management (Generic Subdomain)
|
||||
|
|
@ -166,7 +227,11 @@ public class CreateRecipe {
|
|||
|
||||
## Testing
|
||||
|
||||
**Backend:**
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
|
||||
# Unit Tests
|
||||
mvn test
|
||||
|
||||
|
|
@ -177,6 +242,21 @@ mvn verify
|
|||
mvn clean verify jacoco:report
|
||||
```
|
||||
|
||||
**Frontend:**
|
||||
|
||||
```bash
|
||||
cd frontend
|
||||
|
||||
# Unit Tests
|
||||
pnpm test
|
||||
|
||||
# Test Coverage
|
||||
pnpm run test:coverage
|
||||
|
||||
# Type Check
|
||||
pnpm run typecheck
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Proprietary - Effigenix GmbH
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue