gohorsejobs/frontend/src/components
Tiago Yamamoto fb79e987bb feat: add location selector and contract types
Backend:
- Created LocationHandler, LocationService, LocationRepository
- Added endpoints: GET /api/v1/locations/countries, states, cities, search
- Added migration 029_expand_employment_types.sql with new contract types (permanent, training, temporary, voluntary)
- Fixed .gitignore to allow internal/api folder

Frontend:
- Created LocationPicker component with country dropdown and city/state autocomplete search
- Integrated LocationPicker into PostJobPage
- Updated contract type options in job form (Permanent, Contract, Training, Temporary, Voluntary)
- Added locationsApi with search functionality to api.ts
2025-12-26 15:18:16 -03:00
..
dashboard-contents feat: add profile page, dynamic dashboard, and fix candidate 500 error 2025-12-24 19:22:14 -03:00
ui feat(ui): improve initial loading screen with spinner 2025-12-24 17:28:24 -03:00
company-sidebar.tsx Translate UI and rename routes to English 2025-12-22 15:30:06 -03:00
dashboard-header.tsx feat: add profile page, dynamic dashboard, and fix candidate 500 error 2025-12-24 19:22:14 -03:00
exemplo-uso-upload.tsx first commit 2025-12-09 19:04:48 -03:00
footer.tsx Translate UI and rename routes to English 2025-12-22 15:30:06 -03:00
job-card.tsx Translate UI and rename routes to English 2025-12-22 15:30:06 -03:00
language-switcher.tsx feat: Add i18n support to company registration page 2025-12-23 15:29:47 -03:00
loading-skeletons.tsx first commit 2025-12-09 19:04:48 -03:00
location-picker.tsx feat: add location selector and contract types 2025-12-26 15:18:16 -03:00
navbar.tsx Translate UI and rename routes to English 2025-12-22 15:30:06 -03:00
notification-dropdown.tsx Translate UI and rename routes to English 2025-12-22 15:30:06 -03:00
notifications-dropdown.tsx fix(frontend): add console.log debugging to job create form, load companies from API 2025-12-23 22:28:16 -03:00
optimized-image.tsx first commit 2025-12-09 19:04:48 -03:00
phone-input.tsx feat: Enhance platform with funny jobs, FAQ, Skeleton UI, and Tests 2025-12-22 23:48:56 -03:00
profile-picture-upload-v2.tsx Translate UI and rename routes to English 2025-12-22 15:30:06 -03:00
profile-picture-upload.tsx Translate UI and rename routes to English 2025-12-22 15:30:06 -03:00
README.md docs: complete project documentation overhaul 2025-12-09 19:36:36 -03:00
sidebar.tsx Hide Companies menu item for non-superadmin users 2025-12-26 10:51:44 -03:00
stats-card.tsx first commit 2025-12-09 19:04:48 -03:00

Components

Componentes React reutilizáveis da aplicação.


📁 Estrutura

Diretório Descrição
ui/ Primitivos shadcn/ui (Button, Card, Dialog, etc.)
forms/ Componentes de formulário
*.tsx Componentes de feature específicos

🎨 Componentes UI (shadcn/ui)

Componentes base do design system, instalados via:

npx shadcn-ui@latest add [component]
Componente Uso
Button Botões com variantes
Card Containers de conteúdo
Dialog Modais
Input Campos de texto
Select Dropdowns
Table Tabelas de dados
Tabs Navegação por abas
Toast Notificações

🧩 Componentes de Feature

Componente Descrição
sidebar.tsx Navegação lateral do dashboard
dashboard-header.tsx Header do dashboard
job-card.tsx Card de vaga de emprego
application-card.tsx Card de candidatura

Convenções

  1. Nomenclatura: kebab-case para arquivos (job-card.tsx)
  2. Exports: Named exports para componentes
  3. Props: Interface definida no mesmo arquivo
  4. Estilização: Tailwind CSS + cn() utility