This repository was archived by the owner on Jan 28, 2026. It is now read-only.
Repository navigation
Expand file tree
/
Copy pathsetup.py
More file actions
73 lines (63 loc) · 2.04 KB
/
Copy pathsetup.py
File metadata and controls
73 lines (63 loc) · 2.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#!/usr/bin/env python3
"""
GOOSE Setup Script
Initializes the database and collects initial data
"""
import sys
from database import init_db
from collectors.snapshot import collect_snapshot_data
from collectors.safe import collect_safe_data
def main():
print("=" * 60)
print("🪿 GOOSE Setup")
print("Governance Oversight & Operational Speed Evaluator")
print("=" * 60)
print()
# Step 1: Initialize database
print("[1/4] Initializing database...")
try:
init_db()
print("✓ Database initialized successfully\n")
except Exception as e:
print(f"✗ Database initialization failed: {e}")
sys.exit(1)
# Step 2: Collect Snapshot data
print("[2/4] Collecting Snapshot data...")
print("This may take a few minutes depending on the number of proposals...")
try:
collect_snapshot_data()
print("✓ Snapshot data collected successfully\n")
except Exception as e:
print(f"✗ Snapshot data collection failed: {e}")
print("You can try running: python collectors/snapshot.py")
print()
# Step 3: Collect Safe data
print("[3/4] Collecting Safe multisig data...")
try:
collect_safe_data()
print("✓ Safe data collected successfully\n")
except Exception as e:
print(f"✗ Safe data collection failed: {e}")
print("You can try running: python collectors/safe.py")
print()
# Step 4: Update member names from CSV
print("[4/4] Updating council member names...")
try:
from database import update_member_names
count = update_member_names()
print(f"✓ Updated {count} member names from CSV\n")
except Exception as e:
print(f"✗ Member name update failed: {e}")
print()
# Done
print("=" * 60)
print("✓ Setup complete!")
print()
print("To start the dashboard, run:")
print(" python app.py")
print()
print("Then open your browser to:")
print(" http://localhost:8080")
print("=" * 60)
if __name__ == "__main__":
main()