Skip to content

Repository files navigation

E-Form Frontend

Frontend untuk sistem manajemen data karyawan E-Form. Aplikasi ini adalah single-page application berbasis React yang menggunakan Vite dan berkomunikasi dengan backend melalui REST API.

Fitur

  • Login, registrasi, logout, lupa/reset password, dan refresh token.
  • Dashboard admin dan user.
  • Admin dapat melihat, mencari, membuat, mengubah, menghapus, mengaktifkan, dan menonaktifkan data karyawan.
  • User dapat melihat dan mengubah profil serta mengganti password.
  • Upload dan preview dokumen CV, KTP, dan NPWP.
  • Theme light/dark dan notifikasi toast.

Teknologi

  • React 19 + TypeScript
  • Vite 8
  • React Router 7
  • TanStack React Query
  • Axios
  • Zustand
  • Tailwind CSS 4
  • React Hook Form + Yup

Prasyarat

  • Node.js versi yang mendukung TypeScript 6 dan Vite 8
  • Backend E-Form berjalan dan menyediakan API pada base URL yang dikonfigurasi

Menjalankan secara lokal

npm install
cp .env.example .env

Atur URL API pada .env:

VITE_API_URL=http://localhost:8080/api/v1

Kemudian jalankan development server:

npm run dev

Secara default, Vite menampilkan aplikasi pada http://localhost:5173.

Script

PerintahKeterangan
npm run devMenjalankan development server
npm run buildType-check dan membuat production build
npm run lintMenjalankan Oxlint pada source code
npm run previewMenjalankan preview hasil production build

Konfigurasi environment

VariableDefaultKeterangan
VITE_API_URLhttp://localhost:8080/api/v1Base URL REST API backend

Hanya variable dengan prefix VITE_ yang dapat digunakan oleh kode frontend. Jangan commit .env yang berisi konfigurasi sensitif.

Pada production, VITE_API_URL harus diset sebagai GitHub Actions repository variable karena nilainya ditanam ke bundle saat Docker image dibuild. Runtime container tidak mengubah nilai tersebut.

Route utama

RoleRouteKeterangan
Public/loginLogin
Public/registerRegistrasi karyawan
Public/forgot-passwordMeminta reset password
Public/reset-passwordReset password
Admin/admin/dashboardDashboard admin
Admin/admin/employeesDaftar karyawan
Admin/admin/employees/newTambah karyawan
Admin/admin/employees/:idDetail karyawan
Admin/admin/employees/:id/editEdit karyawan
User/user/dashboardDashboard dan profil user
User/user/profile/editEdit profil
User/user/change-passwordGanti password

Struktur source

src/
├── components/ Komponen UI dan layout
├── pages/ Halaman auth, admin, dan user
├── routes/ Konfigurasi route dan proteksi role
├── services/ Akses API backend
├── store/ State auth, theme, dan toast
├── types/ Model dan kontrak data API
└── utils/ Helper form, dokumen, tanggal, dan class name

API diakses melalui src/services, dengan base URL dan interceptor auth yang didefinisikan di src/services/http.ts.

About

Frontend untuk sistem manajemen data karyawan E-Form. Aplikasi ini adalah single-page application berbasis React yang menggunakan Vite dan berkomunikasi dengan backend melalui REST API.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages