AcadeDoc/apps/client
Corentin 5b512e6324 feat(acadedoc): replace EE Settings with open source UI (audit log, API keys, OIDC status) — R4.5
Server (NestJS):
- AcadeniceAuditLogModule: GET /api/acadenice/audit-log (admin/owner, Kysely, paginated + filtered)
- AcadeniceApiKeysModule: GET/POST/DELETE /api/acadenice/api-keys (JWT, bcrypt hash, acdk_ prefix)
- AcadeniceSecurityModule: GET /api/acadenice/security/oidc-status (admin, no secrets exposed)
- Migration 20260510T100000: acadenice_api_key table with token_hash + bcrypt
- Permissions catalog: added audit_log:read

Client (React 18 + Mantine v7):
- Audit log page: paginated table with filters (event, userId, date range)
- API keys page: list/create/revoke personal tokens, one-time display modal
- Security/OIDC status page: read-only, env-var config reference
- Sidebar rewired: Security & SSO, API keys, Audit log -> acadenice/* routes (no EE feature gates)
- Prefetch functions for new routes

Tests: 36 server (Jest) + client typecheck clean

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 12:24:00 +02:00
..
public fix(acadenice): include parent-child edges in graph + space-scope view — R4.6 2026-05-08 12:14:28 +02:00
src feat(acadedoc): replace EE Settings with open source UI (audit log, API keys, OIDC status) — R4.5 2026-05-08 12:24:00 +02:00
.dockerignore
.gitignore
Dockerfile.e2e test(e2e): add data-testid attributes for Playwright e2e (Patch 008 R3.1.e) 2026-05-08 00:37:39 +02:00
eslint.config.mjs chore: fix linting (#544) 2024-12-09 14:51:31 +00:00
index.html feat(acadedoc): add AcadeDoc branding, Brevo SMTP preset, UI customization — R4.4 2026-05-08 11:36:38 +02:00
package.json feat(acadenice): add timeline view (Gantt) for databases — R4.1 2026-05-08 11:27:11 +02:00
postcss.config.js
README.md
tsconfig.json
tsconfig.node.json
vite.config.ts refactor(acadedoc): move branding from .env to UI-only — Patch 020 2026-05-08 11:49:49 +02:00
vitest.config.mts fix(acadenice): resolve test suite failures across R3 sub-blocks (Patch 017) 2026-05-08 10:36:19 +02:00

React + TypeScript + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

Expanding the ESLint configuration

If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:

  • Configure the top-level parserOptions property like this:
   parserOptions: {
    ecmaVersion: 'latest',
    sourceType: 'module',
    project: ['./tsconfig.json', './tsconfig.node.json'],
    tsconfigRootDir: __dirname,
   },
  • Replace plugin:@typescript-eslint/recommended to plugin:@typescript-eslint/recommended-type-checked or plugin:@typescript-eslint/strict-type-checked
  • Optionally add plugin:@typescript-eslint/stylistic-type-checked
  • Install eslint-plugin-react and add plugin:react/recommended & plugin:react/jsx-runtime to the extends list