feat(company-explorer): Initial Web UI & Backend with Enrichment Flow
This commit introduces the foundational elements for the new "Company Explorer" web application, marking a significant step away from the legacy Google Sheets / CLI system. Key changes include: - Project Structure: A new directory with separate (FastAPI) and (React/Vite) components. - Data Persistence: Migration from Google Sheets to a local SQLite database () using SQLAlchemy. - Core Utilities: Extraction and cleanup of essential helper functions (LLM wrappers, text utilities) into . - Backend Services: , , for AI-powered analysis, and logic. - Frontend UI: Basic React application with company table, import wizard, and dynamic inspector sidebar. - Docker Integration: Updated and for multi-stage builds and sideloading. - Deployment & Access: Integrated into central Nginx proxy and dashboard, accessible via . Lessons Learned & Fixed during development: - Frontend Asset Loading: Addressed issues with Vite's path and FastAPI's . - TypeScript Configuration: Added and . - Database Schema Evolution: Solved errors by forcing a new database file and correcting override. - Logging: Implemented robust file-based logging (). This new foundation provides a powerful and maintainable platform for future B2B robotics lead generation.
This commit is contained in:
39
create_dashboard.py
Normal file
39
create_dashboard.py
Normal file
@@ -0,0 +1,39 @@
|
||||
import time
|
||||
from notion_client import Client
|
||||
|
||||
def final_push():
|
||||
# --- KONFIGURATION DIREKT IN DER FUNKTION ---
|
||||
token = "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"
|
||||
database_id = "acf0e7e1-fff2-425b-81a1-00fbc76085b8"
|
||||
|
||||
notion = Client(auth=token)
|
||||
|
||||
print(f"🚀 Starte Injektion in DB: {database_id}")
|
||||
|
||||
sectors = [
|
||||
{"name": "Hotellerie", "desc": "Relevant für Empfang, Reinigung Zimmer, Parkplatz & Spa. Fokus auf Wellness vs. Business."},
|
||||
{"name": "Pflege & Kliniken", "desc": "Hohe Hygienestandards, Desinfektion, Transport von Mahlzeiten/Wäsche."},
|
||||
{"name": "Lager & Produktion", "desc": "Großflächenreinigung, Objektschutz (Security), Intralogistik-Transport."},
|
||||
{"name": "Einzelhandel", "desc": "Frequenzorientierte Reinigung, interaktive Verkaufsförderung (Ads), Nachtreinigung."}
|
||||
]
|
||||
|
||||
for s in sectors:
|
||||
try:
|
||||
notion.pages.create(
|
||||
parent={"database_id": database_id},
|
||||
properties={
|
||||
"Name": {"title": [{"text": {"content": s["name"]}}]},
|
||||
"Beschreibung": {"rich_text": [{"text": {"content": s["desc"]}}]},
|
||||
"Art": {"select": {"name": "Sector"}}
|
||||
}
|
||||
)
|
||||
print(f" ✅ {s['name']} wurde erfolgreich angelegt.")
|
||||
time.sleep(0.5)
|
||||
|
||||
except Exception as e:
|
||||
print(f" ❌ Fehler bei {s['name']}: {e}")
|
||||
|
||||
print("\n🏁 FERTIG. Schau jetzt in dein Notion Dashboard!")
|
||||
|
||||
if __name__ == "__main__":
|
||||
final_push()
|
||||
Reference in New Issue
Block a user