Commit graph

487 commits

Author SHA1 Message Date
Tiago Yamamoto
93ca6d64ef feat(tests): fix candidate dashboard and apply form tests 2026-01-01 11:56:00 -03:00
Tiago Yamamoto
812affb803 feat(tests): implement unit tests for job post and application forms and fix dashboard tests 2026-01-01 11:15:32 -03:00
Tiago Yamamoto
d79fa8e97a feat: increase test coverage backend/frontend and setup e2e 2026-01-01 10:54:58 -03:00
Tiago Yamamoto
18727f8c99 fix(frontend): remove duplicate credential handler functions in settings page 2025-12-31 17:21:54 -03:00
Tiago Yamamoto
895974878d refactor: move credentials to settings page and update sidebar 2025-12-31 16:44:29 -03:00
Tiago Yamamoto
1249c9a499 docs: add RSA_PRIVATE_KEY_BASE64 to backoffice .env.example 2025-12-31 16:34:59 -03:00
Tiago Yamamoto
c26ad578b9 feat: migrate credentials management to backoffice nestjs 2025-12-31 16:25:32 -03:00
Tiago Yamamoto
2e7da0b28e feat: add backoffice credentials page and backend support 2025-12-31 16:13:27 -03:00
Tiago Yamamoto
e637117f40 feat(security): migrate auth to httpOnly cookies - Frontend: remove localStorage tokens, use sessionStorage for user data, add credentials include - Backend: add logout endpoint to clear cookie 2025-12-31 15:16:45 -03:00
Tiago Yamamoto
54a77382b7 chore: remove legacy language store (cleanup i18n) 2025-12-31 14:07:51 -03:00
Tiago Yamamoto
c1ab5004bf chore: trigger frontend deploy 2025-12-31 13:39:35 -03:00
Tiago Yamamoto
549ddd0a4e chore: trigger i18n frontend deploy 2025-12-31 13:31:58 -03:00
Tiago Yamamoto
33e7bbb334 feat(i18n): internationalize sidebar and dashboards 2025-12-31 13:20:04 -03:00
Tiago Yamamoto
3e81ae40e7 fix(frontend): add version marker (v2) to debug deployment 2025-12-31 12:08:32 -03:00
Tiago Yamamoto
3cb1db81c0 feat(frontend): i18n for admin users page 2025-12-31 11:47:15 -03:00
Tiago Yamamoto
e845ba63c8 fix(frontend): language switcher focus styles and debug logs 2025-12-31 10:35:51 -03:00
Tiago Yamamoto
798031420e fix(frontend): language switcher cursor and persistence logic 2025-12-31 10:27:33 -03:00
Tiago Yamamoto
8dbcd01336 fix(frontend): use correct language switcher in dashboard header 2025-12-31 10:16:03 -03:00
Tiago Yamamoto
5f5afbaf43 fix(frontend): robust runtime config loading in api layer 2025-12-31 10:06:11 -03:00
Tiago Yamamoto
1eb3da814d fix(frontend): block access until runtime config is loaded 2025-12-31 09:56:01 -03:00
Tiago Yamamoto
e1bbd94224 fix(frontend): usage of runtime config in HomePage 2025-12-31 09:42:07 -03:00
Tiago Yamamoto
4577310c75 feat(frontend): use runtime env vars for config endpoint
Changed /api/config to read API_URL (without NEXT_PUBLIC_ prefix)
which allows runtime configuration without rebuilding the image.

Priority order:
1. API_URL (runtime env var)
2. NEXT_PUBLIC_API_URL (build-time fallback)
3. Default localhost values
2025-12-31 09:39:02 -03:00
Tiago Yamamoto
0da936550b feat(frontend): add runtime config for environment variables
- Add /api/config endpoint for runtime env var fetching
- Add config.ts service with sync getters (getApiUrl, getBackofficeUrl, etc.)
- Add ConfigContext for React components
- Update api.ts, auth.ts, storage.ts to use runtime config
- Update layout.tsx to wrap app with ConfigProvider
- Fix Dockerfile default port from 8080 to 8521

