Skip to content

Commit 76077c3

Browse files
committed
Add initial documentation for RepoWidget with features, getting started guide, live demo, and API reference
1 parent 344f715 commit 76077c3

33 files changed

Lines changed: 4542 additions & 2348 deletions

.vscode/settings.json

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
{
2-
"prettier.arrowParens": "avoid",
3-
"prettier.bracketSpacing": true,
4-
"prettier.singleQuote": true,
5-
"prettier.tabWidth": 4,
6-
"prettier.useTabs": true,
7-
"prettier.semi": true,
8-
"prettier.trailingComma": "none",
9-
"prettier.printWidth": 100,
10-
"prettier.proseWrap": "always"
2+
"prettier.arrowParens": "avoid",
3+
"prettier.bracketSpacing": true,
4+
"prettier.singleQuote": true,
5+
"prettier.tabWidth": 4,
6+
"prettier.useTabs": true,
7+
"prettier.semi": true,
8+
"prettier.trailingComma": "none",
9+
"prettier.printWidth": 100,
10+
"prettier.proseWrap": "always",
11+
"liveServer.settings.port": 5502
1112
}

LICENSE

Lines changed: 0 additions & 21 deletions
This file was deleted.

README.md

Lines changed: 0 additions & 145 deletions
This file was deleted.

build.js

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
const fs = require('fs-extra');
2+
const path = require('path');
3+
const { minify } = require('terser');
4+
5+
async function build() {
6+
// Ensure directories exist
7+
fs.ensureDirSync(path.join(__dirname, 'dist'));
8+
fs.ensureDirSync(path.join(__dirname, 'docs/assets/js'));
9+
10+
// Read source file
11+
const sourcePath = path.join(__dirname, 'src/lib/repoWidget.js');
12+
const sourceCode = fs.readFileSync(sourcePath, 'utf8');
13+
14+
// Create regular distribution version
15+
fs.writeFileSync(path.join(__dirname, 'dist/repoWidget.js'), sourceCode);
16+
17+
// Create minified version
18+
const minified = await minify(sourceCode, {
19+
compress: true,
20+
mangle: true,
21+
output: {
22+
comments: /^!/,
23+
},
24+
});
25+
fs.writeFileSync(path.join(__dirname, 'dist/repoWidget.min.js'), minified.code);
26+
27+
// Create ES module version
28+
const esmCode = sourceCode
29+
.replace('(function ()', '// ESM version of RepoWidget\nexport function createRepoWidget')
30+
.replace('window.createRepoWidget = createRepoWidget;', '')
31+
.replace('})();', '');
32+
fs.writeFileSync(path.join(__dirname, 'dist/repoWidget.esm.js'), esmCode);
33+
34+
// Copy to docs
35+
fs.copyFileSync(
36+
path.join(__dirname, 'dist/repoWidget.min.js'),
37+
path.join(__dirname, 'docs/assets/js/repoWidget.min.js')
38+
);
39+
fs.copyFileSync(
40+
path.join(__dirname, 'src/lib/repoWidget.js'),
41+
path.join(__dirname, 'docs/assets/js/repoWidget.js')
42+
);
43+
44+
console.log('Build complete. Files written to dist/ and docs/assets/js/');
45+
}
46+
47+
build().catch(err => {
48+
console.error('Build failed:', err);
49+
process.exit(1);
50+
});
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
(function () {
12
function createRepoWidget({
23
username, // GitHub username
34
containerId, // ID of the container element
@@ -222,4 +223,5 @@
222223
initializeWidget();
223224
}
224225

225-
export { createRepoWidget };
226+
window.createRepoWidget = createRepoWidget;
227+
})();

0 commit comments

Comments
 (0)