adnbn 0.7.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -47
- package/package.json +9 -6
package/README.md
CHANGED
|
@@ -1,60 +1,40 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Addon Bone
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
[](https://www.npmjs.com/package/adnbn)
|
|
3
|
+
> **🚧 Active development** — the public API and documentation may change between releases. Full guides and API reference are being prepared at [addonbone.com](https://addonbone.com).
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
[](https://www.npmjs.com/package/adnbn)
|
|
6
|
+
[](https://www.npmjs.com/package/adnbn)
|
|
7
|
+
[](https://github.com/addon-stack/addon-bone/actions/workflows/ci.yml)
|
|
8
|
+
[](LICENSE.md)
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
A TypeScript framework for building browser extensions from a shared codebase.
|
|
11
|
+
Define extension entrypoints in source files; Addon Bone discovers them and creates
|
|
12
|
+
the browser-specific build and manifest.
|
|
9
13
|
|
|
10
|
-
|
|
14
|
+
## Install
|
|
11
15
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
16
|
+
```bash
|
|
17
|
+
npm i -D adnbn
|
|
18
|
+
```
|
|
15
19
|
|
|
16
|
-
|
|
20
|
+
## Get started
|
|
17
21
|
|
|
18
|
-
|
|
19
|
-
- **Manifest Versions**: Manifest V2 and V3.
|
|
22
|
+
Create a project, then build it for production:
|
|
20
23
|
|
|
21
|
-
|
|
24
|
+
```bash
|
|
25
|
+
npx adnbn init
|
|
26
|
+
npx adnbn build
|
|
27
|
+
```
|
|
22
28
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
- **Commands**
|
|
26
|
-
- **Localization**
|
|
27
|
-
- **Icons**
|
|
28
|
-
- **Messages**
|
|
29
|
-
- **Services**
|
|
30
|
-
- **Relay**
|
|
31
|
-
- **Offscreen**
|
|
32
|
-
- **Popup**
|
|
33
|
-
- **Sidebar**
|
|
29
|
+
For project structure, entrypoint guides, and the API reference, visit
|
|
30
|
+
[addonbone.com](https://addonbone.com).
|
|
34
31
|
|
|
35
|
-
|
|
32
|
+
## Links
|
|
36
33
|
|
|
37
|
-
-
|
|
38
|
-
-
|
|
34
|
+
- [Documentation](https://addonbone.com)
|
|
35
|
+
- [Contributing](CONTRIBUTING.md)
|
|
36
|
+
- [Issues](https://github.com/addon-stack/addon-bone/issues)
|
|
39
37
|
|
|
40
|
-
|
|
38
|
+
## License
|
|
41
39
|
|
|
42
|
-
|
|
43
|
-
- **Relay**: similar mechanism for content pages, bypassing CSP and getUserGesture restrictions by leveraging scripting contexts.
|
|
44
|
-
|
|
45
|
-
### Offscreen
|
|
46
|
-
|
|
47
|
-
- **Manifest V2**: offscreen support via `<iframe>` within the Background Page.
|
|
48
|
-
- **Manifest V3**: native Offscreen API.
|
|
49
|
-
|
|
50
|
-
### Benefits
|
|
51
|
-
|
|
52
|
-
- 🔌 **Plugin Architecture**: easily extend functionality and add features without modifying the core framework.
|
|
53
|
-
- 🔧 **Faster Development**: minimal configuration and boilerplate.
|
|
54
|
-
- 🌐 **Cross-Platform**: write code once; run everywhere regardless of browser or manifest version.
|
|
55
|
-
- 🔄 **Scalable**: seamlessly add new layers and entry points.
|
|
56
|
-
- 🚀 **Modern Design**: cutting-edge architecture following best practices for extension publishing.
|
|
57
|
-
|
|
58
|
-
---
|
|
59
|
-
|
|
60
|
-
> _This framework is under active development. Detailed documentation and usage examples will be available soon on the official website._
|
|
40
|
+
[MIT](LICENSE.md)
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "adnbn",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.7.
|
|
4
|
+
"version": "0.7.1",
|
|
5
5
|
"description": "Addon Bone - Cross-browser web extension framework with shared code base",
|
|
6
6
|
"homepage": "https://addonbone.com",
|
|
7
7
|
"author": "Anjey Tsibylskij (https://github.com/atldays)",
|
|
@@ -109,10 +109,12 @@
|
|
|
109
109
|
"format": "prettier --write .",
|
|
110
110
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
111
111
|
"check:node-version": "node ./scripts/check-node-version.js",
|
|
112
|
-
"test": "jest",
|
|
113
|
-
"test:ci": "
|
|
114
|
-
"test:
|
|
112
|
+
"test": "npm run build && jest",
|
|
113
|
+
"test:ci": "npm run test -- --ci --passWithNoTests --coverage",
|
|
114
|
+
"test:ci:non-browser": "npm run test -- --ci --passWithNoTests --coverage --testPathIgnorePatterns=tests/integration/browser",
|
|
115
|
+
"test:watch": "jest --watch --testPathIgnorePatterns=tests/integration/browser",
|
|
115
116
|
"test:offscreen": "jest --testPathPatterns=Offscreen",
|
|
117
|
+
"test:chrome": "npm run test -- --testPathPatterns=tests/integration/browser --runInBand",
|
|
116
118
|
"test:message": "jest --testPathPatterns=src/message",
|
|
117
119
|
"test:service": "jest --testPathPatterns=Service",
|
|
118
120
|
"test:relay": "jest --testPathPatterns=Relay",
|
|
@@ -124,9 +126,9 @@
|
|
|
124
126
|
"release:preview": "release-it --no-github.release --no-npm.publish --no-git.tag --ci"
|
|
125
127
|
},
|
|
126
128
|
"dependencies": {
|
|
127
|
-
"@addon-core/browser": "^0.
|
|
129
|
+
"@addon-core/browser": "^0.7.1",
|
|
128
130
|
"@addon-core/inject-script": "^0.3.1",
|
|
129
|
-
"@addon-core/storage": "^0.
|
|
131
|
+
"@addon-core/storage": "^0.7.0",
|
|
130
132
|
"@rsdoctor/rspack-plugin": "^1.5.1",
|
|
131
133
|
"@rspack/cli": "^1.7.5",
|
|
132
134
|
"@rspack/core": "^1.7.5",
|
|
@@ -177,6 +179,7 @@
|
|
|
177
179
|
"@types/react": "^19.1.10",
|
|
178
180
|
"@types/react-dom": "^19.1.7",
|
|
179
181
|
"@types/semver": "^7.7.1",
|
|
182
|
+
"chrome-launcher": "^1.2.1",
|
|
180
183
|
"cross-env": "^7.0.3",
|
|
181
184
|
"dotenv": "^16.4.7",
|
|
182
185
|
"esbuild": "^0.25.10",
|