A custom e-commerce platform for the Rashakin clothing brand, providing a complete solution for selling clothes online without relying on third-party marketplaces.
- Product Management: Add, edit, and remove products with details like images, sizes, colors, and inventory
- Order Management: Track and update order status, handle returns and refunds
- Customer Management: View customer details and order history
- User Authentication: Secure account management for customers and admin
- Shopping Experience: Browse products, add to cart, checkout with Stripe payments
- Quality-of-Life Features: Wishlists, reviews, order tracking, and email notifications
- Frontend: Next.js 13+ (App Router) with TypeScript and Tailwind CSS
- Backend: Next.js API Routes
- Database & Auth: Supabase (PostgreSQL and Auth)
- Payment Processing: Stripe integration
- Hosting: Vercel (recommended)
- Version Control: Git and GitHub
- Node.js (v18 or later)
- npm or yarn
- Supabase account (for database and authentication)
- Stripe account (for payment processing)
- Git
-
Clone the repository:
git clone https://github.com/Heps-akint/Rashakin_pro.git cd Rashakin_pro -
Install dependencies using the provided script:
# On Windows .install-deps.bat # On macOS/Linux npm install
-
Set up environment variables:
- Copy
.env.local.exampleto.env.local - Fill in your Supabase and Stripe credentials:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key SUPABASE_SERVICE_ROLE_KEY=your_service_role_key STRIPE_SECRET_KEY=your_stripe_secret_key STRIPE_WEBHOOK_SECRET=your_webhook_secret NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=your_publishable_key
- Copy
-
Set up the database:
- Create a new Supabase project
- Run the SQL commands in
supabase-schema.sqlin the Supabase SQL editor to create the necessary tables and relationships
-
Start the development server:
npm run dev
-
Open http://localhost:3000 in your browser to see the application.
/app: Next.js 13+ App Router components and pages/api: API routes for server-side operations/components: Reusable UI components/ui: Basic UI components (buttons, forms, etc.)/cart: Cart-related components/products: Product display components
/lib: Utility functions, types, and context providers/hooks: Custom React hooks/(auth): Authentication pages (login, signup, etc.)/admin: Admin dashboard and management/products: Product pages and details/cart: Shopping cart page/checkout: Checkout process
/public: Static assets (images, fonts, etc.)
-
Create a feature branch from
main:git checkout -b feature/your-feature-name
-
Make your changes and commit them:
git add . git commit -m "Descriptive commit message"
-
Push your branch to GitHub:
git push -u origin feature/your-feature-name
-
Create a Pull Request on GitHub to merge your changes into the main branch.
The application can be deployed to Vercel with the following steps:
- Push your code to the GitHub repository
- Connect the repository to Vercel
- Configure all environment variables in the Vercel dashboard
- Deploy
For other hosting options, you can build the application using:
npm run buildAnd then start the production server:
npm startContributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
This project is private and proprietary.
For questions or support, please contact the Rashakin team.