Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
048a590
feat: unified upload system
tuturd Apr 27, 2026
240c614
chore: fix CVE
Suboyyy Jun 23, 2026
71e455b
fix: google jwt type
Suboyyy Jun 24, 2026
90a0151
fix: remove some any
tuturd Jun 24, 2026
8e772ac
Merge pull request #92 from ungdev/feat/upload-system
tuturd Jun 24, 2026
d1ae9e2
fix(import): add missing "_" in "bachelor_ia" item type filter
tuturd Jun 24, 2026
92ad210
Merge pull request #94 from ungdev/feat/upload-system
Remi-pcn Jun 24, 2026
d0f2cd4
feat: roadbook can be disable by empty env var
tuturd Jun 24, 2026
7e47cae
fix(ci): best control of github env & vars
tuturd Jun 24, 2026
5d4c12c
Merge pull request #95 from ungdev/roadbook-disable
Remi-pcn Jun 24, 2026
0115743
feat: legals & privacy pages uses ungdev org vars
tuturd Jun 24, 2026
9eed2b3
Merge branch 'dev' into legals-privacy-from-organization
tuturd Jun 24, 2026
d5be471
Merge pull request #96 from ungdev/legals-privacy-from-organization
tuturd Jun 24, 2026
e46e9f7
fix(ci): add missing args & env in Dockerfile
tuturd Jun 24, 2026
fb6e98f
refactor(mail): new templates & notebook features
tuturd Jun 24, 2026
ef62ebc
chore: add .env.exemple and backend dist in gitignore
Suboyyy Jun 25, 2026
b0037ba
feat(email): permanences reminders
tuturd Jun 29, 2026
6a9b39a
refactor(email): align news email with other emails templates
tuturd Jun 29, 2026
1f04508
refactor(email): improve front
tuturd Jun 30, 2026
daca979
feat(email): mentorship reminder template
tuturd Jun 30, 2026
45d1102
refactor(email): tent template
tuturd Jun 30, 2026
c95a8b5
style(admin): increasing width of admin pages
tuturd Jun 30, 2026
3535376
refactor: not all page at 7 width
Remi-pcn Jul 1, 2026
0beafba
feat(user): user creation form for admins
tuturd Jul 1, 2026
ba7b3a4
refactor(email): align WEI email with other emails templates
tuturd Jul 1, 2026
b962f23
Merge pull request #98 from ungdev/refactor/admin-pages
tuturd Jul 6, 2026
471e1ec
Merge branch 'dev' into refactor/mail
tuturd Jul 6, 2026
614cb67
Merge pull request #97 from ungdev/refactor/mail
tuturd Jul 6, 2026
816684a
feat(user): main admin new-user logic
tuturd Jul 6, 2026
918c03f
refactor(mail): new templates & notebook features
tuturd Jun 24, 2026
876eb71
feat(email): permanences reminders
tuturd Jun 29, 2026
5d816bd
refactor(email): align news email with other emails templates
tuturd Jun 29, 2026
311e956
refactor(email): improve front
tuturd Jun 30, 2026
bc9238f
feat(email): mentorship reminder template
tuturd Jun 30, 2026
d45c2e3
refactor(email): tent template
tuturd Jun 30, 2026
a29169d
refactor(email): align WEI email with other emails templates
tuturd Jul 1, 2026
ce00e49
chore: add .env.exemple and backend dist in gitignore
Suboyyy Jun 25, 2026
dfc009c
style(admin): increasing width of admin pages
tuturd Jun 30, 2026
fba37c9
refactor: not all page at 7 width
Remi-pcn Jul 1, 2026
f104457
feat(user): user creation form for admins
tuturd Jul 1, 2026
675c5d9
Merge branch 'dev' into feat/new-user
tuturd Jul 7, 2026
e28491f
fix(user): some issues on admin user creation
tuturd Jul 7, 2026
c651b3e
fix(.gitignore): add .vscode
tuturd Jul 10, 2026
41fd094
Merge pull request #100 from ungdev/feat/new-user
tuturd Jul 10, 2026
56b402b
refactor(parrainage): A26 forms
tuturd Jul 10, 2026
49910ff
chore: api dtos & pnpm migration
tuturd Jul 10, 2026
573c3b1
fix(auth): unused import
tuturd Jul 10, 2026
b6d9fe1
fix(ci): build-test instead of build for build-api job
tuturd Jul 10, 2026
3c020bf
fix(types): missing imports
tuturd Jul 10, 2026
7e28e8d
Merge pull request #104 from ungdev/chore/api-dto
tuturd Jul 10, 2026
ea70f98
fix(nginx): routes config
tuturd Jul 10, 2026
3b1f0f9
docs(env): sync .example with deployment vars
tuturd Jul 10, 2026
5038f83
refactor(emails): some english translations
tuturd Jul 11, 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
63 changes: 46 additions & 17 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,53 +54,66 @@ jobs:

