Keterbatasan belanja
Selamat datang di Shopfinity , aplikasi eCommerce canggih yang dibangun dengan teknologi terkini. Shopfinity menawarkan solusi komprehensif untuk belanja online, termasuk otentikasi pengguna, manajemen produk, proses pembayaran, dan dasbor admin yang intuitif.
Fitur
- Next.js 14 : Memanfaatkan router aplikasi terbaru dan fitur dari Next.js untuk aplikasi web yang dirender di sisi server dengan cepat, ramah SEO, dan.
- MongoDB : Database NoSQL untuk penyimpanan dan pengambilan data yang efisien.
- Auth.js (Otentikasi Berikutnya) : Solusi autentikasi yang aman dan terukur.
- Stripe : Gerbang pembayaran terintegrasi untuk menangani transaksi.
- Dasbor Admin : Kelola produk, pesanan, dan pengguna dengan lancar.
- Desain Responsif : Memastikan pengalaman pengguna yang luar biasa di semua perangkat.
- Pengumpulan Alamat Pengiriman : Kumpulkan dan kelola detail pengiriman dengan mudah.
- Tailwind CSS : Untuk penataan gaya yang efisien dan dapat disesuaikan.
Memulai
Prasyarat
- Node.js (v14.x atau lebih baru)
- npm (v6.x atau lebih baru) atau benang (v1.x atau lebih baru)
- Contoh MongoDB
- Akun Stripe dan kunci API
Instalasi
Kloning repositori
git clone https://github.com/yourusername/shopfinity.git
cd shopfinity
Instal dependensi
npm install
# or
yarn install
Variabel Lingkungan
Buat file .env.local
di direktori root dan tambahkan variabel lingkungan berikut:
MONGODB_URI=your_mongodb_connection_string
AUTH_SECRET=your_auth_secret
AUTH_GITHUB_ID=your_github_client_id
AUTH_GITHUB_SECRET=your_github_client_secret
AUTH_GOOGLE_ID=your_google_client_id
AUTH_GOOGLE_SECRET=your_google_client_secret
NEXT_STRIPE_SECRET_KEY=your_stripe_secret_key
NEXT_STRIPE_PUBLIC_KEY=your_stripe_public_key
STRIPE_WEBHOOK_SECRET=your_stripe_webhook_secret
RESEND_API_KEY=your_resend_api_key
NEXT_ADMIN_EMAIL=your_admin_email
AUTH_TRUST_HOST=true
Jalankan server pengembangan
npm run dev
# or
yarn dev
Buka http://localhost:3000 dengan browser Anda untuk melihat hasilnya.
Struktur Proyek
- /app : Berisi semua rute.
- /components : Komponen React yang dapat digunakan kembali.
- /lib : Konfigurasi untuk MongoDB, Stripe, dan otentikasi.
- /lib/models : Model luwak untuk MongoDB.
- /utils : Fungsi utilitas.
Penggunaan
Otentikasi
- Pengguna dapat mendaftar dan masuk menggunakan email mereka atau penyedia pihak ketiga (Google, GitHub, dll.).
- Pengguna yang diautentikasi dapat mengakses profil mereka, riwayat pesanan, dan banyak lagi.
Dasbor Admin
- Hanya dapat diakses oleh pengguna dengan hak istimewa admin.
- Kelola produk: Menambah, mengedit, atau menghapus produk.
- Kelola pesanan: Lihat detail pesanan, perbarui status pesanan.
- Kelola pengguna: Lihat informasi pengguna, tetapkan peran admin.
Pembayaran
- Terintegrasi dengan Stripe untuk pemrosesan pembayaran yang aman.
- Pengguna dapat menambahkan item ke keranjang dan melanjutkan ke pembayaran.
- Pengumpulan alamat pengiriman saat checkout.
CSS penarik
- Tailwind CSS digunakan untuk penataan gaya. Anda dapat menyesuaikan gaya dengan mengedit file
tailwind.config.js
dan menambahkan kelas CSS khusus di file styles/globals.css
.
Berkontribusi
Kami menyambut kontribusi! Silakan ikuti langkah-langkah berikut untuk berkontribusi:
- Cabangkan repositori.
- Buat cabang baru (
git checkout -b feature/your-feature
). - Buat perubahan Anda.
- Komit perubahan Anda (
git commit -am 'Add new feature'
). - Dorong ke cabang (
git push origin feature/your-feature
). - Buat Permintaan Tarik baru.
Lisensi
Proyek ini dilisensikan di bawah Lisensi MIT. Lihat file LISENSI untuk lebih jelasnya.
Ucapan Terima Kasih
- Berikutnya.js
- MongoDB
- Auth.js (Otentikasi Berikutnya)
- Garis
- CSS penarik
Demo Langsung
Lihat demo langsung Shopfinity di sini.
Jangan ragu untuk menyesuaikan file README.md
ini sesuai dengan kebutuhan spesifik proyek Anda. Nikmati membangun dengan Shopfinity!