Aplikasi Toko Online berbasis web yang dibangun menggunakan React + Vite. Aplikasi ini didesain untuk berjalan 100% Offline tanpa memerlukan koneksi internet, server backend, atau database cloud (Firebase/MySQL).
Semua data (Produk, User, Keranjang, Riwayat Pesanan) disimpan secara aman di dalam LocalStorage (Memori Browser).
- Frontend: React.js
- Build Tool: Vite
- Styling: Tailwind CSS
- Routing: React Router DOM
- Database: LocalStorage (Browser API)
- State Management: React Context API (Auth & Cart)
- Register & Login: Sistem autentikasi mandiri (tersimpan di browser).
- Katalog Produk: Menampilkan barang dengan gambar, harga, dan kategori.
- Pencarian & Filter: Cari barang berdasarkan nama atau kategori.
- Keranjang Belanja: Menambah barang dan menghitung total harga otomatis.
- Checkout: Form pengiriman barang simulasi.
- Riwayat Pesanan: Melihat status dan detail belanjaan yang sudah dibayar.
- Dashboard Admin: Ringkasan produk.
- CRUD Produk: Tambah, Edit, dan Hapus produk toko.
- Upload Gambar: Mengubah gambar menjadi format Base64 (Teks) agar bisa disimpan offline.
Pastikan di laptopmu sudah terinstall Node.js.
- Download/Clone folder project ini.
- Buka terminal di dalam folder project.
- Install library yang dibutuhkan:
npm install
- Jalankan aplikasi:
npm run dev
- Buka browser dan akses: https://react-context-shopping-cart-i2ja.vercel.app/
Karena aplikasi ini offline, data akun tersimpan di laptop masing-masing.
1. Cara Login User:
- Silakan menu Register dan buat akun baru.
- Login menggunakan email & password yang baru dibuat.
2. Cara Menjadi Admin: Secara default, akun baru adalah "User Biasa". Untuk masuk ke menu Admin:
- Buka Inspect Element (Klik Kanan -> Inspect).
- Masuk tab Application -> Local Storage.
- Cari key
users. - Edit value akun kamu, ubah
"role":"user"menjadi"role":"admin". - Logout dan Login kembali. Menu Admin akan muncul.
Aplikasi ini menggunakan LocalStorage.
- Data TIDAK AKAN HILANG jika halaman di-refresh atau laptop dimatikan.
- Data AKAN HILANG jika kamu melakukan "Clear Cache/History" pada browser atau ganti browser/laptop.
- Jika ingin memindahkan data, silakan copy value dari LocalStorage secara manual.
Created by Nico | Front-End Journey