A comprehensive full-stack application for managing and analyzing retail sales data. Features advanced search, multi-select filtering, sorting, and pagination, built with a focus on performance and clean architecture.
- Frontend: React, Vite, CSS
- Backend: Node.js, Express, SQLite
Full-text search is implemented using SQL LIKE queries on Customer Name and Phone Number fields. It is case-insensitive and works in conjunction with all active filters.
Multi-select filtering is supported for Region, Gender, Category, and Payment Method. Date range and Age range filtering are also implemented. Filters are applied dynamically via SQL IN clauses and range comparisons.
Sorting is handled on the backend via SQL ORDER BY. Supported fields include Date, Quantity, Customer Name, and Total Amount, with toggleable Ascending/Descending order.
Server-side pagination using SQL LIMIT and OFFSET. The frontend receives total count metadata to render Next/Previous controls and page indicators.
-
Backend Setup:
cd backend npm install npm startServer runs on
http://localhost:5000. -
Frontend Setup:
cd frontend npm install npm run devApplication runs on
http://localhost:5173. -
Access: Open your browser to
http://localhost:5173.
https://retailsense.netlify.app/
