A comprehensive e-commerce platform for buying and selling second-hand books, built with React and Tailwind CSS.
Bookzie is a modern, responsive e-commerce website that allows users to browse, search, and purchase second-hand books. The platform includes features such as real-time price comparison, advanced filtering options, and a seamless shopping experience.
- Responsive design that works on all devices
- Advanced search functionality with filters
- Real-time price comparison tool
- User authentication system
- Shopping cart functionality
- Product categorization and filtering
- Detailed product pages with reviews
- Admin dashboard for product management
- React 18
- TypeScript
- Tailwind CSS
- React Router DOM
- Lucide React (for icons)
- Vite (build tool)
- Clone the repository
- Install dependencies:
npm install
- Start the development server:
npm run dev
src/
├── components/ # Reusable UI components
├── pages/ # Page components
├── context/ # React context providers
├── hooks/ # Custom React hooks
├── types/ # TypeScript type definitions
├── utils/ # Utility functions
└── App.tsx # Main application component
The navigation bar provides:
- Brand logo and name
- Search functionality
- Cart and user account links
- Responsive mobile menu
Features:
- Hero section with call-to-action
- Featured categories grid
- Popular books showcase
- Why choose us section
Includes:
- Quick links
- Customer service links
- Social media links
- Copyright information
The project uses Tailwind CSS for styling, following a consistent design system:
-
Colors:
- Primary: Indigo-600
- Secondary: Purple-600
- Text: Gray-900
- Background: White/Gray-50
-
Typography:
- Headings: Font-bold
- Body: Regular weight
- Consistent spacing using Tailwind's spacing scale
-
Component Organization:
- Each component is in its own file
- Components are organized by feature/page
- Shared components in components/ directory
-
TypeScript Usage:
- Strict type checking enabled
- Interface definitions for props
- Type safety for API responses
-
Performance Optimization:
- React.memo for expensive components
- Lazy loading for routes
- Image optimization
-
Accessibility:
- Semantic HTML
- ARIA labels where needed
- Keyboard navigation support
The project is deployed on Netlify. To deploy your own instance:
- Create a Netlify account
- Connect your repository
- Configure build settings:
- Build command:
npm run build - Publish directory:
dist
- Build command:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the MIT License.