Skip to content

Commit 8754a70

Browse files
committed
Initial implementation of GitHub Code Wiki Button extension
This commit implements a browser extension that adds a Code Wiki button to GitHub repositories, based on the github-deepwiki-button project structure. Features: - Chrome extension with Manifest v3 - Button injection to GitHub repository pages - URL format: https://codewiki.google/github.com/{owner}/{repo} - Multi-language support (14 languages: en, ja, de, el, es, fr, it, ko, nl, pt_BR, pt_PT, ru, zh_CN, zh_TW) - TypeScript implementation with content script and background service worker - Icon generation script using Sharp - GitHub Actions workflows for automated builds and Repomix packaging - Renovate configuration for automated dependency updates - Sponsor configuration (GitHub Sponsors) Structure: - app/: Extension source code - manifest.json: Extension manifest (v3) - scripts/: TypeScript source files - styles/: CSS files - _locales/: Localization files - images/: Extension icons - .github/: GitHub Actions workflows and configurations - scripts/: Build scripts (icon generation) - promo/: Promotional assets directory (images to be added later) Technical details: - Uses webextension-toolbox for cross-browser builds - Supports Chrome, Firefox, and Edge browsers - MutationObserver for GitHub SPA navigation handling - Code style enforcement with Biome - Secret detection with secretlint
1 parent d69b0f0 commit 8754a70

Some content is hidden

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

42 files changed

+10926
-0
lines changed

.editorconfig

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
root = true
2+
3+
[*]
4+
indent_style = space
5+
indent_size = 2
6+
charset = utf-8
7+
trim_trailing_whitespace = true
8+
insert_final_newline = true
9+
end_of_line = lf
10+
max_line_length = unset
11+
12+
[*.md]
13+
trim_trailing_whitespace = false

.github/FUNDING.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
github: yamadashy

.github/renovate.json5

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
3+
"extends": [
4+
"config:recommended",
5+
"schedule:weekly",
6+
'group:allNonMajor'
7+
],
8+
"rangeStrategy": "bump",
9+
"dependencyDashboard": false,
10+
"labels": ["dependencies", "renovate"],
11+
"automerge": true,
12+
"packageRules": [
13+
{
14+
matchDepTypes: ['peerDependencies'],
15+
enabled: false,
16+
},
17+
],
18+
"ignoreDeps": [
19+
"node",
20+
]
21+
}

.github/workflows/build.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: Build Extensions
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
workflow_dispatch:
9+
10+
jobs:
11+
12+
build:
13+
runs-on: ubuntu-24.04
14+
timeout-minutes: 20
15+
steps:
16+
- name: Checkout code
17+
uses: actions/checkout@v4
18+
with:
19+
lfs: true
20+
21+
- name: Setup node
22+
uses: actions/setup-node@v4
23+
with:
24+
node-version-file: .node-version
25+
cache: npm
26+
27+
- name: Install dependencies
28+
run: npm ci
29+
30+
- name: Build Chrome Extension
31+
run: npm run build chrome
32+
33+
- name: Build Firefox Extension
34+
run: npm run build firefox
35+
36+
- name: Build Edge Extension
37+
run: npm run build edge
38+
39+
- name: Archive packages
40+
uses: actions/upload-artifact@v4
41+
with:
42+
name: packages
43+
path: packages

.github/workflows/repomix.yml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Pack repository with Repomix
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
branches: [ main ]
7+
pull_request:
8+
branches: [ main ]
9+
10+
jobs:
11+
pack-repo:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout code
15+
uses: actions/checkout@v4
16+
17+
- name: Pack repository with Repomix
18+
uses: yamadashy/repomix/.github/actions/repomix@main
19+
with:
20+
output: repomix-output.xml
21+
22+
- name: Upload Repomix output
23+
uses: actions/upload-artifact@v4
24+
with:
25+
name: repomix-output.xml
26+
path: repomix-output.xml
27+
retention-days: 30

0 commit comments

Comments
 (0)