Tiago Yamamoto
bda4741c17
feat: add AI-powered company section with 'Postar uma Vaga' button on home page
2025-12-24 00:26:02 -03:00
Tiago Yamamoto
eae9474007
docs: add clearer warning about NEXT_PUBLIC_API_URL format
2025-12-24 00:20:43 -03:00
Tiago Yamamoto
35d3032d52
feat: add backoffice API client with NEXT_PUBLIC_BACKOFFICE_URL env var
2025-12-23 23:56:12 -03:00
Tiago Yamamoto
b7987dead9
fix: use NEXT_PUBLIC_API_URL env var for API requests
2025-12-23 23:50:56 -03:00
Tiago Yamamoto
9f7d8e9ca5
feat: add 6-step job wizard with Preview, Billing, Payment steps and Stripe integration preparation
2025-12-23 23:00:17 -03:00
Tiago Yamamoto
42e9f81f48
feat: enhance job form with currency, salary periods, contract types, and add ER diagram docs
2025-12-23 22:49:33 -03:00
Tiago Yamamoto
80d38ee615
feat(frontend): add multi-step job posting wizard with API integration
2025-12-23 22:40:19 -03:00
Tiago Yamamoto
9bc924ab54
fix(frontend): add console.log debugging to job create form, load companies from API
2025-12-23 22:28:16 -03:00
Tiago Yamamoto
fdece70a8a
fix(frontend): renaming ApiCompany to AdminCompany to fix build error
2025-12-23 22:13:19 -03:00
Tiago Yamamoto
908ec41ca9
fix(frontend): Correctly handle paginated companies response in backoffice
2025-12-23 21:40:16 -03:00
Tiago Yamamoto
300c76a156
fix(frontend): Export missing APIs for dashboard and backoffice
2025-12-23 19:37:47 -03:00
Tiago Yamamoto
3701daaeaf
fix(frontend): Add missing zustand dependency
2025-12-23 19:28:17 -03:00
Tiago Yamamoto
398f1904dd
fix(frontend): Use correct admin endpoint for company pagination
2025-12-23 19:27:22 -03:00
Tiago Yamamoto
78ce341370
feat: Implement Ticket System, Profile Page integration, and fix migrations
2025-12-23 19:22:55 -03:00
Tiago Yamamoto
fd59bfacb2
feat(frontend): implement view, edit and delete actions for admin jobs
2025-12-23 18:53:09 -03:00
Tiago Yamamoto
8aada931b5
fix(frontend): remove any type from i18n key traversal
2025-12-23 18:44:09 -03:00
Tiago Yamamoto
24ee8d568f
fix(i18n): Correct nesting of company object in es.json
2025-12-23 15:40:37 -03:00
Tiago Yamamoto
177aea113c
fix(i18n): Add missing company registration keys to es.json
2025-12-23 15:35:08 -03:00
Tiago Yamamoto
2c27836245
feat: Add i18n support to company registration page
2025-12-23 15:29:47 -03:00
Tiago Yamamoto
c0258e57b7
fix: correct getSalaryDisplay to use job.salaryMin/Max
...
The previous sed replacement incorrectly created salaryDisplayMin/Max.
Fixed to properly reference job.salaryMin and job.salaryMax.
2025-12-23 08:38:02 -03:00
Tiago Yamamoto
96c5b60e98
fix: update jobs page to use ApiJob properties
...
- Replace job.company with job.companyName
- Replace job.type with job.employmentType
- Replace job.postedAt with job.createdAt
- Add getSalaryDisplay helper for salaryMin/salaryMax
- Fixed type compatibility with ApiJob interface
2025-12-23 08:34:49 -03:00
Tiago Yamamoto
592af3216e
feat: connect Apply Now to applications API
...
Frontend changes:
- Add applicationsApi with create() and getByJob() in api.ts
- Update apply/page.tsx to fetch job from API and submit to backend
- Fix job detail page requirements null check
- Use ApiJob type instead of mock Job type
- Replace job.company with job.companyName throughout
Note: Backend has type mismatch issues that need fixing:
- jobs endpoint: varchar vs integer comparison
- applications: null id constraint
2025-12-23 08:29:15 -03:00
Tiago Yamamoto
ce0531fefc
feat: connect registration and jobs to real API
...
Backend fixes:
- Fix FK violation in candidate registration by creating company first
- Add CompanyRepository to RegisterCandidateUseCase
- Add handler integration tests for validation
Frontend improvements:
- Add registerCompany function in auth.ts
- Connect company registration form to backend API
- Replace mockJobs with API call in job detail page
- Add loading/error states to job detail page
- Add Jest tests for auth module
2025-12-23 08:19:49 -03:00
Tiago Yamamoto
b09bd023ed
feat: security refactor, server-side pagination, and docs update
...
- impl(frontend): server-side pagination for jobs listing
- impl(frontend): standardized api error handling and sonner integration
- test(frontend): added unit tests for JobCard
- impl(backend): added SanitizeMiddleware for XSS protection
- test(backend): added table-driven tests for JobService
- docs: updated READMES, created ROADMAP.md and DATABASE.md
- fix(routing): redirected landing page buttons to /jobs
2025-12-23 00:50:51 -03:00
Tiago Yamamoto
743b2842c0
feat: Enhance platform with funny jobs, FAQ, Skeleton UI, and Tests
2025-12-22 23:48:56 -03:00
Tiago Yamamoto
aab5822f48
Add timeout to API requests
2025-12-22 19:51:54 -03:00
Tiago Yamamoto
e71fc361ac
Add dynamic candidate management data
2025-12-22 19:18:15 -03:00
Tiago Yamamoto
b6ad6e77e2
Fetch admin jobs for dashboard list
2025-12-22 19:02:05 -03:00
Tiago Yamamoto
5e99115df6
Add CRUD logging and stabilize dashboard dates
2025-12-22 18:55:43 -03:00
Tiago Yamamoto
c14dd3a890
Fix users refresh click handler
2025-12-22 18:29:49 -03:00
Tiago Yamamoto
db8cadda98
Fix candidate dashboard role check
2025-12-22 17:24:34 -03:00
Tiago Yamamoto
30b634b770
Add admin job modal and company select
2025-12-22 17:17:13 -03:00
Tiago Yamamoto
9c17a7a15a
Add paginated users listing
2025-12-22 16:43:54 -03:00
Tiago Yamamoto
749a83efa4
Merge pull request #19 from rede5/codex/add-backoffice-features-for-gohorse-jobs
...
Add admin backoffice: routes, audit logging, job workflow and dashboard UI
2025-12-22 16:37:31 -03:00
Tiago Yamamoto
58cfd76675
Add admin backoffice routes and dashboard
2025-12-22 16:37:05 -03:00
Tiago Yamamoto
89462f5aa1
Fix About page localization
2025-12-22 16:36:00 -03:00
Tiago Yamamoto
4163cf5af2
Add localized privacy policy and terms content
2025-12-22 16:05:50 -03:00
Tiago Yamamoto
4b9c1d301a
Fix contact page translations
2025-12-22 15:49:10 -03:00
Tiago Yamamoto
18a1eb704d
Translate UI and rename routes to English
2025-12-22 15:30:06 -03:00
Tiago Yamamoto
74aa41675d
Add English jobs slug with redirects
2025-12-22 14:58:11 -03:00
Tiago Yamamoto
f04550ee0d
Add i18n support for candidate registration
2025-12-22 14:44:12 -03:00
Tiago Yamamoto
cdfec9e3f2
Show six jobs on home
2025-12-22 13:50:49 -03:00
Tiago Yamamoto
af7b68ee86
Fix login i18n and forgot password page
2025-12-22 13:45:02 -03:00
Tiago Yamamoto
8f70469317
Unify dashboard routing for all roles
2025-12-22 13:25:40 -03:00
Tiago Yamamoto
bc64a76ce2
fix(frontend): add edge runtime config for dynamic routes
2025-12-15 16:34:06 -03:00
Tiago Yamamoto
88e4596b62
fix(frontend): remove invalid sections from wrangler.toml
2025-12-15 16:31:26 -03:00
Tiago Yamamoto
b8219e322c
chore: setup monorepo structure and cloudflare page config
2025-12-15 16:07:38 -03:00
Tiago Yamamoto
00978bf995
fix(frontend): add use client directive to components using hooks
2025-12-15 16:03:10 -03:00
Tiago Yamamoto
11bd1f2fa0
fix(frontend): ajusta estrutura do es.json para corrigir erro de tipo no i18n
2025-12-15 15:17:30 -03:00
Tiago Yamamoto
ad9468bbb6
chore(frontend): set default locale to en
2025-12-15 15:13:18 -03:00
Tiago Yamamoto
4693bc5737
feat(frontend): complete i18n implementation and set default to pt-BR
2025-12-15 15:10:36 -03:00
Tiago Yamamoto
dd18c526e3
fix(frontend): add privacy/terms pages and conditional analytics
2025-12-15 14:53:58 -03:00
Tiago Yamamoto
1818479499
feat(frontend): enable deep linking for job filters via url params
2025-12-15 14:45:58 -03:00
Tiago Yamamoto
640eb10703
feat(frontend): add work mode filter and randomize seeder types
2025-12-15 14:44:14 -03:00
Tiago Yamamoto
78314f2b45
feat(frontend): implement pagination and adjust seeder jobs count
2025-12-15 14:00:42 -03:00
Tiago Yamamoto
3be9807d88
chore: formatting updates and lockfile changes
2025-12-15 10:40:55 -03:00
Tiago Yamamoto
d3d6ae2991
test(frontend): add jest setup and integration tests for API client
2025-12-15 10:26:12 -03:00
Tiago Yamamoto
c9747d3596
fix(integration): correct frontend fallback port to 8521 and handle NULL fields in company entity
2025-12-15 10:19:31 -03:00
Tiago Yamamoto
9edfbcdc93
fix(i18n): 🌍 home page now uses translations properly
2025-12-15 10:04:08 -03:00
Tiago Yamamoto
ee8ed3f1f3
fix(security): 🔒 fixed Next.js vulnerability and Stripe API version
2025-12-15 09:52:43 -03:00
Tiago Yamamoto
92b1515b26
feat(navbar): 🗣️ navbar speaks all languages now
2025-12-15 09:00:49 -03:00
Tiago Yamamoto
ba1385b080
feat(ui): 🏳️ language switcher because one language is never enough
2025-12-15 08:59:44 -03:00
Tiago Yamamoto
69c84c0fa9
feat(layout): 🌐 english first and i18n provider wrapped
2025-12-15 08:59:24 -03:00
Tiago Yamamoto
39b84996d1
feat(i18n): 🎣 hook para pescar traduções automaticamente
2025-12-15 08:58:21 -03:00
Tiago Yamamoto
87fcdcd0fb
feat(i18n): 🇧🇷 opa brasil finalmente representa
2025-12-15 08:57:37 -03:00
Tiago Yamamoto
4df8112509
feat(i18n): 🇪🇸 hola mundo español
2025-12-15 08:57:35 -03:00
Tiago Yamamoto
9d9e28e5e9
feat(i18n): 🌍 english first because global domination
2025-12-15 08:56:58 -03:00
Tiago Yamamoto
67c2ccdffe
Integrate backend jobs feed into frontend and improve seeder
2025-12-14 20:32:20 -03:00
Tiago Yamamoto
9b4601f1d8
feat: implement dynamic featured jobs
...
- Add is_featured column to jobs table (migration)
- Update Job model and Service to support featured jobs
- Update JobHandler to expose featured jobs API
- Support filtering by featured status in GET /jobs
- Frontend: Fetch and display featured jobs from API
- Frontend: Update Job type definition
2025-12-14 15:43:43 -03:00
Tiago Yamamoto
1e753b611a
chore: add scraper API URL to frontend .env.example and fix gitignore
...
- Add NEXT_PUBLIC_SCRAPER_API_URL to frontend/.env.example
- Re-enable .env* ignore rules in frontend/.gitignore
2025-12-14 09:57:02 -03:00
Tiago Yamamoto
ddc4e2c2bf
chore: add complete .env.example files for all services
...
- frontend/.env.example: Add SEEDER_API_URL
- seeder-api/.env.example: Expand with server config and backend URL
- job-scraper-multisite/.env.example: New file with scraping config
- Update gitignore files to allow .env.example tracking
2025-12-14 09:48:56 -03:00
Tiago Yamamoto
6f348c7975
chore: add frontend .env.example and fix gitignore
...
- Update frontend/.gitignore to allow .env.example
- Create frontend/.env.example with correct API_URL format (/api/v1 suffix)
- Document production URL: https://api-dev.gohorsejobs.com/api/v1
2025-12-14 09:39:24 -03:00
Tiago Yamamoto
a4abcf8e05
feat: SEO optimization and dynamic jobs API integration
...
Backend:
- Add Swagger annotations to all job handlers (GET, POST, PUT, DELETE)
- Clean up job handler code
Frontend:
- Expand api.ts with ApiJob types, pagination, and transform function
- Update footer with 'Vagas por Tecnologia' SEO links
- Add robots.txt with crawler directives
- Add sitemap.xml with main pages and job URLs
- Change branding to GoHorse Jobs
2025-12-14 09:16:44 -03:00
Tiago Yamamoto
14c4bc8370
fix(frontend): remove invalid AdminSidebar import from messages page
2025-12-13 18:46:00 -03:00
Tiago Yamamoto
0684ebfdf6
fix(frontend): remove invalid AdminSidebar import from candidates page
...
The AdminSidebar component doesn't exist - the dashboard layout already provides the sidebar.
2025-12-13 18:39:04 -03:00
Tiago Yamamoto
18ac6d74f0
chore: update port configuration to avoid conflicts
...
Port Configuration:
- Backend: 8521 (was 8080/8158)
- Frontend: 8963 (was 3000)
Files updated:
- backend/.env.example: updated PORT and CORS_ORIGINS
- frontend/src/lib/auth.ts: API_URL default to 8521
- frontend/src/lib/api.ts: API_URL default to 8521
- frontend/src/lib/storage.ts: API_URL default to 8521
- run_dev.sh: added port flags and service info display
Usage:
./run_dev.sh
# Backend: http://localhost:8521
# Frontend: http://localhost:8963
2025-12-11 17:06:37 -03:00
Tiago Yamamoto
fdd67b8cd6
Merge branch 'hml' into dev
2025-12-11 14:59:40 -03:00
Tiago Yamamoto
9630730d69
feat(frontend): add storage service for S3 file uploads
...
- Create storage.ts with pre-signed URL handling
- Implement getUploadUrl, uploadFileToS3 helper functions
- Add complete uploadFile workflow for easy file uploads
- Support logos, resumes, documents, avatars folders
2025-12-11 14:58:21 -03:00
Tiago Yamamoto
a505726786
fix: refactor dashboard urls, fix layout duplication and resolve backend api errors
2025-12-09 20:29:49 -03:00
Tiago Yamamoto
7934afcf0d
docs: complete project documentation overhaul
...
- Add comprehensive root README with badges, architecture diagram, and setup guide
- Update backend README with security middlewares and endpoint documentation
- Update frontend README with design system and page structure
- Update seeder-api README with generated data and credentials
- Add internal module READMEs (middleware, handlers, components)
- Document Clean Architecture layers and request flow
- Add environment variables reference table
2025-12-09 19:36:36 -03:00
Tiago Yamamoto
1c7ef95c1a
first commit
2025-12-09 19:04:48 -03:00