Commit graph

1005 commits

Author SHA1 Message Date
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
Tiago Yamamoto
a79743df33 feat(frontend): implement roadmap features - services link and boost job action 2025-12-27 23:25:16 -03:00
Tiago Yamamoto
e6131dfe33 docs: adjust deploy runner info to 'docker' in backend readme 2025-12-27 23:19:55 -03:00
Tiago Yamamoto
82e55ed9ac ci: refine deploy workflow with podman fixes, dir check and action url 2025-12-27 23:17:32 -03:00
Tiago Yamamoto
83e16d78f6 docs: update roadmap with intense marketplace gap analysis 2025-12-27 23:15:46 -03:00
Tiago Yamamoto
7783c9a0dc docs: add troubleshooting section and update workflow runner label 2025-12-27 23:11:08 -03:00
Tiago Yamamoto
c651cbda1d docs/ci: move workflow to .forgejo and add architecture diagram 2025-12-27 23:02:54 -03:00
Tiago Yamamoto
0bc1c27ef6 docs: update backend documentation with deployment and new services 2025-12-27 22:58:23 -03:00
Tiago Yamamoto
1b518aa468 feat: configure backend dev deployment workflow 2025-12-27 22:54:37 -03:00
Tiago Yamamoto
bb24725f36 Remove accidental root package-lock.json 2025-12-27 21:58:59 -03:00
Tiago Yamamoto
e49485fe64 Update package-lock.json and finalize dev state 2025-12-27 21:56:50 -03:00
Tiago Yamamoto
9d19751acb Resolve merge conflicts in backend, backoffice, and frontend 2025-12-27 21:45:48 -03:00
Tiago Yamamoto
cba13eaab5 Merge branch 'dev' of github.com-pessoal:rede5/gohorsejobs into dev 2025-12-27 20:50:05 -03:00
Tiago Yamamoto
0fd114d097 chore(backoffice): update dependencies and resolve peer dependency warnings 2025-12-27 20:49:08 -03:00
Tiago Yamamoto
b23393bf35 feat: implement stripe subscriptions, google analytics, and user crud
- Backend:
  - Add Stripe subscription fields to companies (migration 019)
  - Implement Stripe Checkout and Webhook handlers
  - Add Metrics API (view count, recording)
  - Update Company and Job models
- Frontend:
  - Add Google Analytics component
  - Implement User CRUD in Backoffice (Dashboard)
  - Add 'Featured' badge to JobCard
