An intelligent e-commerce solution that leverages AI to create optimal product bundles and pricing strategies, helping retailers maximize revenue and customer satisfaction.
- Complementary Bundles: Products frequently purchased together
- Thematic Bundles: Category-based product groupings
- Volume Bundles: Quantity-based discount packages
- Cross-sell Bundles: High-margin item combinations
- Machine learning-based pricing
- Revenue maximization algorithms
- Real-time stock tracking
- Automated bundle duration calculation
- Stock-based availability
- Next.js
- React
- TypeScript
- Tailwind CSS
- Jest for testing
- Python
- Flask
- SQLite
- Pytest for testing
- Pandas
- NumPy
- Scikit-learn
- Excel data handling
- Prettier
- Black
- Pylint
- Other tools like docker and github actions where used but because of the makeathon's limited time, did not manage to be delivered operational on time. For the competition's sake they are still published in the repository, so that judges can check their usage and the effort. In order to not loose the AZURE_KEY we deleted the .env, so if judges need to run themselves the project, they need to create a .env file and add the elements below
AZURE_KEY=<your-key>
ENDPOINT=<your-endpoint>
STORAGE_ENDPOINT=<your-storage-endpoint
STORAGE_KEY=<your-key>
STORAGE_CONTAINER=<your-storage-container>
SEARCH_KEY=<search-key>
SEARCH_ENDPOINT=<search-endpoint>
SEARCH_INDEX_NAME=<searche-index-name>
- The project structure on the app presented to the judges is based on the server and client directories. The rest files make the architecture messy but are provided to show the rest of the work done during the makeathon.
- Node.js 20+
- Python 3.8+
- Clone the repository:
git clone https://github.com/georgeflour/makeathon.git
cd makeathon- Set up the Python environment:
python3 -m venv venv
source venv/bin/activate
pip3 install -r requirements.txt- Set up the frontend:
# Navigate to client directory
cd client
# Install Node.js dependencies
npm install- Start the backend server:
# From the project root directory
cd server
flask run - Start the frontend development server:
# In a new terminal, from the client directory
cd client
npm run devThe application will be available at:
- Frontend: http://localhost:3000
- Backend API: http://localhost:5000
βββ client/ # Next.js frontend
β βββ src/ # Source files
β βββ public/ # Static files
β βββ __tests__/ # Frontend tests
β βββ package.json # Frontend dependencies
β βββ tailwind.config.ts # Tailwind configuration
β βββ tsconfig.json # TypeScript configuration
βββ server/ # Python backend
β βββ app/ # Application code
β βββ tests/ # Backend tests
β βββ requirements.txt # Backend dependencies
βββ requirements.txt # Main Python dependencies
βββ pyproject.toml # Python project configuration
βββ pytest.ini # Pytest configuration
For competition's sake, the .env is published despite being a bad general practice.
The frontend API configuration is handled in next.config.js and doesn't require additional environment variables.
Before running the application, ensure you have the following data files in the root directory:
Orders.xlsx: Contains the order history dataData.xlsx: Contains additional product datainventory_enriched.xlsx: Contains enriched inventory information.
The application will automatically create the necessary database files (makeathon.db and bundles.db) on first run.
cd client
npm testcd server
pytest- here is a quick overview of basic functionalities of the application
demo_makeathon_github.mp4
- Makeathon 2025
- All contributors and supporters
- Open source community
Made with β€οΈ for Makeathon 2025