build-api:
runs-on: self-hosted
if : github.event_name == 'pull_request'
if: github.event_name == 'pull_request'
needs:
- lint-api
steps:
- name: Checkout repository
uses: actions/checkout@v5

- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 11

- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: '24'
node-version: '23'
cache: 'pnpm'
cache-dependency-path: ./backend/pnpm-lock.yaml

- name: Install dependencies
working-directory: ./backend
run: |
npm ci
run: pnpm install --frozen-lockfile

- name: Build
- name: Build
working-directory: ./backend
run: npm run build-test
run: pnpm run build-test

build-front:
runs-on: self-hosted
if : github.event_name == 'pull_request'
if: github.event_name == 'pull_request'
needs:
- lint-front
steps:
- name: Checkout repository
uses: actions/checkout@v5

- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 11

- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: '24'
node-version: '23'
cache: 'pnpm'
cache-dependency-path: ./frontend/pnpm-lock.yaml

- name: Install dependencies
working-directory: ./frontend
run: |
npm ci
run: pnpm install --frozen-lockfile

- name: Build
working-directory: ./frontend
run: npm run build
run: pnpm run build

deploy-api:
runs-on: self-hosted
if : github.event_name == 'push'
environment: ${{ github.ref == 'refs/heads/dev' && 'development' || 'production' }}
needs:
- lint-api
steps:
Expand Down Expand Up @@ -128,6 +141,7 @@ jobs:
deploy-front:
runs-on: self-hosted
if : github.event_name == 'push'
environment: ${{ github.ref == 'refs/heads/dev' && 'development' || 'production' }}
needs:
- lint-front
steps:
Expand All @@ -150,11 +164,26 @@ jobs:
context: ./frontend
push: true
build-args: |
VITE_API_URL=${{ github.ref == 'refs/heads/prod' && 'https://integration.utt.fr/api' || 'https://integration.dev.uttnetgroup.fr/api' }}
VITE_SERVICE_URL=${{ github.ref == 'refs/heads/prod' && 'https://integration.utt.fr/' || 'https://integration.dev.uttnetgroup.fr/' }}
VITE_ANALYTICS_WEBSITE_ID=${{ github.ref == 'refs/heads/prod' && secrets.ANALYTICS_WEBSITE_ID_PROD || secrets.ANALYTICS_WEBSITE_ID_DEV }}
VITE_ROADBOOK_URL_FRENCH=${{ secrets.ROADBOOK_URL_FRENCH }}
VITE_ROADBOOK_URL_ENGLISH=${{ secrets.ROADBOOK_URL_ENGLISH }}
VITE_CAS_LOGIN_URL=${{ secrets.CAS_LOGIN_URL }}
VITE_API_URL=${{ vars.API_URL }}
VITE_SERVICE_URL=${{ vars.SERVICE_URL }}
VITE_ANALYTICS_WEBSITE_ID=${{ secrets.ANALYTICS_WEBSITE_ID }}
VITE_ROADBOOK_URL_FRENCH=${{ vars.ROADBOOK_URL_FRENCH }}
VITE_ROADBOOK_URL_ENGLISH=${{ vars.ROADBOOK_URL_ENGLISH }}
VITE_CAS_LOGIN_URL=${{ vars.CAS_LOGIN_URL }}
VITE_ASSOCIATION_ADDRESS=${{ vars.ASSOCIATION_ADDRESS }}
VITE_ASSOCIATION_EMAIL=${{ vars.ASSOCIATION_EMAIL }}
VITE_ASSOCIATION_NAME=${{ vars.ASSOCIATION_NAME }}
VITE_ASSOCIATION_PHONE=${{ vars.ASSOCIATION_PHONE }}
VITE_ASSOCIATION_RNA=${{ vars.ASSOCIATION_RNA }}
VITE_ASSOCIATION_RCS=${{ vars.ASSOCIATION_RCS }}
VITE_BDE_ADDRESS=${{ vars.BDE_ADDRESS }}
VITE_BDE_EMAIL=${{ vars.BDE_EMAIL }}
VITE_BDE_NAME=${{ vars.BDE_NAME }}
VITE_BDE_PHONE=${{ vars.BDE_PHONE }}
VITE_BDE_RNA=${{ vars.BDE_RNA }}
VITE_BDE_SIRET=${{ vars.BDE_SIRET }}
VITE_BDE_SIREN=${{ vars.BDE_SIREN }}
VITE_DPO_EMAIL=${{ vars.DPO_EMAIL }}
VITE_DPO_NAME=${{ vars.DPO_NAME }}
tags: |
${{ secrets.REGISTRY_URL }}/integration/front:${{ github.ref == 'refs/heads/prod' && 'prod' || 'dev' }}
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,14 @@ frontend/dist/
backend/node_modules/
backend/uploads/
backend/exports/
backend/dist

