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.
Files changed (2) hide show
  1. package/README.md +27 -47
  2. package/package.json +9 -6
package/README.md CHANGED
@@ -1,60 +1,40 @@
1
- # adnbn
1
+ # Addon Bone
2
2
 
3
- [![npm version](https://img.shields.io/npm/v/adnbn.svg)](https://www.npmjs.com/package/adnbn)
4
- [![npm downloads](https://img.shields.io/npm/dm/adnbn.svg)](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
- ## Addon Bone - Cross-Browser Web Extension Framework with shared code base
5
+ [![npm version](https://img.shields.io/npm/v/adnbn.svg?logo=npm&style=for-the-badge)](https://www.npmjs.com/package/adnbn)
6
+ [![npm downloads](https://img.shields.io/npm/dm/adnbn.svg?style=for-the-badge&color=blue)](https://www.npmjs.com/package/adnbn)
7
+ [![CI](https://img.shields.io/github/actions/workflow/status/addon-stack/addon-bone/ci.yml?style=for-the-badge)](https://github.com/addon-stack/addon-bone/actions/workflows/ci.yml)
8
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge)](LICENSE.md)
7
9
 
8
- **Cross-browser framework** for developing extensions on a single code base. Enables creating multiple production-grade extensions with different localizations, icons, and designs while maintaining identical core functionality.
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
- ### Core Concept
14
+ ## Install
11
15
 
12
- - **Single code base**: maintain one set of source files for all extensions.
13
- - **Flexibility**: supports both multi-package setups (multiple extensions in one repository) and standalone projects.
14
- - **Modern workflow**: automatic merging of styles, scripts, content scripts, and background scripts.
16
+ ```bash
17
+ npm i -D adnbn
18
+ ```
15
19
 
16
- ### Supported Platforms & Manifests
20
+ ## Get started
17
21
 
18
- - **Browsers**: Chrome, Firefox, Opera, Safari, Edge.
19
- - **Manifest Versions**: Manifest V2 and V3.
22
+ Create a project, then build it for production:
20
23
 
21
- ### Entry Points
24
+ ```bash
25
+ npx adnbn init
26
+ npx adnbn build
27
+ ```
22
28
 
23
- - **Background Page**
24
- - **Content Scripts**
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
- ### Plugins
32
+ ## Links
36
33
 
37
- - **Extensibility via Plugins**: write modules for background pages, content scripts, and any supported entry points.
38
- - **Automatic Integration**: plugins are automatically included in the build process and update the manifest.
34
+ - [Documentation](https://addonbone.com)
35
+ - [Contributing](CONTRIBUTING.md)
36
+ - [Issues](https://github.com/addon-stack/addon-bone/issues)
39
37
 
40
- ### Services & Relay
38
+ ## License
41
39
 
42
- - **Services**: class-based layer for background interactions without boilerplate. Service methods are available across all extension layers via simple calls.
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.0",
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": "jest --ci --passWithNoTests --coverage",
114
- "test:watch": "jest --watch",
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.6.0",
129
+ "@addon-core/browser": "^0.7.1",
128
130
  "@addon-core/inject-script": "^0.3.1",
129
- "@addon-core/storage": "^0.6.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",