Back to Projects

GitHub Repository

cute-shop

No description provided.

Stars: 1Language: TypeScriptUpdated: 3/16/2026

README

# ๐ŸŽ€ CuteShop - E-Commerce for Women & Children's Clothing

A beautiful, cute-themed e-commerce platform built with Next.js, TypeScript, MongoDB, and Tailwind CSS.

## โœจ Features

- ๐Ÿ” **Authentication** - User registration and login with JWT
- ๐Ÿ› ๏ธ **Admin Panel** - Full CRUD operations for products
- ๐Ÿ›๏ธ **Shopping** - Browse products, add to cart, wishlist
- ๐Ÿ’พ **State Management** - Zustand with localStorage persistence
- ๐ŸŽจ **Cute Design** - Pink gradients, animations, pastel colors
- ๐Ÿ“ฑ **Responsive** - Works on all devices

## ๐Ÿš€ Quick Start

### Prerequisites

- Node.js 18+ installed
- MongoDB running (local or cloud)

### Installation

1. **Clone and install dependencies**

   ```bash
   cd cute-shop
   npm install
   ```

2. **Set up environment variables**

   Create a `.env.local` file in the root directory:

   ```env
   MONGODB_URI=mongodb://localhost:27017/cute-shop
   JWT_SECRET=your-super-secret-jwt-key-change-this
   NEXT_PUBLIC_APP_URL=http://localhost:3000
   ```

3. **Seed the database with test data**

   ```bash
   npm run seed
   ```

   This will create:

   - 1 admin user
   - 3 regular users
   - 10 cute products
   - 3 sample orders

4. **Start the development server**

   ```bash
   npm run dev
   ```

5. **Open your browser**

   Navigate to [http://localhost:3000](http://localhost:3000)

## ๐Ÿ” Test Accounts

After running the seed script, you can login with:

### Admin Account

- **Email:** `admin@cuteshop.com`
- **Password:** `admin123`
- Access admin panel at `/admin/products`

### Regular Users

- **Email:** `sarah@example.com` | **Password:** `password123`
- **Email:** `emily@example.com` | **Password:** `password123`
- **Email:** `jessica@example.com` | **Password:** `password123`

## ๐Ÿ“ Project Structure

```
cute-shop/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ app/                    # Next.js App Router
โ”‚   โ”‚   โ”œโ”€โ”€ admin/             # Admin panel pages
โ”‚   โ”‚   โ”œโ”€โ”€ auth/              # Login & Register
โ”‚   โ”‚   โ”œโ”€โ”€ products/          # Product pages
โ”‚   โ”‚   โ”œโ”€โ”€ cart/              # Shopping cart
โ”‚   โ”‚   โ””โ”€โ”€ wishlist/          # Wishlist
โ”‚   โ”œโ”€โ”€ components/
โ”‚   โ”‚   โ”œโ”€โ”€ ui/                # Reusable components
โ”‚   โ”‚   โ””โ”€โ”€ client/            # Client components
โ”‚   โ”œโ”€โ”€ lib/
โ”‚   โ”‚   โ”œโ”€โ”€ models/            # Mongoose models
โ”‚   โ”‚   โ””โ”€โ”€ actions/           # Server actions
โ”‚   โ”œโ”€โ”€ store/                 # Zustand stores
โ”‚   โ””โ”€โ”€ types/                 # TypeScript types
โ””โ”€โ”€ scripts/
    โ””โ”€โ”€ seed.ts                # Database seed script
```

## ๐Ÿ› ๏ธ Available Scripts

- `npm run dev` - Start development server
- `npm run build` - Build for production
- `npm run start` - Start production server
- `npm run seed` - Seed database with test data
- `npm run lint` - Run ESLint

## ๐ŸŽจ Tech Stack

- **Framework:** Next.js 16 (App Router)
- **Language:** TypeScript
- **Styling:** Tailwind CSS 4
- **Database:** MongoDB + Mongoose
- **State:** Zustand
- **Auth:** JWT + bcrypt
- **Icons:** React Icons
- **Carousel:** Swiper
- **Font:** Quicksand

## ๐Ÿ“ฆ Key Features

### For Customers

- Browse cute clothing products
- View product details with image gallery
- Select sizes and colors
- Add items to cart
- Save favorites to wishlist
- User registration and login
- View order history

### For Admins

- Create new products
- Edit existing products
- Delete products
- Manage inventory
- View all orders

## ๐ŸŽ€ Design Highlights

- **Cute Pink Theme** - Soft pink and purple gradients
- **Smooth Animations** - Hover effects, transitions, floating elements
- **Rounded Corners** - Everything has soft, rounded edges
- **Custom Scrollbar** - Pink gradient scrollbar
- **Responsive Design** - Mobile-first approach

## ๐Ÿ”ง Development

### Database Models

- **User** - Authentication and user data
- **Product** - Product information with images, sizes, colors
- **Order** - Order tracking with items and shipping

### State Management

- **authStore** - User authentication state
- **cartStore** - Shopping cart with persistence
- **wishlistStore** - Saved items with persistence

## ๐Ÿ“ Environment Variables

| Variable              | Description               | Example                               |
| --------------------- | ------------------------- | ------------------------------------- |
| `MONGODB_URI`         | MongoDB connection string | `mongodb://localhost:27017/cute-shop` |
| `JWT_SECRET`          | Secret key for JWT tokens | `your-secret-key`                     |
| `NEXT_PUBLIC_APP_URL` | Application URL           | `http://localhost:3000`               |

## ๐Ÿšง Future Enhancements

- [ ] Complete checkout flow
- [ ] Payment integration (Stripe)
- [ ] Email notifications
- [ ] Product search
- [ ] Category filtering
- [ ] Product reviews
- [ ] Image upload
- [ ] Admin analytics dashboard

## ๐Ÿ“„ License

This project is for educational purposes.

---

Made with ๐Ÿ’• by CuteShop Team