Skip to content

Commit a272b5d

Browse files
Merge branch 'main' into copilot/fix-5c3bb658-652d-4498-93d1-6a6c35ec39a3
2 parents 667942a + 6d887a1 commit a272b5d

File tree

68 files changed

+11799
-491
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+11799
-491
lines changed

.github/workflows/pages.yml

Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
name: Build and Deploy GitHub Pages
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
paths:
7+
- 'docs/**'
8+
- 'outputs/**'
9+
- 'data/**'
10+
- 'scripts/**'
11+
- '_config.yml'
12+
workflow_dispatch:
13+
14+
permissions:
15+
contents: read
16+
pages: write
17+
id-token: write
18+
19+
concurrency:
20+
group: "pages"
21+
cancel-in-progress: false
22+
23+
jobs:
24+
build:
25+
runs-on: ubuntu-latest
26+
name: 🏗️ Build Site
27+
28+
steps:
29+
- name: 📥 Checkout
30+
uses: actions/checkout@v4
31+
32+
- name: 🔧 Setup Pages
33+
uses: actions/configure-pages@v4
34+
35+
- name: 🚀 Setup Python
36+
uses: actions/setup-python@v4
37+
with:
38+
python-version: '3.9'
39+
40+
- name: 📦 Install Dependencies
41+
run: |
42+
python -m pip install --upgrade pip
43+
if [ -f requirements.txt ]; then
44+
pip install -r requirements.txt
45+
else
46+
pip install pandas numpy plotly dash
47+
fi
48+
49+
- name: 📊 Generate Data (if needed)
50+
run: |
51+
if [ -f scripts/data_gen.py ]; then
52+
echo "🔄 Generating synthetic data..."
53+
python scripts/data_gen.py
54+
echo "✅ Data generation completed"
55+
fi
56+
57+
- name: 🎨 Update Dashboard Assets
58+
run: |
59+
echo "📁 Copying dashboard assets..."
60+
61+
# Ensure assets directory exists
62+
mkdir -p docs/assets/dashboards
63+
64+
# Copy existing dashboards to docs
65+
if [ -d outputs ]; then
66+
cp outputs/*.html docs/assets/dashboards/ 2>/dev/null || echo "No HTML files to copy from outputs"
67+
fi
68+
69+
# Copy any other important dashboards
70+
find . -name "*.html" -not -path "./docs/*" -not -path "./.git/*" -not -path "./node_modules/*" | head -10 | while read file; do
71+
if [ -f "$file" ]; then
72+
echo "Copying $file to docs/assets/dashboards/"
73+
cp "$file" docs/assets/dashboards/
74+
fi
75+
done
76+
77+
echo "✅ Dashboard assets updated"
78+
79+
- name: 🔧 Setup Ruby
80+
uses: ruby/setup-ruby@v1
81+
with:
82+
ruby-version: '3.1'
83+
bundler-cache: true
84+
85+
- name: 📝 Create Gemfile if not exists
86+
run: |
87+
if [ ! -f docs/Gemfile ]; then
88+
cat > docs/Gemfile << 'EOF'
89+
source "https://rubygems.org"
90+
91+
gem "jekyll", "~> 4.3.0"
92+
gem "minima", "~> 2.5"
93+
gem "jekyll-feed", "~> 0.12"
94+
gem "jekyll-sitemap"
95+
gem "jekyll-seo-tag"
96+
gem "webrick", "~> 1.7"
97+
EOF
98+
fi
99+
100+
- name: 📦 Install Jekyll Dependencies
101+
run: |
102+
cd docs
103+
bundle install
104+
105+
- name: 🏗️ Build with Jekyll
106+
run: |
107+
cd docs
108+
bundle exec jekyll build --verbose
109+
echo "✅ Jekyll build completed"
110+
111+
# List generated files
112+
echo "📁 Generated files:"
113+
ls -la _site/
114+
115+
- name: 📤 Upload artifact
116+
uses: actions/upload-pages-artifact@v3
117+
with:
118+
path: docs/_site
119+
120+
deploy:
121+
environment:
122+
name: github-pages
123+
url: ${{ steps.deployment.outputs.page_url }}
124+
runs-on: ubuntu-latest
125+
needs: build
126+
name: 🚀 Deploy to GitHub Pages
127+
128+
steps:
129+
- name: 🌐 Deploy to GitHub Pages
130+
id: deployment
131+
uses: actions/deploy-pages@v4
132+
133+
- name: ✅ Deployment Summary
134+
run: |
135+
echo "🎉 Site deployed successfully!"
136+
echo "🌐 URL: ${{ steps.deployment.outputs.page_url }}"
137+
echo "📊 Dashboard URL: ${{ steps.deployment.outputs.page_url }}assets/dashboards/"

.gitignore

Lines changed: 37 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,44 @@
1-
# Python cache files
1+
# Byte-compiled / optimized / DLL files
22
__pycache__/
33
*.py[cod]
44
*$py.class
55
*.so
66

7-
# Ensure all pycache directories are ignored
8-
*/__pycache__/
9-
**/__pycache__/
10-
117
# Generated outputs (large files)
128
AI_Knowledge_Extraction_System/outputs/
139
AI_Knowledge_Extraction_System/AI_Knowledge_Extraction_System/outputs/
1410

15-
# Temporary cache
11+
# Unit test / coverage reports
12+
htmlcov/
13+
.tox/
14+
.coverage
15+
.coverage.*
1616
.cache/
1717
.models_cache/
18+
nosetests.xml
19+
coverage.xml
20+
*.cover
21+
.hypothesis/
22+
.pytest_cache/
23+
24+
# Jupyter Notebook
25+
.ipynb_checkpoints
1826

1927
# Virtual environments
20-
venv/
28+
.env
29+
.venv
2130
env/
31+
venv/
2232
ENV/
33+
env.bak/
34+
venv.bak/
35+
36+
# Jekyll
37+
docs/_site/
38+
docs/.sass-cache/
39+
docs/.jekyll-cache/
40+
docs/.jekyll-metadata
41+
docs/Gemfile.lock
2342

2443
# IDE files
2544
.vscode/
@@ -34,5 +53,14 @@ Thumbs.db
3453
# Log files
3554
*.log
3655

37-
# Jupyter notebook checkpoints
38-
.ipynb_checkpoints/
56+
# Temporary files
57+
*.tmp
58+
*.temp
59+
*~
60+
61+
# Node modules if using any JS tools
62+
node_modules/
63+
64+
# Backup files
65+
*.backup
66+
docs/*.backup

.gitignore_monica

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Python cache files
2+
__pycache__/
3+
*.py[cod]
4+
*$py.class
5+
6+
# Monica AI specific cache
7+
AI_Knowledge_Extraction_System/**/__pycache__/
8+
AI_Knowledge_Extraction_System/processors/__pycache__/
9+
AI_Knowledge_Extraction_System/core/__pycache__/
10+
AI_Knowledge_Extraction_System/config/__pycache__/
11+
12+
# Temporary files
13+
*.tmp
14+
*.temp
15+
.DS_Store
16+
17+
# IDE files
18+
.vscode/
19+
.idea/
20+
*.swp
21+
*.swo
22+
23+
# Virtual environments
24+
venv/
25+
env/
26+
.env
27+
28+
# Logs
29+
*.log

0 commit comments

Comments
 (0)