Skip to content

Commit 0067e7e

Browse files
committed
Add GitHub Pages deployment setup
1 parent 66a0b03 commit 0067e7e

File tree

16 files changed

+366
-2
lines changed

16 files changed

+366
-2
lines changed

.github/workflows/deploy.yml

Lines changed: 245 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,245 @@
1+
name: Deploy to GitHub Pages
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
workflow_dispatch:
7+
8+
permissions:
9+
contents: read
10+
pages: write
11+
id-token: write
12+
13+
concurrency:
14+
group: "pages"
15+
cancel-in-progress: false
16+
17+
jobs:
18+
build:
19+
runs-on: ubuntu-latest
20+
steps:
21+
- name: Checkout
22+
uses: actions/checkout@v4
23+
24+
- name: Setup Node.js
25+
uses: actions/setup-node@v4
26+
with:
27+
node-version: '18'
28+
cache: 'npm'
29+
30+
- name: Build project 1
31+
run: |
32+
cd 1
33+
npm ci
34+
npm run build
35+
cd ..
36+
37+
- name: Build project 2
38+
run: |
39+
cd 2
40+
npm ci
41+
npm run build
42+
cd ..
43+
44+
- name: Build project 3
45+
run: |
46+
cd 3
47+
npm ci
48+
npm run build
49+
cd ..
50+
51+
- name: Build project 4
52+
run: |
53+
cd 4
54+
npm ci
55+
npm run build
56+
cd ..
57+
58+
- name: Build project 5
59+
run: |
60+
cd 5
61+
npm ci
62+
npm run build
63+
cd ..
64+
65+
- name: Build project 5a
66+
run: |
67+
cd 5a
68+
npm ci
69+
npm run build
70+
cd ..
71+
72+
- name: Build project 5b
73+
run: |
74+
cd 5b
75+
npm ci
76+
npm run build
77+
cd ..
78+
79+
- name: Build project 6
80+
run: |
81+
cd 6
82+
npm ci
83+
npm run build
84+
cd ..
85+
86+
- name: Build project 6a
87+
run: |
88+
cd 6a
89+
npm ci
90+
npm run build
91+
cd ..
92+
93+
- name: Build project 7
94+
run: |
95+
cd 7
96+
npm ci
97+
npm run build
98+
cd ..
99+
100+
- name: Build project 8
101+
run: |
102+
cd 8
103+
npm ci
104+
npm run build
105+
cd ..
106+
107+
- name: Create combined dist
108+
run: |
109+
mkdir -p dist
110+
mkdir -p dist/1 && cp -r 1/dist/* dist/1/
111+
mkdir -p dist/2 && cp -r 2/dist/* dist/2/
112+
mkdir -p dist/3 && cp -r 3/dist/* dist/3/
113+
mkdir -p dist/4 && cp -r 4/dist/* dist/4/
114+
mkdir -p dist/5 && cp -r 5/dist/* dist/5/
115+
mkdir -p dist/5a && cp -r 5a/dist/* dist/5a/
116+
mkdir -p dist/5b && cp -r 5b/dist/* dist/5b/
117+
mkdir -p dist/6 && cp -r 6/dist/* dist/6/
118+
mkdir -p dist/6a && cp -r 6a/dist/* dist/6a/
119+
mkdir -p dist/7 && cp -r 7/dist/* dist/7/
120+
mkdir -p dist/8 && cp -r 8/dist/* dist/8/
121+
122+
- name: Create index.html
123+
run: |
124+
cat > dist/index.html << 'EOF'
125+
<!DOCTYPE html>
126+
<html lang="ja">
127+
<head>
128+
<meta charset="UTF-8">
129+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
130+
<title>Floating UI React Demo</title>
131+
<style>
132+
body {
133+
font-family: system-ui, -apple-system, sans-serif;
134+
max-width: 800px;
135+
margin: 0 auto;
136+
padding: 40px 20px;
137+
line-height: 1.6;
138+
background-color: #f8fafc;
139+
}
140+
h1 {
141+
color: #1e293b;
142+
text-align: center;
143+
margin-bottom: 40px;
144+
}
145+
.demo-grid {
146+
display: grid;
147+
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
148+
gap: 20px;
149+
margin: 40px 0;
150+
}
151+
.demo-card {
152+
background: white;
153+
border-radius: 12px;
154+
padding: 24px;
155+
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
156+
transition: transform 0.2s, box-shadow 0.2s;
157+
text-decoration: none;
158+
color: inherit;
159+
}
160+
.demo-card:hover {
161+
transform: translateY(-2px);
162+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
163+
}
164+
.demo-title {
165+
font-size: 1.25rem;
166+
font-weight: 600;
167+
margin-bottom: 8px;
168+
color: #3b82f6;
169+
}
170+
.demo-desc {
171+
color: #64748b;
172+
font-size: 0.875rem;
173+
}
174+
</style>
175+
</head>
176+
<body>
177+
<h1>Floating UI React Demo</h1>
178+
<div class="demo-grid">
179+
<a href="./1/" class="demo-card">
180+
<div class="demo-title">Demo 1</div>
181+
<div class="demo-desc">基本的なFloating UIの実装</div>
182+
</a>
183+
<a href="./2/" class="demo-card">
184+
<div class="demo-title">Demo 2</div>
185+
<div class="demo-desc">ポジショニングオプション</div>
186+
</a>
187+
<a href="./3/" class="demo-card">
188+
<div class="demo-title">Demo 3</div>
189+
<div class="demo-desc">インタラクション機能</div>
190+
</a>
191+
<a href="./4/" class="demo-card">
192+
<div class="demo-title">Demo 4</div>
193+
<div class="demo-desc">アニメーション効果</div>
194+
</a>
195+
<a href="./5/" class="demo-card">
196+
<div class="demo-title">Demo 5</div>
197+
<div class="demo-desc">高度なカスタマイズ</div>
198+
</a>
199+
<a href="./5a/" class="demo-card">
200+
<div class="demo-title">Demo 5a</div>
201+
<div class="demo-desc">バリエーション A</div>
202+
</a>
203+
<a href="./5b/" class="demo-card">
204+
<div class="demo-title">Demo 5b</div>
205+
<div class="demo-desc">バリエーション B</div>
206+
</a>
207+
<a href="./6/" class="demo-card">
208+
<div class="demo-title">Demo 6</div>
209+
<div class="demo-desc">複雑なレイアウト</div>
210+
</a>
211+
<a href="./6a/" class="demo-card">
212+
<div class="demo-title">Demo 6a</div>
213+
<div class="demo-desc">レイアウト応用</div>
214+
</a>
215+
<a href="./7/" class="demo-card">
216+
<div class="demo-title">Demo 7</div>
217+
<div class="demo-desc">実用的な実装例</div>
218+
</a>
219+
<a href="./8/" class="demo-card">
220+
<div class="demo-title">Demo 8</div>
221+
<div class="demo-desc">完全なコンポーネント</div>
222+
</a>
223+
</div>
224+
</body>
225+
</html>
226+
EOF
227+
228+
- name: Setup Pages
229+
uses: actions/configure-pages@v4
230+
231+
- name: Upload artifact
232+
uses: actions/upload-pages-artifact@v3
233+
with:
234+
path: './dist'
235+
236+
deploy:
237+
environment:
238+
name: github-pages
239+
url: ${{ steps.deployment.outputs.page_url }}
240+
runs-on: ubuntu-latest
241+
needs: build
242+
steps:
243+
- name: Deploy to GitHub Pages
244+
id: deployment
245+
uses: actions/deploy-pages@v4

.gitignore

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Dependencies
2+
node_modules/
3+
4+
# Build outputs (各プロジェクトのdistフォルダは除外)
5+
*/dist/
6+
dist/
7+
8+
# Environment variables
9+
.env
10+
.env.local
11+
.env.development.local
12+
.env.test.local
13+
.env.production.local
14+
15+
# Logs
16+
npm-debug.log*
17+
yarn-debug.log*
18+
yarn-error.log*
19+
lerna-debug.log*
20+
21+
# Runtime data
22+
pids
23+
*.pid
24+
*.seed
25+
*.pid.lock
26+
27+
# Editor directories and files
28+
.vscode/*
29+
!.vscode/extensions.json
30+
.idea
31+
.DS_Store
32+
*.suo
33+
*.ntvs*
34+
*.njsproj
35+
*.sln
36+
*.sw?
37+
38+
# macOS
39+
.DS_Store
40+
41+
# Windows
42+
Thumbs.db
43+
ehthumbs.db

1/vite.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ import react from '@vitejs/plugin-react'
44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [react()],
7+
base: '/codegrid-demo/1/',
78
})

2/vite.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ import react from '@vitejs/plugin-react'
44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [react()],
7+
base: '/codegrid-demo/2/',
78
})

3/vite.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ import react from '@vitejs/plugin-react'
44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [react()],
7+
base: '/codegrid-demo/3/',
78
})

4/vite.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ import react from '@vitejs/plugin-react'
44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [react()],
7+
base: '/codegrid-demo/4/',
78
})

5/vite.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ import react from '@vitejs/plugin-react'
44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [react()],
7+
base: '/codegrid-demo/5/',
78
})

5a/vite.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ import react from '@vitejs/plugin-react'
44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [react()],
7+
base: '/codegrid-demo/5a/',
78
})

5b/vite.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ import react from '@vitejs/plugin-react'
44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [react()],
7+
base: '/codegrid-demo/5b/',
78
})

6/vite.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ import react from '@vitejs/plugin-react'
44
// https://vitejs.dev/config/
55
export default defineConfig({
66
plugins: [react()],
7+
base: '/codegrid-demo/6/',
78
})

0 commit comments

Comments
 (0)