Skip to content

Commit 2b78db9

Browse files
Fix code styling to pass CI pipeline
1 parent 672cd65 commit 2b78db9

12 files changed

+2962
-2362
lines changed

app/streamlit_app.py

Lines changed: 674 additions & 379 deletions
Large diffs are not rendered by default.

scripts/collect_data.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from src.config import PROCESSED_DATA_DIR
1010

1111
# Add src to path
12-
sys.path.append(str(Path(__file__).parent.parent / 'src'))
12+
sys.path.append(str(Path(__file__).parent.parent / "src"))
1313

1414
from data_collector import CompetitiveDataCollector
1515
from config import *
@@ -20,33 +20,33 @@ def main():
2020
print(" DATA COLLECTION SCRIPT")
2121
print("=" * 80)
2222
print()
23-
23+
2424
print(f"Product: {PRODUCT_NAME}")
2525
print(f"Collecting data for {len(COMPETITORS)} competitors")
2626
print()
27-
27+
2828
# Initialize collector
2929
collector = CompetitiveDataCollector()
30-
30+
3131
# Generate all data
3232
print("Step 1: Generating competitive overview...")
3333
collector.generate_competitive_overview()
34-
34+
3535
print("\nStep 2: Generating feature matrix...")
3636
collector.generate_feature_matrix()
37-
37+
3838
print("\nStep 3: Generating traffic estimates...")
3939
collector.generate_traffic_estimates()
40-
40+
4141
print("\nStep 4: Generating user reviews...")
4242
collector.generate_user_reviews()
43-
43+
4444
# Save all data
4545
print("\n" + "-" * 80)
4646
print("Saving data to disk...")
4747
print("-" * 80)
4848
collector.save_all_data()
49-
49+
5050
print("\n" + "=" * 80)
5151
print(" DATA COLLECTION COMPLETE")
5252
print("=" * 80)
@@ -61,4 +61,4 @@ def main():
6161

6262

6363
if __name__ == "__main__":
64-
main()
64+
main()

scripts/generate_report.py

Lines changed: 37 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import pandas as pd
99

1010
# Add src to path
11-
sys.path.append(str(Path(__file__).parent.parent / 'src'))
11+
sys.path.append(str(Path(__file__).parent.parent / "src"))
1212