# Autres dossiers à ignorer
.vscode/

# Autres fichiers à ignorer
.DS_Store
*.log
*.env
*.pem
google_credentials.json
33 changes: 33 additions & 0 deletions backend/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
API_UTT_AUTH_URL=
API_UTT_ADMIS_URL=
API_UTT_ADMIS_URL_ISMAJOR=
API_UTT_USERNAME=
API_UTT_PASSWORD=

AUTOMATION_TOKEN=

EMAIL_HOST=
EMAIL_USER=
EMAIL_PASSWORD=
EMAIL_FROM=

CAS_VALIDATE_URL=
CAS_LOGIN_URL=

DATABASE_URL=postgresql://admin:password@localhost:5432/integration-dev
OUTSIDE_DATABASE_URL=postgresql://admin:password@localhost:5432/integration-dev

JWT_SECRET=

POSTGRES_PASSWORD=password
POSTGRES_USER=admin
POSTGRES_DB=integration-dev
POSTGRES_HOST=localhost
POSTGRES_PORT=5432

SERVER_PORT=4001
SERVICE_URL=http://localhost:4001/

SHOTGUN_PASSWORD=vodka

SPREADSHEET_ID=
12 changes: 12 additions & 0 deletions backend/.env.exemple
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
DATABASE_URL=postgresql://admin:password@localhost:5432/integration-dev
OUTSIDE_DATABASE_URL=postgresql://admin:password@localhost:5432/integration-dev
POSTGRES_PASSWORD=password
POSTGRES_USER=admin
POSTGRES_DB=integration-dev
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
SERVER_PORT=4001
ZIMBRA_PASSWORD=codecode
SHOTGUN_PASSWORD=vodka
CAS_VALIDATE_URL=
CAS_LOGIN_URL=
10 changes: 10 additions & 0 deletions backend/.prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"semi": true,
"trailingComma": "all",
"singleQuote": true,
"printWidth": 120,
"tabWidth": 4,
"arrowParens": "always",
"endOfLine": "lf",
"bracketSameLine": true
}
6 changes: 4 additions & 2 deletions backend/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@ WORKDIR /app
# Install system dependencies (including PostgreSQL client)
RUN apt-get update && apt-get install -y postgresql-client && apt-get clean && rm -rf /var/lib/apt/lists/*

RUN corepack enable

# Copy package files and install dependencies
COPY package.json package-lock.json ./
RUN npm install -g npm@latest && npm install
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
RUN pnpm install --frozen-lockfile

# Copy the rest of the application files
COPY . .
Expand Down
Loading
Loading