Online store to buy things related to web development.
- Login.
- Create an account.
- Log out.
- GitHub authentication.
- Private and public paths.
- View products.
- Filter products by genre.
- Sidebar .
- Add products to the shopping cart.
- Remove products from shopping cart.
- Confirm order.
- Pay the order with PayPal payment method.
- View order history.
- Administrative Dashboard.
- Edit user roles.
- Create products.
- Edit products.
- View history of all orders for all users.
- Next JS.
- TypeScript .
- Zustand (State management).
- DaisyUI (Component library).
- Cloudinary (Manage images).
- Next Auth (Manage Authentication).
- PayPal (Method of payment).
- Vercel (To deploy the app).
- Mongoose (ORM for mongo db).
- Clone the repository (you need to have Git installed).
git clone https://github.com/Franklin361/dev-shop
- Install dependencies of the project.
npm install
- Before running the development server, you need to...
Create an .env
file in the root of the project and set the following value:
```
MONGO_URL=
NEXT_PUBLIC_RATE=
NEXTAUTH_SECRET=
GITHUB_ID=
GITHUB_SECRET=
NEXT_PUBLIC_PAYPAL_CLIENT_ID=
PAYPAL_SECRET=
PAYPAL_OAUTH_URL=
PAYPAL_ORDERS_URL=
CLOUDINARY_URL=
```
- Run the project.
npm run dev