- Docs: Update Roadmap and artifacts
2025-12-27 12:06:54 -03:00
Tiago Yamamoto
c9a46acaff fix: move go-sqlmock to direct dependencies 2025-12-27 11:31:59 -03:00
Tiago Yamamoto
63023b922f feat(notifications): implementar sistema de notificações e FCM
- Migration 017: tabelas notifications e fcm_tokens
- Models: Notification, FCMToken
- NotificationService: CRUD, push notifications helper
- FCMService: Firebase Cloud Messaging integration
- NotificationHandler: endpoints REST
- Rotas autenticadas: /api/v1/notifications/*

Endpoints:
- GET /api/v1/notifications
- GET /api/v1/notifications/unread-count
- PUT /api/v1/notifications/read-all
- PUT /api/v1/notifications/{id}/read
- DELETE /api/v1/notifications/{id}
- POST /api/v1/notifications/fcm-token
- DELETE /api/v1/notifications/fcm-token
2025-12-27 11:24:27 -03:00
Tiago Yamamoto
9ee9f6855c feat: implementar múltiplas features
Backend:
- Password reset flow (forgot/reset endpoints, tokens table)
- Profile management (PUT /users/me, skills, experience, education)
- Tickets system (CRUD, messages, stats)
- Activity logs (list, stats)
- Document validator (CNPJ, CPF, EIN support)
- Input sanitizer (XSS prevention)
- Full-text search em vagas (plainto_tsquery)
- Filtros avançados (location, salary, workMode)
- Ordenação (date, salary, relevance)

Frontend:
- Forgot/Reset password pages
- Candidate profile edit page
- Sanitize utilities (sanitize.ts)

Backoffice:
- TicketsModule proxy
- ActivityLogsModule proxy
- Dockerfile otimizado (multi-stage, non-root, healthcheck)

Migrations:
- 013: Profile fields to users
- 014: Password reset tokens
- 015: Tickets table
- 016: Activity logs table
2025-12-27 11:19:47 -03:00
bohessefmvb
002f9abca1
Update .drone.yml
Ajuste no drone
2025-12-27 11:12:26 -03:00
bohessefmvb
92e3341a83
Update .drone.yml
Adicionando o MTU
2025-12-27 11:09:43 -03:00
bohessefmvb
7f1b910fc2
Update .drone.yml
Ajuste
2025-12-27 11:04:01 -03:00
Tiago Yamamoto
254f19766a docs: add comprehensive project roadmap with gap analysis and launch priorities 2025-12-27 10:16:20 -03:00
bohessefmvb
63b0014f3f
Update .drone.yml
Ajuste drone
2025-12-26 19:12:48 -03:00
bohessefmvb
f7dc448df1
Update .drone.yml
Ajuste drone
2025-12-26 18:30:35 -03:00
bohessefmvb
46d70c16b9
Update .drone.yml
Ajuste
2025-12-26 18:27:04 -03:00
bohessefmvb
498ac4d0c7
Update .drone.yml
Ajuste no drone
2025-12-26 18:20:51 -03:00
bohessefmvb
fc89b8dc0b
Update Docker repository paths in .drone.yml
Ajuste drone
2025-12-26 18:05:54 -03:00
bohessefmvb
98bac41aa8
Update .drone.yml
drone
2025-12-26 18:02:58 -03:00
bohessefmvb
d75829aa92
Update .drone.yml
Ajuste no step
2025-12-26 18:02:03 -03:00
bohessefmvb
ea724eca45
Update .drone.yml
Ajuste no drone
2025-12-26 18:00:47 -03:00
bohessefmvb
62bb7086b6
Update .drone.yml 2025-12-26 17:57:50 -03:00
bohessefmvb
b99f65501d
Update .drone.yml 2025-12-26 17:55:25 -03:00
Tiago Yamamoto
2b9b57e059 chore: update seeders with tickets and company profile data 2025-12-26 16:50:30 -03:00
Tiago Yamamoto
8eeecf76d7 feat: admin tickets, dashboard i18n, user edit fix and location picker bugfix 2025-12-26 16:42:19 -03:00
Tiago Yamamoto
87aa558a61 fix: add null guards to messages page
- Guard against null response from chatApi.listConversations()
- Use fallback empty array for conversations state
- Prevents 'Cannot read properties of null' errors
2025-12-26 16:17:34 -03:00
Tiago Yamamoto
786ef42d8a feat: add complete support ticket CRUD operations
Backend Service:
- UpdateTicket: update status/priority (owner or admin)
- CloseTicket: convenience method to set status=closed
- DeleteTicket: admin only, removes ticket and messages
- ListAllTickets: admin only, with optional status filter

Handlers:
- PATCH /api/v1/support/tickets/{id} - update ticket
- PATCH /api/v1/support/tickets/{id}/close - close ticket
- DELETE /api/v1/support/tickets/{id} - delete ticket (admin)
- GET /api/v1/support/tickets/all - list all tickets (admin)

All endpoints with Swagger annotations
2025-12-26 16:16:05 -03:00
Tiago Yamamoto
4712193ade docs: add Swagger annotations for Company UPDATE and DELETE endpoints
- PATCH /api/v1/companies/{id} - Update Company
- DELETE /api/v1/companies/{id} - Delete Company
- Both endpoints require admin authentication
2025-12-26 16:08:26 -03:00
Tiago Yamamoto
afab4e89cd refactor: merge company and job form into single step
- Reduced form from 3 steps to 2 steps
- Step 1 now contains both company and job data with visual separator
- Step 2 is confirmation only
- Updated progress indicators and card headers
- Fixed navigation button references
2025-12-26 15:53:15 -03:00
Tiago Yamamoto
249081554d feat: add company profile fields
Backend:
- Created migration 031 for employee_count and founded_year
- Updated Company model with EmployeeCount and FoundedYear
- Updated core DTO with website, employeeCount, foundedYear, description

Frontend:
- Added website input field to company form
- Added employee count dropdown (1-10, 11-50, etc.)
- Added founded year input
- Added 'About Company' rich text editor
- Updated API payload to send new fields
2025-12-26 15:48:13 -03:00