1313
from competitive_analyzer import CompetitiveAnalyzer
1414
from market_sizer import MarketSizer
@@ -23,17 +23,17 @@ def main():
2323
print(" REPORT GENERATION SCRIPT")
2424
print("=" * 80)
2525
print()
26-
26+
2727
# Check if data exists
2828
required_files = [
29-
PROCESSED_DATA_DIR / 'competitive_overview.csv',
30-
PROCESSED_DATA_DIR / 'feature_matrix.csv',
31-
PROCESSED_DATA_DIR / 'positioning_data.csv',
32-
PROCESSED_DATA_DIR / 'financial_projections_24m.csv'
29+
PROCESSED_DATA_DIR / "competitive_overview.csv",
30+
PROCESSED_DATA_DIR / "feature_matrix.csv",
31+
PROCESSED_DATA_DIR / "positioning_data.csv",
32+
PROCESSED_DATA_DIR / "financial_projections_24m.csv",
3333
]
34-
34+
3535
missing_files = [f for f in required_files if not f.exists()]
36-
36+
3737
if missing_files:
3838
print("❌ Missing required data files:")
3939
for f in missing_files:
@@ -43,82 +43,86 @@ def main():
4343
print(" python scripts/run_full_analysis.py")
4444
print()
4545
return
46-
46+
4747
print("✅ All required data files found")
4848
print()
49-
49+
5050
# Load data
5151
print("Loading data...")
52-
competitors_df = pd.read_csv(PROCESSED_DATA_DIR / 'competitive_overview.csv')
53-
features_matrix = pd.read_csv(PROCESSED_DATA_DIR / 'feature_matrix.csv')
54-
positioning = pd.read_csv(PROCESSED_DATA_DIR / 'positioning_data.csv')
55-
financial = pd.read_csv(PROCESSED_DATA_DIR / 'financial_projections_24m.csv')
56-
52+
competitors_df = pd.read_csv(PROCESSED_DATA_DIR / "competitive_overview.csv")
53+
features_matrix = pd.read_csv(PROCESSED_DATA_DIR / "feature_matrix.csv")
54+
positioning = pd.read_csv(PROCESSED_DATA_DIR / "positioning_data.csv")
55+
financial = pd.read_csv(PROCESSED_DATA_DIR / "financial_projections_24m.csv")
56+
5757
print("✅ Data loaded successfully")
5858
print()
59-
59+
6060
# Generate reports
6161
print("-" * 80)
6262
print("Generating Reports")
6363
print("-" * 80)
6464
print()
65-
65+
6666
# 1. Competitive Analysis Report
6767
print("1. Competitive Analysis Summary...")
6868
analyzer = CompetitiveAnalyzer(competitors_df, features_matrix)
6969
analyzer.positioning_data = positioning
7070
summary = analyzer.generate_competitive_summary()
71-
72-
with open(REPORTS_DIR / 'competitive_analysis_summary.txt', 'w', encoding='utf-8') as f:
71+
72+
with open(
73+
REPORTS_DIR / "competitive_analysis_summary.txt", "w", encoding="utf-8"
74+
) as f:
7375
f.write(summary)
7476
print(" ✅ Saved: competitive_analysis_summary.txt")
75-
77+
7678
# 2. Market Sizing Report
7779
print("\n2. Market Sizing Report...")
7880
sizer = MarketSizer()
7981
sizer.calculate_tam()
8082
sizer.calculate_sam()
8183
sizer.calculate_som()
8284
report = sizer.generate_market_sizing_report()
83-
84-
with open(REPORTS_DIR / 'market_sizing_report.txt', 'w', encoding='utf-8') as f:
85+
86+
with open(REPORTS_DIR / "market_sizing_report.txt", "w", encoding="utf-8") as f:
8587
f.write(report)
8688
print(" ✅ Saved: market_sizing_report.txt")
87-
89+
8890
# 3. Pricing Strategy Report
8991
print("\n3. Pricing Strategy Recommendation...")
9092
strategy = PricingStrategy()
9193
strategy.analyze_competitor_pricing(competitors_df)
9294
strategy.calculate_value_metrics()
9395
strategy.validate_unit_economics()
9496
pricing_report = strategy.generate_pricing_recommendation()
95-
96-
with open(REPORTS_DIR / 'pricing_strategy_recommendation.txt', 'w', encoding='utf-8') as f:
97+
98+
with open(
99+
REPORTS_DIR / "pricing_strategy_recommendation.txt", "w", encoding="utf-8"
100+
) as f:
97101
f.write(pricing_report)
98102
print(" ✅ Saved: pricing_strategy_recommendation.txt")
99-
103+
100104
# 4. GTM Strategy Report
101105
print("\n4. GTM Strategy Report...")
102106
planner = GTMPlanner()
103107
planner.create_weekly_breakdown()
104108
planner.define_channel_strategy()
105109
gtm_report = planner.generate_gtm_report()
106-
107-
with open(REPORTS_DIR / 'gtm_strategy_report.txt', 'w', encoding='utf-8') as f:
110+
111+
with open(REPORTS_DIR / "gtm_strategy_report.txt", "w", encoding="utf-8") as f:
108112
f.write(gtm_report)
109113
print(" ✅ Saved: gtm_strategy_report.txt")
110-
114+
111115
# 5. Financial Model Report
112116
print("\n5. Financial Projections Report...")
113117
model = FinancialModel()
114118
model.monthly_projections = financial
115119
model.calculate_break_even()
116120
financial_report = model.generate_financial_report()
117-
118-
with open(REPORTS_DIR / 'financial_model_report.txt', 'w', encoding='utf-8') as f:
121+
122+
with open(REPORTS_DIR / "financial_model_report.txt", "w", encoding="utf-8") as f:
119123
f.write(financial_report)
120124
print(" ✅ Saved: financial_model_report.txt")
121-
125+
122126
print()
123127
print("=" * 80)
124128
print(" REPORT GENERATION COMPLETE")
@@ -140,4 +144,4 @@ def main():
140144

141145

142146
if __name__ == "__main__":
143-
main()
147+
main()

0 commit comments

Comments
 (0)