Release 1.0.0: license, changelog, packaging closeout
- MIT license attributed to Dreamodus Software Inc. (root + package LICENSE, package.json author, README and docs-site footer) - Version 1.0.0; CHANGELOG.md summarizing the release - Package files whitelist includes LICENSE/README/CHANGELOG; tarballs gitignored - Root README: instructions for consuming the unpublished package (tarball, file dependency, or pnpm link) Verified: 32 tests, both packages typecheck, production builds clean, and a pnpm-pack tarball installed into a fresh project resolves all 50 exports via both ESM and CJS.
This commit is contained in:
parent
68777fd00e
commit
54d006b137
8 changed files with 113 additions and 4 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -1,5 +1,6 @@
|
||||||
node_modules/
|
node_modules/
|
||||||
dist/
|
dist/
|
||||||
|
*.tgz
|
||||||
*.local
|
*.local
|
||||||
.DS_Store
|
.DS_Store
|
||||||
*.tsbuildinfo
|
*.tsbuildinfo
|
||||||
|
|
|
||||||
21
LICENSE
Normal file
21
LICENSE
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2026 Dreamodus Software Inc.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
24
README.md
24
README.md
|
|
@ -42,3 +42,27 @@ import { MetalKnob, LEDKnob, Fader, logTaper } from 'dreamknob'
|
||||||
`useKnob`.
|
`useKnob`.
|
||||||
|
|
||||||
See `packages/dreamknob/README.md` and the docs app for the full API.
|
See `packages/dreamknob/README.md` and the docs app for the full API.
|
||||||
|
|
||||||
|
## Using it in another app (without publishing)
|
||||||
|
|
||||||
|
The package builds to `packages/dreamknob/dist` (ESM + CJS + types). Three options:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. Tarball (most robust — behaves exactly like an npm install)
|
||||||
|
cd packages/dreamknob && pnpm build && pnpm pack
|
||||||
|
# then in your app:
|
||||||
|
pnpm add /path/to/dreamknob-1.0.0.tgz
|
||||||
|
|
||||||
|
# 2. File dependency (picks up rebuilds on reinstall)
|
||||||
|
pnpm add file:../dreamknob/packages/dreamknob
|
||||||
|
|
||||||
|
# 3. Link for active development against your app
|
||||||
|
cd packages/dreamknob && pnpm link --global
|
||||||
|
cd your-app && pnpm link --global dreamknob
|
||||||
|
```
|
||||||
|
|
||||||
|
Peer deps: `react >= 18`, `react-dom >= 18`. No CSS import needed.
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT © Dreamodus Software Inc. — see [LICENSE](LICENSE).
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,8 @@ export const App: React.FC = () => (
|
||||||
<ApiDocs />
|
<ApiDocs />
|
||||||
<footer className="footer">
|
<footer className="footer">
|
||||||
<div className="container">
|
<div className="container">
|
||||||
dreamknob · MIT · built with a headless core, SVG and zero runtime dependencies
|
dreamknob · MIT © Dreamodus Software Inc. · built with a headless core, SVG and
|
||||||
|
zero runtime dependencies
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
</>
|
</>
|
||||||
|
|
|
||||||
35
packages/dreamknob/CHANGELOG.md
Normal file
35
packages/dreamknob/CHANGELOG.md
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
# Changelog
|
||||||
|
|
||||||
|
## 1.0.0 — 2026-07-12
|
||||||
|
|
||||||
|
Initial release.
|
||||||
|
|
||||||
|
### Controls
|
||||||
|
- Rotary knob skins: `FlatKnob`, `MetalKnob`, `RubberKnob`, `VintageKnob`, `LEDKnob`,
|
||||||
|
`NeonKnob`, `SteppedKnob`, `ImageKnob` (film-strip sprites)
|
||||||
|
- Linear: `Fader` (custom cap color/length), `LEDFader` (meter-zone segments)
|
||||||
|
- Displays: `Meter` (peak hold + latching clip LED with `clipValue` peak detection),
|
||||||
|
`SegmentDisplay` (7-seg incl. letters/hex), `AlphaDisplay` (14-seg alphanumeric)
|
||||||
|
- `XYPad` (two-parameter pad), `PushButton` (toggle/momentary with LED)
|
||||||
|
- Composable `<Knob>` + primitives (`Arc` with gradients, `Pointer`, `Ticks`,
|
||||||
|
`TickLabels`, `Face`, `KnobValue`, `KnobLabel`, `GlowFilter`) and fully headless
|
||||||
|
`useKnob`
|
||||||
|
|
||||||
|
### Interaction core
|
||||||
|
- Rotary (absolute / relative / pickup), relative vertical/horizontal, absolute track
|
||||||
|
modes; drag acceleration; cursor hiding; magnetic detents; endless `wrap` mode
|
||||||
|
- Wheel with trackpad delta accumulation, `wheelStep`, focus-gated capture
|
||||||
|
- Full keyboard support, Escape drag-cancel, double-click reset, type-in editing
|
||||||
|
(`editable`, `"1.2k"` parsing), Shift fine control
|
||||||
|
- Value model: any range, decimal steps with float-safe rounding, discrete `values`,
|
||||||
|
detent `steps`, linear/log/pow/custom tapers, bipolar `origin`
|
||||||
|
- `onChange`/`onChangeStart`/`onChangeEnd` with gesture `meta.source`; gesture-scoped
|
||||||
|
undo friendly
|
||||||
|
- `animateChanges` tween for programmatic changes (reduced-motion aware), `valueBubble`
|
||||||
|
|
||||||
|
### Integration
|
||||||
|
- Theming via `DreamknobProvider` (dark/light bases, per-instance override)
|
||||||
|
- Keyboard-only focus rings, `role="slider"`/`role="meter"` semantics,
|
||||||
|
`aria-orientation`, `data-*` state attributes, `data-part` CSS hooks
|
||||||
|
- `forwardRef` on all interactive components, hidden form inputs via `name`,
|
||||||
|
touch via pointer capture (mobile verified), SSR-safe rendering
|
||||||
21
packages/dreamknob/LICENSE
Normal file
21
packages/dreamknob/LICENSE
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2026 Dreamodus Software Inc.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
@ -155,4 +155,6 @@ const { value, normalized, angle, isDragging, bind, setValue } = useKnob({
|
||||||
return <div {...bind}>…your own rendering…</div>
|
return <div {...bind}>…your own rendering…</div>
|
||||||
```
|
```
|
||||||
|
|
||||||
MIT
|
## License
|
||||||
|
|
||||||
|
MIT © Dreamodus Software Inc.
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
{
|
{
|
||||||
"name": "dreamknob",
|
"name": "dreamknob",
|
||||||
"version": "0.1.0",
|
"version": "1.0.0",
|
||||||
"description": "A feature-full, studio-grade React knob & fader library. Rotary, linear, 2D, 3D, digital and analog styles with a headless core.",
|
"description": "A feature-full, studio-grade React knob & fader library. Rotary, linear, 2D, 3D, digital and analog styles with a headless core.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
"author": "Dreamodus Software Inc.",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"sideEffects": false,
|
"sideEffects": false,
|
||||||
"main": "./dist/index.cjs",
|
"main": "./dist/index.cjs",
|
||||||
|
|
@ -16,7 +17,10 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
"dist"
|
"dist",
|
||||||
|
"LICENSE",
|
||||||
|
"README.md",
|
||||||
|
"CHANGELOG.md"
|
||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "tsup src/index.ts --format esm,cjs --dts --sourcemap --clean",
|
"build": "tsup src/index.ts --format esm,cjs --dts --sourcemap --clean",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue