Skip to content

Go-Meal-Saver/GoMealSaver

Repository files navigation

GoMealSaver

GoMealSaver is a web-based application for selling leftover / unsold food.

Demo : https://gomealsaver.store

⚙️ Tech Stack

🔋 Features

  • 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

🤸 Quick Start

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=

.env File

  • 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 dan GOOGLE_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, dan CLOUDINARY_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 keNEXT_PUBLIC_MAPTILER_API_KEY.
  • Dapatkan kunci API Google RECAPTCHA Anda dari RECAPTCHA Anda dan tambahkan keRECAPTCHA_SECRET_KEY.

Menjalankan Proyek

npm run dev

Buka http://localhost:3000 di browser Anda untuk melihat proyek