This allows the frontend to read environment variables at runtime
instead of baking them in during build time.
2025-12-31 08:48:32 -03:00
Tiago Yamamoto
2e8a12682c docs: update backend documentation with current date 2025-12-29 10:41:03 -03:00
Tiago Yamamoto
a62464457d fix: ignore prune errors when images are in use 2025-12-29 10:38:53 -03:00
Tiago Yamamoto
8ba5e9e8e0 chore: simplify deploy workflow to pull-only with podman 2025-12-29 10:23:32 -03:00
Tiago Yamamoto
1058b7005f chore: update deploy workflow and frontend Dockerfile 2025-12-28 23:28:44 -03:00
bohessefmvb
808ef3524f
Update .drone.yml
Ajuste
2025-12-28 21:55:19 -03:00
Tiago Yamamoto
59b1b5ea6a fix: add --no-cache and correct API URLs to frontend build 2025-12-28 16:07:51 -03:00
Tiago Yamamoto
a65259688f fix(docker): Increase NODE_OPTIONS memory for build
The docker build was failing due to a JavaScript heap out of memory error.
This commit increases the --max-old-space-size in NODE_OPTIONS from 384MB to 2048MB
in the builder stage of the Dockerfile to provide more memory for the build process,
resolving the memory allocation failure during
> backoffice@0.0.1 build /home/yamamoto/lab/gohorsejobs/backoffice
> nest build.
2025-12-28 13:48:22 -03:00
Tiago Yamamoto
d894012af6 perf(docker): ultra-optimize backend build
- Use scratch base image (< 20MB final vs ~50MB alpine)
- Add BuildKit cache for go modules and build cache
- Selective COPY (cmd, internal, migrations, docs) instead of COPY . .
- Remove HEALTHCHECK (not supported by Podman OCI)
- Update .gitignore with more binary patterns
- Optimize .dockerignore to exclude tests and binaries
2025-12-28 12:05:12 -03:00
Tiago Yamamoto
3d704191e1 perf(docker): optimize backoffice Dockerfile
- Add --prefer-offline for faster installs
- Reduce NODE_OPTIONS to 384MB
- Add pnpm store prune to cleanup unused packages
- Unique cache id (pnpm-backoffice) to avoid conflicts
- Cleanup caches in same layer
2025-12-28 11:21:57 -03:00
Tiago Yamamoto
a9d6ac0305 perf(docker): migrate frontend to pnpm + optimize dockerignore
- Migrate from npm to pnpm for 2-3x faster installs
- Add BuildKit cache mount for pnpm store
- Auto-import package-lock.json to pnpm-lock.yaml
- Reduce NODE_OPTIONS memory to 512MB
- Add more exclusions to .dockerignore (cypress, e2e, tests)
- Cleanup caches in same layer to save disk
2025-12-28 11:20:33 -03:00
Tiago Yamamoto
93367d7cd6 test(backoffice): add unit tests for StripeService
- Add 8 test cases covering all StripeService methods
- Mock Stripe SDK for isolated testing
- Test createCustomer, createSubscription, cancelSubscription
- Test listSubscriptions, createCheckoutSession, createBillingPortalSession
- Test constructWebhookEvent and onModuleInit
2025-12-28 11:03:58 -03:00
Tiago Yamamoto
cb31713307 fix(docker): update frontend Dockerfile for Podman compatibility
- Remove deprecated --only=production flag
- Add default value for NEXT_PUBLIC_API_URL build arg
- Add BuildKit cache mount for npm
- Remove HEALTHCHECK (not supported by Podman OCI format)
2025-12-28 11:02:05 -03:00
Tiago Yamamoto
632fc78982 feat(ci): add backoffice to deploy pipeline + optimize Dockerfile
- Add backoffice paths trigger to deploy workflow
- Implement conditional builds (only build changed services)
- Optimize Dockerfile with BuildKit cache mounts
- Update pnpm to latest version
- Remove HEALTHCHECK (not supported by Podman OCI format)
2025-12-28 10:47:28 -03:00
Tiago Yamamoto
69534f5810 docs: update roadmap and add admin handler tests 2025-12-28 03:04:18 -03:00
Tiago Yamamoto
c61022a277 docs: update ER diagram with all tables 2025-12-28 02:39:03 -03:00
Tiago Yamamoto
c0ed01232c docs(backoffice): add C4 architecture diagram 2025-12-28 02:36:56 -03:00
Tiago Yamamoto
8bfd713f0f docs: fix mermaid syntax in README 2025-12-28 02:35:27 -03:00
Tiago Yamamoto
a5323a4eaf fix(backend): fix AdminService tests and expand CoreHandlers coverage 2025-12-28 02:32:57 -03:00
Tiago Yamamoto
6c87078200 test: increase backend test coverage - sanitizer, middleware, handlers, services
- Add tests for SanitizeEmail, SanitizeDescription, DefaultSanitizer
- Add AuthMiddleware and RequireRole tests
- Add admin_handlers_test.go and location_handlers_test.go
- Expand application_service_test.go with more methods
2025-12-28 01:48:12 -03:00
Tiago Yamamoto
1e30f57705 test: add new NotificationService instantiation test 2025-12-28 01:34:07 -03:00
Tiago Yamamoto
9c38c5f6c2 fix: use setup-go action instead of container image for CI tests 2025-12-28 01:32:56 -03:00
Tiago Yamamoto
a5bb7b2a31 feat: add backend tests to CI pipeline, improve responsive design, add unit tests
- Add test-backend job to .forgejo/workflows/deploy.yaml
- Fix JobService and TicketService tests
- Create ticket_service_test.go
- Create frontend unit tests (forgot-password, jobs/[id], dashboard/users)
- Improve responsiveness for users page, forgot-password, and apply page
2025-12-28 01:27:48 -03:00
Tiago Yamamoto
53d5b9822a fix: frontend build error in tickets page 2025-12-28 00:29:46 -03:00
Tiago Yamamoto
b79566aad7 docs: update backend api docs and swagger 2025-12-28 00:29:34 -03:00
Tiago Yamamoto
2217755478 docs: fix mermaid diagram syntax in backend readme 2025-12-27 23:42:42 -03:00
Tiago Yamamoto
6a7759b039 refactor(frontend): replace mocks with real api integration in my-jobs 2025-12-27 23:40:35 -03:00
Tiago Yamamoto
31e269034d docs: add b2c marketplace roadmap section to main readme 2025-12-27 23:38:53 -03:00