CoolFace
Apppublic

Kelvin-programmer/pulsecommerce

sourceHugging Faceupdated 2mo agoView on Hugging Face
0likes
Makefile75 linesDownload Raw Back to root
1.PHONY: help install install-dev clean generate warehouse pipeline app site tableau test lint format typecheck docker-build docker-run ci2 3PYTHON := python4PIP := $(PYTHON) -m pip5 6help:7	@echo "PulseCommerce - available targets:"8	@echo "  install       Install runtime dependencies"9	@echo "  install-dev   Install dev dependencies + package in editable mode"10	@echo "  generate      Generate synthetic ecommerce dataset"11	@echo "  warehouse     Build DuckDB warehouse (staging + marts + metrics)"12	@echo "  pipeline      Run the full analytical pipeline (all 5 layers)"13	@echo "  app           Launch the Streamlit dashboard"14	@echo "  tableau       Export the Tableau Public CSV bundle"15	@echo "  site          Serve the static Tableau site on :8000"16	@echo "  test          Run pytest with coverage"17	@echo "  lint          Ruff check"18	@echo "  format        Ruff format"19	@echo "  typecheck     Mypy"20	@echo "  ci            Full CI pipeline (lint + typecheck + test)"21	@echo "  docker-build  Build Docker image"22	@echo "  docker-run    Run dashboard in Docker"23	@echo "  clean         Remove caches and generated data"24 25install:26	$(PIP) install -r requirements.txt27 28install-dev:29	$(PIP) install -r requirements-dev.txt30	$(PIP) install -e .31 32generate:33	$(PYTHON) -m pulsecommerce.cli generate --seed 4234 35warehouse:36	$(PYTHON) -m pulsecommerce.cli warehouse37 38pipeline:39	$(PYTHON) -m pulsecommerce.cli pipeline40 41app:42	streamlit run dashboard/Home.py43 44tableau:45	$(PYTHON) -m pulsecommerce.cli tableau46 47site:48	$(PYTHON) -m http.server 8000 --directory site49 50test:51	pytest52 53lint:54	ruff check src tests55 56format:57	ruff format src tests58 59typecheck:60	mypy src61 62ci: lint typecheck test63 64docker-build:65	docker build -t pulsecommerce:latest .66 67docker-run:68	docker run --rm -p 8501:8501 pulsecommerce:latest69 70clean:71	rm -rf .pytest_cache .ruff_cache .mypy_cache htmlcov .coverage72	rm -rf build dist *.egg-info73	find . -type d -name __pycache__ -exec rm -rf {} +74	rm -rf data/raw/*.parquet data/processed/*.parquet data/warehouse data/tableau/*.csv75