CutsProject Web adalah aplikasi web barbershop modern berbasis Vue 3 + Vite untuk frontend, dengan backend menggunakan Express.js dan database MySQL.
Aplikasi ini menyediakan fitur lengkap untuk user dan admin, desain responsif, serta siap produksi dan SEO friendly.
- Landing Page: Beranda, About, Service, Gallery, FAQ, Maps, dsb.
- Reservasi Online: Booking layanan, pilih barber, cek jadwal.
- Autentikasi: Login, Register, Lupa Password, Ganti Password.
- Profile User: Edit profil, riwayat reservasi, statistik.
- Admin Panel: Kelola reservasi, layanan, user, testimoni, dsb.
- Responsive Design: Mobile & desktop friendly.
- SEO Friendly: Meta tag dinamis, Open Graph, dsb.
- Animasi Modern: Transisi, fade, slide, AOS, dsb.
- Notifikasi: SweetAlert2, Toastification.
- Validasi Form: Vuelidate.
- Peta Lokasi: Google Maps/Embed.
- Chart & Statistik: Chart.js, vue-chartjs.
- Aksesibilitas: Alt gambar, kontras warna, heading terstruktur.
- Vue 3
- Vite
- Pinia
- Vue Router
- TailwindCSS
- Axios
- SweetAlert2
- Vue Toastification
- @heroicons/vue
- Vuelidate
- AOS
- Chart.js & vue-chartjs
- Swiper
- Express.js (REST API)
- MySQL (database)
- JWT Auth, bcrypt, multer, dsb.
git clone https://github.com/natsrululum37/cutsproject-web.git
cd cutsproject-web
npm install
npm run dev
# Buka http://localhost:5173/git clone https://github.com/natsrululum37/cutsproject-backend.git
cd cutsproject-backend
npm install
# Atur .env (lihat contoh di repo backend)
npm run dev
# API berjalan di http://localhost:3000/- Import file SQL dari repo backend ke MySQL Anda.
- Atur koneksi database di file
.envbackend.
- API URL: Ubah endpoint API di file
.envfrontend atau di axios instance. - SEO: Atur meta title & description di router meta dan
public/index.html. - Gambar: Letakkan gambar di
public/atausrc/assets/. - Maps: Ganti embed/link Google Maps sesuai lokasi barbershop Anda.
src/
assets/ # Gambar, icon, dsb
components/ # Komponen UI (client, admin, layouts, dsb)
router/ # Konfigurasi vue-router
stores/ # Pinia store (auth, user, dsb)
views/ # Halaman utama (user, admin, auth)
App.vue # Root component
main.js # Entry point
public/
index.html # HTML utama & meta tag global
robots.txt # SEO robots
...
Pastikan Anda sudah meng-install library berikut sebelum menjalankan project:
- Vue 3
- Vite
- Pinia
- Vue Router
- TailwindCSS
- Axios
- SweetAlert2
- Vue Toastification
- @heroicons/vue
- Vuelidate
- AOS
- Chart.js & vue-chartjs
- Swiper
Install semua dependencies dengan:
npm installatau jika manual:
npm install vue@^3 vite pinia vue-router tailwindcss postcss autoprefixer axios sweetalert2 vue-toastification @heroicons/vue vuelidate aos chart.js vue-chartjs swiper- Beranda: Info singkat, promo, galeri, testimoni.
- Tentang Kami: Hero, visi misi, tim, FAQ, maps.
- Service: Daftar layanan, harga, deskripsi.
- Reservasi: Pilih layanan, tanggal, barber, konfirmasi.
- Profile: Edit data, ganti password, lihat riwayat reservasi.
- Lupa Password: Reset password via email + captcha.
- Notifikasi: Sukses/gagal aksi, info penting.
- Dashboard: Statistik reservasi, user, dsb.
- Kelola Reservasi: Konfirmasi, batalkan, selesai, alasan pembatalan.
- Kelola Layanan: Tambah/edit/hapus layanan.
- Kelola User: Lihat, blokir, dsb.
- Kelola Testimoni: Moderasi testimoni.
- Kelola Konten: FAQ, About, dsb.
- Meta title & description: Diatur otomatis via router meta.
- Open Graph & Social: Di
public/index.html. - robots.txt & sitemap.xml: Untuk Google Search Console.
- Aksesibilitas: Alt gambar, heading, kontras warna.
- Linting:
npm run lint
- Format kode:
npm run format
- Build production:
npm run build
- Preview production:
npm run preview
- Deploy ke GitHub Pages:
npm run deploy
- Fork repo ini.
- Buat branch fitur/bugfix baru.
- Commit perubahan dengan pesan yang jelas.
- Pull request ke branch
main.
-
Bagaimana reset password?
Klik "Lupa password?" di halaman login, masukkan email, cek inbox Anda. -
Bagaimana mengatur SEO?
Lihat bagian SEO & Meta Tag di atas. -
Bagaimana deploy ke hosting lain?
Build dengannpm run build, upload folderdist/ke hosting pilihan Anda.
MIT License © 2025 CutsProject Team
Terima kasih telah menggunakan CutsProject Web!
Untuk pertanyaan, saran, atau bug, silakan buka issue di repo ini.