Skip to content

Commit d412483

Browse files
feat: add npm package setup for v1.0.0
- package.json with bin entry for `npx onemore` - bin/onemore.js CLI wrapper (calls Python search.py) - MIT LICENSE file
1 parent e63658c commit d412483

3 files changed

Lines changed: 95 additions & 0 deletions

File tree

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2026 Juba Kitiashvili
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

bin/onemore.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#!/usr/bin/env node
2+
3+
const { execSync } = require('child_process');
4+
const path = require('path');
5+
const fs = require('fs');
6+
7+
const args = process.argv.slice(2);
8+
const scriptDir = path.join(__dirname, '..', 'scripts');
9+
const searchPy = path.join(scriptDir, 'search.py');
10+
11+
if (!fs.existsSync(searchPy)) {
12+
console.error('Error: search.py not found at', searchPy);
13+
process.exit(1);
14+
}
15+
16+
try {
17+
const result = execSync(`python3 "${searchPy}" ${args.join(' ')}`, {
18+
stdio: 'inherit',
19+
cwd: path.join(__dirname, '..'),
20+
});
21+
} catch (e) {
22+
process.exit(e.status || 1);
23+
}

package.json

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
{
2+
"name": "onemore",
3+
"version": "1.0.0",
4+
"description": "Apple HIG Design Intelligence — Generate Apple-quality UI across every platform",
5+
"main": "scripts/search.py",
6+
"bin": {
7+
"onemore": "./bin/onemore.js"
8+
},
9+
"scripts": {
10+
"test": "python3 -m pytest tests/ -v"
11+
},
12+
"keywords": [
13+
"apple",
14+
"hig",
15+
"human-interface-guidelines",
16+
"design-system",
17+
"ui",
18+
"ux",
19+
"claude-code",
20+
"cursor",
21+
"windsurf",
22+
"copilot",
23+
"ai-agent",
24+
"swiftui",
25+
"react",
26+
"react-native",
27+
"flutter",
28+
"tailwind"
29+
],
30+
"author": "Juba Kitiashvili (https://github.com/JubaKitiashvili)",
31+
"license": "MIT",
32+
"repository": {
33+
"type": "git",
34+
"url": "git+https://github.com/JubaKitiashvili/onemore.git"
35+
},
36+
"homepage": "https://jubakitiashvili.github.io/onemore/",
37+
"bugs": {
38+
"url": "https://github.com/JubaKitiashvili/onemore/issues"
39+
},
40+
"engines": {
41+
"node": ">=16"
42+
},
43+
"files": [
44+
"bin/",
45+
"scripts/",
46+
"data/",
47+
"SKILL.md",
48+
"README.md",
49+
"LICENSE"
50+
]
51+
}

0 commit comments

Comments
 (0)