GoMealSaver is a web-based application for selling leftover / unsold food.
Demo : https://gomealsaver.store
- Next.js
- React
- Tailwind CSS
- MongoDB
- Mongoose
- NextAuth.js
- React Icons
- Cloudinary
- Mapbox
- OpenCage
- Maptiler
- React Spinners
- React Toastify
- React Share
- reCAPTCHA
- bcryptjs
- framer-motion
- typed.js
- React Slick
- Autentikasi pengguna dengan Google & Next Auth
- Registrasi Akun
- ke amanan recaptcha
- Otorisasi pengguna
- Perlindungan rute
- Profil pengguna dengan daftar pengguna
- Daftar makanan CRUD
- Unggahan gambar makanan
- Pencarian makanan
- Pesan internal dengan notifikasi 'belum dibaca'
- Order Makanan (User)
- Bukti Trankaksi (Pemilik / penjual)
- Prosess / Batalkan pesanan (pemilik / penjual)
- Halaman About
- Galeri gambar dengan penghapusan foto
- Peta kotak peta
- Penandaan makanan / makanan yang disimpan
- Berbagi makanan ke media sosial
- Desain responsif (Tailwind)
- Halaman 404 khusus
- Next.js Action
Ikuti langkah-langkah berikut untuk menyiapkan proyek secara lokal pada mesin Anda.
- Git
- Node.js
- npm (Node Package Manager)
https://github.com/Go-Meal-Saver/GoMealSaver.git cd GoMealSaver
Installation
Instal dependensi proyek menggunakan npm:
npm i
Set Up Environment Variables CBuat berkas baru bernama .env di root proyek Anda dan tambahkan konten berikut:
MONGODB_URL =
NEXT_PUBLIC_DOMAIN =
NEXT_PUBLIC_API_DOMAIN =
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
NEXTAUTH_URL=
NEXTAUTH_URL_INTERNAL=
NEXTAUTH_SECRET=
CLOUDINARY_CLOUD_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
NEXT_PUBLIC_OPENCAGE_API_KEY=
NEXT_PUBLIC_MAPTILER_API_KEY=
NEXT_PUBLIC_RECAPTCHA_SITE_KEY=
RECAPTCHA_SECRET_KEY=
- Dapatkan string koneksi MongoDB Anda dari klaster MongoDB Atlas Anda dan tambahkan ke
MONGODB_URI
. - Dapatkan ID dan rahasia klien Google Anda dari akun konsol Google dan tambahkan ke
GOOGLE_CLIENT_ID
danGOOGLE_CLIENT_SECRET
. - Tambahkan rahasia ke
NEXTAUTH_SECRET
. Anda dapat membuat dengan perintah berikut ini:openssl rand -base64 32
- Dapatkan nama cloud Cloudinary, kunci API, dan rahasia API dari akun Cloudinary Anda dan tambahkan ke
CLOUDINARY_CLOUD_NAME
,CLOUDINARY_API_KEY
, danCLOUDINARY_API_SECRET
. - Dapatkan token OPENCAGE Anda dari akun OPENCAGE Anda dan tambahkan ke
NEXT_PUBLIC_OPENCAGE_API_KEY
. - Dapatkan kunci API Google MAPTILER Anda dari MAPTILER Anda dan tambahkan ke
NEXT_PUBLIC_MAPTILER_API_KEY
. - Dapatkan kunci API Google RECAPTCHA Anda dari RECAPTCHA Anda dan tambahkan ke
RECAPTCHA_SECRET_KEY
.
Menjalankan Proyek
npm run dev
Buka http://localhost:3000 di browser Anda untuk melihat proyek