Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ysskrishna/shopzone
A full stack e-commerce application built with Next.js, FastAPI and Elasticsearch. It provides a seamless shopping experience with powerful search capabilities, sorting, filtering and an intuitive interface. The application is fully responsive and mobile-friendly, offering a consistent experience across all devices.
https://github.com/ysskrishna/shopzone
docker docker-compose elasticsearch fastapi kibana nextjs python radix-ui tailwindcss typescript
Last synced: 7 days ago
JSON representation
A full stack e-commerce application built with Next.js, FastAPI and Elasticsearch. It provides a seamless shopping experience with powerful search capabilities, sorting, filtering and an intuitive interface. The application is fully responsive and mobile-friendly, offering a consistent experience across all devices.
- Host: GitHub
- URL: https://github.com/ysskrishna/shopzone
- Owner: ysskrishna
- License: agpl-3.0
- Created: 2024-12-30T10:40:00.000Z (29 days ago)
- Default Branch: main
- Last Pushed: 2025-01-20T18:09:50.000Z (7 days ago)
- Last Synced: 2025-01-20T19:23:27.062Z (7 days ago)
- Topics: docker, docker-compose, elasticsearch, fastapi, kibana, nextjs, python, radix-ui, tailwindcss, typescript
- Language: TypeScript
- Homepage:
- Size: 63.5 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ShopZone
A full stack e-commerce application built with Next.js, FastAPI and Elasticsearch. It provides a seamless shopping experience with powerful search capabilities, sorting, filtering and an intuitive interface. The application is fully responsive and mobile-friendly, offering a consistent experience across all devices.
## Features
- **Real-Time Product Search**: Instantly fetch and display product results powered by Elasticsearch for high-performance search capabilities.
- **Advanced Filtering and Sorting Options**:
- Multiple value filters for categories and subcategories.
- Range filters for product price and ratings.
- Options to clear individual filters or reset all filters simultaneously.
- Sorting options include Relevance, Price (Low to High), Price (High to Low), and Top Rated.
- **Responsive Design**: Fully optimized for mobile, tablet, and desktop devices, ensuring a seamless user experience across all platforms.
- **Clean and Modern UI**: Built using **TailwindCSS** and **Radix UI** for a visually appealing and user-friendly interface.
- **Personalized Product Recommendations**: Tailored product suggestions based on user preferences and browsing history.
- **Fast and Optimized Performance**: Highly efficient, ensuring a smooth and lag-free experience even for large datasets.
- **SEO-Friendly Architecture**: Powered by **Next.js** with dynamically generated metadata for product pages to enhance search engine visibility.
- **RESTful API Backend**: Developed with **FastAPI**, ensuring reliable and scalable backend services.
- **Pagination Controls**: Seamless pagination with customizable page size options for improved navigation.
- **Containerized Deployment**: Easily set up and deploy the application with Docker for streamlined and consistent deployment.## Tech Stack
- Next.js
- TypeScript
- TailwindCSS
- Radix UI
- FastAPI
- Elasticsearch
- Kibana
- Docker
- Docker Compose
- Python## Installation
1. Clone the repository
2. Run `docker compose -f docker-compose-production.yml up` to start the elasticsearch, kibana, backend and frontend instances
3. Run `docker compose -f docker-compose-production.yml down` to stop the elasticsearch, kibana, backend and frontend instances
4. Run `docker compose -f docker-compose-production.yml up --build` to build and start the elasticsearch, kibana, backend and frontend instances
5. On first run, the backend will seed the data into the elasticsearch index. This may take a few minutes. Please be patient and do not close the terminal.
6. Frontend will be available at `http://localhost:3000/`
7. Backend will be available at `http://localhost:8081/`
8. Kibana will be available at `http://localhost:5601/`
9. Elasticsearch will be available at `http://localhost:9200/`## Media
### Landing Page
### Search Page
### Search Page Pagination
### Search Page With Filters
### Product Details Page
### Product Recommendations
### Elasticsearch server
### Kibana server
## License
Copyright (c) 2024 Y. Siva Sai KrishnaThis project is licensed under the AGPL-3.0 License - see the LICENSE file for details.