├── .eslintrc.json ├── .gitignore ├── README.md ├── app ├── GoogleAnalyticsScript.tsx ├── NavBar.tsx ├── admin │ ├── layout.tsx │ └── page.tsx ├── api │ ├── auth │ │ ├── [...nextauth] │ │ │ └── route.ts │ │ ├── authOptions.ts │ │ └── token │ │ │ └── route.ts │ ├── register │ │ └── route.ts │ └── users │ │ ├── [id] │ │ └── route.tsx │ │ ├── route.tsx │ │ └── schema.ts ├── auth │ └── Provider.tsx ├── components │ ├── AddToCart.tsx │ ├── HeavyComponent.tsx │ ├── ProductCard.module.css │ └── ProductCard.tsx ├── error.tsx ├── favicon.ico ├── globals.css ├── layout.tsx ├── loading.tsx ├── not-found.tsx ├── page.tsx ├── products │ └── [[...slug]] │ │ └── page.tsx ├── upload │ └── page.tsx └── users │ ├── UserTable.tsx │ ├── [id] │ ├── not-found.tsx │ ├── page.tsx │ └── photos │ │ └── [photoId] │ │ └── page.tsx │ ├── new │ └── page.tsx │ └── page.tsx ├── emails └── WelcomeTemplate.tsx ├── middleware.ts ├── next.config.js ├── package.json ├── postcss.config.js ├── prisma ├── client.ts ├── migrations │ ├── 20230817173938_initial │ │ └── migration.sql │ ├── 20230817174747_add_registered_at │ │ └── migration.sql │ ├── 20230817185153_create_product │ │ └── migration.sql │ ├── 20230824175126_drop_user │ │ └── migration.sql │ ├── 20230824175233_add_prisma_models │ │ └── migration.sql │ ├── 20230824181750_add_password │ │ └── migration.sql │ └── migration_lock.toml └── schema.prisma ├── public ├── fonts │ └── poppins-regular-webfont.woff2 ├── images │ └── coffee.jpg ├── next.svg └── vercel.svg ├── tailwind.config.ts └── tsconfig.json /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/README.md -------------------------------------------------------------------------------- /app/GoogleAnalyticsScript.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/GoogleAnalyticsScript.tsx -------------------------------------------------------------------------------- /app/NavBar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/NavBar.tsx -------------------------------------------------------------------------------- /app/admin/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/admin/layout.tsx -------------------------------------------------------------------------------- /app/admin/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/admin/page.tsx -------------------------------------------------------------------------------- /app/api/auth/[...nextauth]/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/api/auth/[...nextauth]/route.ts -------------------------------------------------------------------------------- /app/api/auth/authOptions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/api/auth/authOptions.ts -------------------------------------------------------------------------------- /app/api/auth/token/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/api/auth/token/route.ts -------------------------------------------------------------------------------- /app/api/register/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/api/register/route.ts -------------------------------------------------------------------------------- /app/api/users/[id]/route.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/api/users/[id]/route.tsx -------------------------------------------------------------------------------- /app/api/users/route.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/api/users/route.tsx -------------------------------------------------------------------------------- /app/api/users/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/api/users/schema.ts -------------------------------------------------------------------------------- /app/auth/Provider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/auth/Provider.tsx -------------------------------------------------------------------------------- /app/components/AddToCart.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/components/AddToCart.tsx -------------------------------------------------------------------------------- /app/components/HeavyComponent.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/components/HeavyComponent.tsx -------------------------------------------------------------------------------- /app/components/ProductCard.module.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/components/ProductCard.module.css -------------------------------------------------------------------------------- /app/components/ProductCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/components/ProductCard.tsx -------------------------------------------------------------------------------- /app/error.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/error.tsx -------------------------------------------------------------------------------- /app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/favicon.ico -------------------------------------------------------------------------------- /app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/globals.css -------------------------------------------------------------------------------- /app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/layout.tsx -------------------------------------------------------------------------------- /app/loading.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/loading.tsx -------------------------------------------------------------------------------- /app/not-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/not-found.tsx -------------------------------------------------------------------------------- /app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/page.tsx -------------------------------------------------------------------------------- /app/products/[[...slug]]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/products/[[...slug]]/page.tsx -------------------------------------------------------------------------------- /app/upload/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/upload/page.tsx -------------------------------------------------------------------------------- /app/users/UserTable.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/users/UserTable.tsx -------------------------------------------------------------------------------- /app/users/[id]/not-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/users/[id]/not-found.tsx -------------------------------------------------------------------------------- /app/users/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/users/[id]/page.tsx -------------------------------------------------------------------------------- /app/users/[id]/photos/[photoId]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/users/[id]/photos/[photoId]/page.tsx -------------------------------------------------------------------------------- /app/users/new/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/users/new/page.tsx -------------------------------------------------------------------------------- /app/users/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/app/users/page.tsx -------------------------------------------------------------------------------- /emails/WelcomeTemplate.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/emails/WelcomeTemplate.tsx -------------------------------------------------------------------------------- /middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/middleware.ts -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/package.json -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/postcss.config.js -------------------------------------------------------------------------------- /prisma/client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/prisma/client.ts -------------------------------------------------------------------------------- /prisma/migrations/20230817173938_initial/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/prisma/migrations/20230817173938_initial/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230817174747_add_registered_at/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/prisma/migrations/20230817174747_add_registered_at/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230817185153_create_product/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/prisma/migrations/20230817185153_create_product/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230824175126_drop_user/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/prisma/migrations/20230824175126_drop_user/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230824175233_add_prisma_models/migration.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/prisma/migrations/20230824175233_add_prisma_models/migration.sql -------------------------------------------------------------------------------- /prisma/migrations/20230824181750_add_password/migration.sql: -------------------------------------------------------------------------------- 1 | -- AlterTable 2 | ALTER TABLE `User` ADD COLUMN `hashedPassword` VARCHAR(191) NULL; 3 | -------------------------------------------------------------------------------- /prisma/migrations/migration_lock.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/prisma/migrations/migration_lock.toml -------------------------------------------------------------------------------- /prisma/schema.prisma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/prisma/schema.prisma -------------------------------------------------------------------------------- /public/fonts/poppins-regular-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/public/fonts/poppins-regular-webfont.woff2 -------------------------------------------------------------------------------- /public/images/coffee.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/public/images/coffee.jpg -------------------------------------------------------------------------------- /public/next.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/public/next.svg -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/public/vercel.svg -------------------------------------------------------------------------------- /tailwind.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/tailwind.config.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mosh-hamedani/next-course/HEAD/tsconfig.json --------------------------------------------------------------------------------