Shopco is an open-source project that converts a Figma design of an e-commerce website into a fully responsive front-end application. It utilizes Next.js 14 App Router, TypeScript, Tailwind CSS, Redux, Framer Motion, and ShadCN UI to deliver a modern, scalable, and optimized solution based on industry standards.
Shopco bridges the gap between design and development by converting Figma designs into production-ready code. The project follows best practices for SEO, performance optimization, and accessibility, making it a perfect foundation for developers looking to create scalable and maintainable e-commerce front-ends.
Check out the live demo: Shopco Demo
To get started with Shopco locally, follow these steps:
Clone the repository:
git clone https://github.com/mohammadoftadeh/next-ecommerce-shopco.git
cd next-ecommerce-shopco
Install dependencies:
npm install
yarn install
Run the development server:
npm run dev
yarn dev
Open in your browser: Navigate to http://localhost:3000 to view the app.
components
, features
, and app
directories.src/lib/features
directory.src/components/ui
directory.Shopco/
│
├── public/ # Static assets
├── src/
│ ├── app/ # Next.js App Router
│ ├── components/ # Reusable components (including ShadCN UI components)
│ └── lib/
│ ├── features/ # The Redux logics for features (e.g., shopping cart)
│ ├── hooks/ # Custom React hooks
│ ├── store.ts # Redux store
│ ├── utils.ts # Utility functions
│ ├── styles/ # Tailwind CSS styles (global, utilities and fonts)
│ ├── types/ # TypeScript types
│
├── components.json # ShadCN UI configuration
├── next.config.mjs # Next.js configuration
├── package.json # Node.js dependencies and scripts
├── postcss.config.mjs # Post CSS configuration
└── README.md # Project documentation
├── tailwind.config.js # Tailwind CSS configuration
├── tsconfig.json # TypeScript configuration
Contributions are welcome! If you'd like to contribute, Please follow these steps to contribute to Shopco:
git checkout -b feature/your-feature-name
).git push origin feature/your-feature-name
).Feel free to submit issues for any bugs, feature requests, or general questions related to the project. You can also reach out via email for support.
This project is licensed under the MIT License - see the LICENSE file for details.
Feel free to reach out to: