Commit Graph

40 Commits

Author SHA1 Message Date
Mathis HERRIOT
e210f1f95f feat: add env schema for environment variable validation
Introduced `env.schema.ts` for structured validation of environment variables using Zod. Includes defaults and validations for database, S3, security, mail, Redis, and session configurations.
2026-01-08 15:25:16 +01:00
Mathis HERRIOT
2218768adb feat: add CommonModule with PurgeService and global exception filter
Introduced CommonModule to centralize shared functionality. Added PurgeService for automated database cleanup and a global exception filter for unified error handling.
2026-01-08 15:25:04 +01:00
Mathis HERRIOT
705f1ad6e0 feat: add CategoriesModule with CRUD operations
Implemented CategoriesModule with controller, service, and DTOs for managing categories. Includes endpoints for creation, retrieval, updating, and deletion, integrated with database logic.
2026-01-08 15:24:48 +01:00
Mathis HERRIOT
42805e371e feat: implement AuthModule with authentication and RBAC features
Added AuthModule with services, controllers, and guards for authentication. Implements session management, role-based access control, 2FA, and DTOs for user login, registration, and token refresh.
2026-01-08 15:24:40 +01:00
Mathis HERRIOT
9406ed9350 feat: implement ApiKeysModule with services, controller, and CRUD operations
Added a dedicated ApiKeysModule to manage API keys. Includes functionality to create, list, revoke, and validate keys, leveraging cryptographic hashing and database support. Integrated with authentication guards for security.
2026-01-08 15:24:23 +01:00
Mathis HERRIOT
b3035eb2ab feat: add MailModule to app imports 2026-01-08 12:41:42 +01:00
Mathis HERRIOT
a6fdbdb06d chore: refactor crypto service tests for readability and lint compliance 2026-01-08 12:41:35 +01:00
Mathis HERRIOT
48b233eae4 chore: add comment to ignore lint rule in S3 service test 2026-01-08 12:41:31 +01:00
Mathis HERRIOT
89bd9d65e7 feat: implement MailModule with email services and tests
Added MailModule with services for email validation and password reset functionalities. Includes configuration via `@nestjs-modules/mailer` and comprehensive unit tests.
2026-01-08 12:41:27 +01:00
Mathis HERRIOT
8cf1699717 feat: add mailing dependencies to support email functionality
Added `@nestjs-modules/mailer`, `nodemailer`, and their respective types to backend dependencies for implementing email services. Updated `pnpm-lock.yaml` to reflect these changes.
2026-01-08 12:41:06 +01:00
93b86a6b7a Mock @noble/post-quantum and jose dependencies, update Jest configurations in package.json for compatibility
Some checks failed
Backend Tests / test (push) Successful in 9m35s
Lint / lint (push) Failing after 4m58s
2026-01-07 21:25:46 +01:00
06d2a65567 Add S3Service with tests and module setup for MinIO integration 2026-01-07 21:09:33 +01:00
fd32a14221 Add S3Module to app.module.ts for S3 integration 2026-01-07 21:09:17 +01:00
cee4d41ef0 Add minio dependency to package.json 2026-01-07 21:08:49 +01:00
Mathis HERRIOT
187c51f932 chore: reorder and format imports for consistency across modules
All checks were successful
Lint / lint (push) Successful in 9m37s
2026-01-06 12:30:55 +01:00
Mathis HERRIOT
c1bc68e3e3 feat: add dependencies for cryptographic utilities
Some checks failed
Lint / lint (push) Failing after 4m59s
Added `@noble/post-quantum`, `@node-rs/argon2`, and `jose` to backend dependencies to support advanced cryptographic operations, including post-quantum algorithms, Argon2 hashing, and JWT/JWE handling.
2026-01-06 12:09:57 +01:00
Mathis HERRIOT
810acd8ed4 feat: implement CryptoModule with comprehensive cryptographic utilities and testing
Added CryptoModule providing services for Argon2 hashing, JWT handling, JWE encryption/decryption, JWS signing/verification, and post-quantum cryptography (ML-KEM). Includes extensive unit tests for all features.
2026-01-06 12:09:44 +01:00
Mathis HERRIOT
adceada1b6 feat: add CryptoModule to app imports 2026-01-06 12:09:28 +01:00
Mathis HERRIOT
dfba0c0adb feat: integrate ConfigModule and DatabaseModule into app initialization 2026-01-06 11:42:44 +01:00
Mathis HERRIOT
38e97741e0 chore: reformat schemas and documentation files for consistency
Some checks failed
Lint / lint (push) Failing after 4m58s
Standardized formatting across database schema files and updated documentation structure to improve clarity and organization.
2026-01-05 16:17:41 +01:00
Mathis HERRIOT
bfce5b2964 chore: add new lint script and apply consistent formatting across configs
Some checks failed
Lint / lint (push) Failing after 4m57s
Added `lint:write` script to streamline linting process and updated formatting in `drizzle.config.ts`
2026-01-05 15:59:55 +01:00
Mathis HERRIOT
b22129c4dd chore: reformat database schema files for readability
Applied consistent formatting and indentation across all schema files using Drizzle ORM to enhance code clarity and maintainability.
2026-01-05 15:59:15 +01:00
Mathis HERRIOT
694031c05b feat: add API keys schema with Drizzle ORM integration 2026-01-05 14:15:35 +01:00
Mathis HERRIOT
cbf7bfcb0a feat: add audit logs schema with Drizzle ORM integration 2026-01-05 14:15:32 +01:00
Mathis HERRIOT
9fb890699a feat: add content schema with Drizzle ORM integration 2026-01-05 14:15:28 +01:00
Mathis HERRIOT
9439c004e2 feat: add RBAC schemas with Drizzle ORM integration 2026-01-05 14:15:22 +01:00
Mathis HERRIOT
27954daf64 feat: add reports schema with Drizzle ORM integration 2026-01-05 14:15:18 +01:00
Mathis HERRIOT
7001082fb2 feat: add sessions schema with Drizzle ORM integration 2026-01-05 14:15:13 +01:00
Mathis HERRIOT
04ca5090df feat: add tags schema with Drizzle ORM integration 2026-01-05 14:14:57 +01:00
Mathis HERRIOT
19ceac1303 feat: export additional schemas for RBAC, sessions, API keys, tags, content, reports, and audit logs 2026-01-05 14:14:51 +01:00
Mathis HERRIOT
381ca24501 feat: enhance user schema with PGP encryption, GDPR fields, and 2FA support 2026-01-05 14:14:42 +01:00
Mathis HERRIOT
eefe2906ed feat: add database scripts for Drizzle ORM (generate, migrate, studio) in backend package.json 2026-01-05 14:14:22 +01:00
Mathis HERRIOT
8ee0491c96 chore: update Drizzle ORM schema path in configuration 2026-01-05 14:14:08 +01:00
Mathis HERRIOT
7761e26d32 feat: add user schema with PostgreSQL integration using Drizzle ORM 2026-01-05 12:10:49 +01:00
Mathis HERRIOT
43b4334971 feat: add Drizzle ORM configuration for PostgreSQL integration in backend 2026-01-05 12:08:01 +01:00
Mathis HERRIOT
07f905d7c9 feat: add support for dotenv, PostgreSQL, and Drizzle ORM in backend dependencies 2026-01-05 12:07:46 +01:00
Mathis HERRIOT
72f3bb7723 feat: implement database module and service with PostgreSQL integration and migrations support 2026-01-05 12:07:12 +01:00
403e2ca922 Update package name, adjust Biome config, and fix import order in e2e tests 2026-01-04 23:43:13 +01:00
3259927fd1 Update formatting rules to enforce consistent tab-based indentation across the backend 2026-01-04 23:30:54 +01:00
4b53a8d410 Initialize NestJS backend with basic structure, Biome setup, and essential configurations 2026-01-04 23:26:27 +01:00