Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
ba55e1f
ops: update frontend-cd
Zaiidmo Jan 21, 2026
ddc6de4
ops: update workflow permissions
Zaiidmo Jan 21, 2026
2ca1c87
Auth (#24)
Zaiidmo Jan 27, 2026
a50af97
Frontend (#30)
Zaiidmo Jan 28, 2026
150a57e
Fix: merge conflict in lockfile
Zaiidmo Jan 28, 2026
265b8f7
ops: update CI workflows names for status checks
Zaiidmo Jan 28, 2026
73c44c7
Frontend (#34)
Zaiidmo Jan 28, 2026
af95ff9
Merge branch 'develop' of github.com:CISCODE-MA/comptaleyes-be into d…
Zaiidmo Jan 28, 2026
0d4b0c5
ui: updated index html and added logo & favicon
Zaiidmo Jan 28, 2026
6de9c33
ui: added frontend scripts to the global workspace and updated logo p…
Zaiidmo Jan 28, 2026
5ea9d9e
ops: update deployment pipelines
Zaiidmo Jan 28, 2026
0750b63
fix: fix syntax error in frontend-cd
Zaiidmo Jan 28, 2026
a01c6b8
Updated merge conflicts
Zaiidmo Jan 28, 2026
cff99f3
chore: added MONGO_URI to environment schema
Zaiidmo Jan 29, 2026
d8a47b8
ops: Add automatic SSM parameter loading
Zaiidmo Jan 29, 2026
7af6efd
fix : backend-cd conflicts
Zaiidmo Jan 29, 2026
70dbddc
updated base branch
Zaiidmo Jan 29, 2026
8a715d8
frontend: removed BrowserRouter Duplication
Zaiidmo Jan 29, 2026
fe757aa
ops: updated frontend deployment to write env before build, remved pl…
Zaiidmo Jan 29, 2026
ade1877
chore(license): adopt MIT license for open-source project
Zaiidmo Jan 29, 2026
fa39af2
chore: upgraded authKit-UI version, and added .env.example
Zaiidmo Jan 29, 2026
96a70a2
Merge branch 'develop' of github.com:CISCODE-MA/comptaleyes-be into d…
Zaiidmo Jan 30, 2026
ae1c096
updated packages and ignored filetree
Zaiidmo Jan 30, 2026
6f970f8
Docs/git flow and version bump (#43)
Ciscode-Admin Jan 31, 2026
65ef027
ops: updated CI workflows + added CodeQL check workflow and added new…
Zaiidmo Jan 31, 2026
8eee9d9
Frontend (#42)
a-elkhiraooui-ciscode Jan 31, 2026
8933a2b
ops: remove CodeQl Analysis
Zaiidmo Jan 31, 2026
4a9bc9e
Merge branch 'develop' of github.com:CISCODE-MA/comptaleyes-be into d…
Zaiidmo Feb 2, 2026
7b9f74d
Frontend (#45)
a-elkhiraooui-ciscode Feb 2, 2026
89174b9
Pull remote dev
Zaiidmo Feb 2, 2026
aa191f5
Frontend (#47)
a-elkhiraooui-ciscode Feb 2, 2026
aa7854d
chore: ignore VS Code workspace files in .gitignore (#49)
RedaChannaCiscode Feb 2, 2026
abce784
chore(dev): add module development workflow and configurations (#50)
RedaChannaCiscode Feb 2, 2026
cb85b1b
frontend: updated authkit-ui version
Zaiidmo Feb 2, 2026
389061b
chore: configure dev environment and module linking
RedaChannaCiscode Feb 3, 2026
d2cfab2
Merge branch 'master' into chore/setup-dev-environment
Zaiidmo Feb 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 80 additions & 2 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,29 @@
- **Infrastructure**: AWS CDK
- **Modules**: Separate repositories (`@ciscode/*` packages)

### Backend Module Architecture
### Architecture Strategy: Application vs Modules

**🏢 ComptAlEyes Application (backend/src/modules/):**
**→ 4-Layer Clean Architecture** (for complex business logic)

**📦 External Modules (@ciscode/\*):**
**→ Controller-Service-Repository** (for simplicity and reusability)

> **Why different approaches?**
> - **Applications** have complex, evolving business logic requiring strict layer separation
> - **Modules** are reusable libraries that need to be simple, well-tested, and easy to integrate
> - Clean Architecture in apps, pragmatic CSR in modules = best of both worlds

### Backend Module Architecture (Application)
**ALWAYS follow 4-layer Clean Architecture for business modules:**

```
modules/
backend/src/modules/
└── {module-name}/
├── api/ # Controllers, DTOs, HTTP layer
│ ├── {name}.controller.ts
│ ├── guards/ # Module-specific guards
│ ├── decorators/ # Module-specific decorators
│ └── dto/
├── application/ # Use-cases, business orchestration
│ ├── ports/ # Interfaces/contracts
Expand All @@ -32,6 +47,9 @@ modules/

**Exception**: Utilities in `core/` (health, logging, config) can be simpler structures.

**See module-specific copilot-instructions.md for details.**


### Core vs Shared

**`core/`** - NestJS-specific, framework-dependent:
Expand Down Expand Up @@ -770,6 +788,66 @@ Before declaring a task complete, verify:

---

## 🔀 Git Workflow & Branching Strategy

### Branch Structure

**Main Branches:**
- `master` - **Production-ready code** (solo release)
- `develop` - **Development branch** (integrazione continua)

**Supporting Branches:**
- `feature/*` - Nuove feature
- `bugfix/*` - Bug fix
- `refactor/*` - Refactoring
- `chore/*` - Manutenzione

### Workflow Completo

**1. Staccare branch da develop:**
```bash
git checkout develop
git pull origin develop
git checkout -b feature/TASK-123-description
```

**2. Sviluppo e commit:**
```bash
# Lavora sul feature branch
git add .
git commit -m "feat(module): description [TASK-123]"
git push origin feature/TASK-123-description
```

**3. Pull Request verso develop:**
```bash
# PR: feature/TASK-123-description → develop
# Dopo review e merge, il codice entra in develop
```

**4. Release (solo quando pronto):**
```bash
# Quando develop è stabile e pronto per release:
git checkout master
git merge develop
git tag v1.2.0
git push origin master --tags
```

### ⚠️ IMPORTANTE

**SEMPRE:**
- ✅ Stacca branch da `develop`
- ✅ PR verso `develop`
- ✅ Merge su `master` solo per release

**MAI:**
- ❌ Branch da `master` (tranne hotfix critici)
- ❌ PR dirette a `master`
- ❌ Commit diretti su `master` o `develop`

---

## 🔀 Git Commit Convention

### Conventional Commits Format
Expand Down
161 changes: 161 additions & 0 deletions .github/prompts/clone-module.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
# 📦 Clone Module for Local Development

**Purpose:** Clone a @ciscode/* module repository for local development alongside ComptAlEyes app.

---

## Instructions for AI Assistant

When a user requests to clone a module for local development, follow these steps:

### 1. Verify Workspace Structure

Check that we're in the ComptAlEyes workspace:
```bash
pwd # Should show: .../comptaleyes
```

### 2. Check Available Modules

Show modules already available:
```bash
npm run module:list
```

### 3. Ask User for Module Details

Prompt user for:
- **Module name** (e.g., `auth-kit`, `database-kit`, `auth-kit-ui`)
- **Repository URL** (if not standard @ciscode/* repo)

### 4. Navigate to Modules Directory

```bash
cd ..
# Create modules directory if it doesn't exist
mkdir -p modules
cd modules
```

### 5. Clone the Module

```bash
# Clone with appropriate directory name
git clone <repo-url> <module-name>

# Example:
# git clone https://github.com/ciscode/authentication-kit.git auth-kit
```

### 6. Verify Module Structure

Check that the cloned module has:
- ✅ `package.json` with correct package name (e.g., `@ciscode/authentication-kit`)
- ✅ `src/` directory
- ✅ `tsconfig.json` or build configuration
- ✅ Build script (`build` or `build:watch`)

### 7. Install Module Dependencies

```bash
cd <module-name>
npm install
```

### 8. Return to Main App

```bash
cd ../../comptaleyes
```

### 9. Verify Auto-Discovery

```bash
npm run module:list
```

The newly cloned module should appear in the list.

### 10. Provide Next Steps

Tell user:
```
✅ Module '<module-name>' cloned successfully!

Next steps:
1. Run 'npm run module:setup' for interactive setup
2. Or manually link: 'npm run module:link <module-name>'
3. Start watch mode in module: 'cd ../modules/<module-name> && npm run build:watch'
```

---

## Expected Directory Structure After Clone

```
your-workspace/
├── comptaleyes/ (main app - current directory)
│ ├── scripts/
│ ├── backend/
│ └── frontend/
└── modules/ (parent level - ../modules)
├── auth-kit/ (newly cloned)
├── database-kit/
└── ...
```

---

## Error Handling

**If modules/ doesn't exist:**
- Create it at parent level: `mkdir -p ../modules`

**If module already exists:**
- Ask user if they want to:
- Pull latest changes (`git pull`)
- Delete and re-clone
- Skip

**If package.json missing or invalid:**
- Warn user that auto-discovery won't work
- Suggest checking repository URL

**If git clone fails:**
- Check repository URL
- Check git credentials
- Check network connection

---

## Validation Checklist

After cloning, verify:
- [ ] Module exists in `../modules/<module-name>`
- [ ] `package.json` exists with valid `@ciscode/*` package name
- [ ] Dependencies installed (`node_modules/` exists)
- [ ] Module appears in `npm run module:list`
- [ ] Can be linked via `npm run module:link <module-name>`

---

## Example Usage

**User says:** "Clone the database-kit module for local development"

**AI should:**
1. Navigate to `../modules`
2. Clone: `git clone <database-kit-repo-url> database-kit`
3. Install deps: `cd database-kit && npm install`
4. Return to app: `cd ../../comptaleyes`
5. Verify: `npm run module:list` shows database-kit
6. Provide next steps message

---

## Notes

- ✅ Scripts are portable (use relative paths)
- ⚠️ Module MUST be at `../modules/<name>` relative to main app
- ✅ Module name in directory should match what users use in commands
- ✅ Package name in `package.json` is what matters for linking
Loading