@kingsy/viewer 2.25.7

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 (177) hide show
  1. package/dist/IViewer.d.ts +157 -0
  2. package/dist/helpers/flatten.d.ts +11 -0
  3. package/dist/helpers/typeHelper.d.ts +2 -0
  4. package/dist/index.d.ts +89 -0
  5. package/dist/index.js +42 -0
  6. package/dist/modules/Assets.d.ts +15 -0
  7. package/dist/modules/EventEmitter.d.ts +7 -0
  8. package/dist/modules/Helpers.d.ts +3 -0
  9. package/dist/modules/Intersections.d.ts +20 -0
  10. package/dist/modules/KingSyRenderer.d.ts +168 -0
  11. package/dist/modules/LegacyViewer.d.ts +77 -0
  12. package/dist/modules/Shadowcatcher.d.ts +25 -0
  13. package/dist/modules/ShadowcatcherConfig.d.ts +14 -0
  14. package/dist/modules/UrlHelper.d.ts +1 -0
  15. package/dist/modules/Utils.d.ts +10 -0
  16. package/dist/modules/Viewer.d.ts +74 -0
  17. package/dist/modules/WebXrViewer.d.ts +10 -0
  18. package/dist/modules/World.d.ts +31 -0
  19. package/dist/modules/batching/Batch.d.ts +62 -0
  20. package/dist/modules/batching/BatchObject.d.ts +53 -0
  21. package/dist/modules/batching/Batcher.d.ts +60 -0
  22. package/dist/modules/batching/DrawRanges.d.ts +6 -0
  23. package/dist/modules/batching/InstancedBatchObject.d.ts +8 -0
  24. package/dist/modules/batching/InstancedMeshBatch.d.ts +60 -0
  25. package/dist/modules/batching/LineBatch.d.ts +52 -0
  26. package/dist/modules/batching/MeshBatch.d.ts +35 -0
  27. package/dist/modules/batching/PointBatch.d.ts +29 -0
  28. package/dist/modules/batching/PrimitiveBatch.d.ts +57 -0
  29. package/dist/modules/batching/TextBatch.d.ts +41 -0
  30. package/dist/modules/converter/Geometry.d.ts +38 -0
  31. package/dist/modules/converter/MeshTriangulationHelper.d.ts +50 -0
  32. package/dist/modules/converter/Units.d.ts +12 -0
  33. package/dist/modules/extensions/CameraController.d.ts +95 -0
  34. package/dist/modules/extensions/Controls.d.ts +91 -0
  35. package/dist/modules/extensions/DiffExtension.d.ts +50 -0
  36. package/dist/modules/extensions/ExplodeExtension.d.ts +17 -0
  37. package/dist/modules/extensions/Extension.d.ts +15 -0
  38. package/dist/modules/extensions/FilteringExtension.d.ts +55 -0
  39. package/dist/modules/extensions/HybridCameraController.d.ts +14 -0
  40. package/dist/modules/extensions/SelectionExtension.d.ts +53 -0
  41. package/dist/modules/extensions/TransformControls.d.ts +157 -0
  42. package/dist/modules/extensions/ViewModes.d.ts +32 -0
  43. package/dist/modules/extensions/controls/FlyControls.d.ts +82 -0
  44. package/dist/modules/extensions/controls/KingSyControls.d.ts +25 -0
  45. package/dist/modules/extensions/controls/SmoothOrbitControls.d.ts +222 -0
  46. package/dist/modules/extensions/measurements/AreaMeasurement.d.ts +64 -0
  47. package/dist/modules/extensions/measurements/Measurement.d.ts +34 -0
  48. package/dist/modules/extensions/measurements/MeasurementPointGizmo.d.ts +42 -0
  49. package/dist/modules/extensions/measurements/MeasurementsExtension.d.ts +71 -0
  50. package/dist/modules/extensions/measurements/PerpendicularMeasurement.d.ts +19 -0
  51. package/dist/modules/extensions/measurements/PointMeasurement.d.ts +25 -0
  52. package/dist/modules/extensions/measurements/PointToPointMeasurement.d.ts +15 -0
  53. package/dist/modules/extensions/sections/SectionOutlines.d.ts +45 -0
  54. package/dist/modules/extensions/sections/SectionTool.d.ts +219 -0
  55. package/dist/modules/filtering/PropertyManager.d.ts +55 -0
  56. package/dist/modules/input/Input.d.ts +47 -0
  57. package/dist/modules/loaders/GeometryConverter.d.ts +32 -0
  58. package/dist/modules/loaders/KingSy/KingSyConverter.d.ts +118 -0
  59. package/dist/modules/loaders/KingSy/KingSyGeometryConverter.d.ts +127 -0
  60. package/dist/modules/loaders/KingSy/KingSyLoader.d.ts +18 -0
  61. package/dist/modules/loaders/KingSy/KingSyOfflineLoader.d.ts +8 -0
  62. package/dist/modules/loaders/Loader.d.ts +35 -0
  63. package/dist/modules/loaders/OBJ/ObjConverter.d.ts +18 -0
  64. package/dist/modules/loaders/OBJ/ObjGeometryConverter.d.ts +14 -0
  65. package/dist/modules/loaders/OBJ/ObjLoader.d.ts +16 -0
  66. package/dist/modules/materials/KingSyBasicMaterial.d.ts +26 -0
  67. package/dist/modules/materials/KingSyDepthMaterial.d.ts +22 -0
  68. package/dist/modules/materials/KingSyDepthNormalIdMaterial.d.ts +11 -0
  69. package/dist/modules/materials/KingSyDepthNormalMaterial.d.ts +6 -0
  70. package/dist/modules/materials/KingSyDisplaceMaterial.d.ts +11 -0
  71. package/dist/modules/materials/KingSyGhostMaterial.d.ts +8 -0
  72. package/dist/modules/materials/KingSyLineMaterial.d.ts +20 -0
  73. package/dist/modules/materials/KingSyMatcapMaterial.d.ts +19 -0
  74. package/dist/modules/materials/KingSyMaterial.d.ts +65 -0
  75. package/dist/modules/materials/KingSyNormalMaterial.d.ts +18 -0
  76. package/dist/modules/materials/KingSyPointColouredMaterial.d.ts +12 -0
  77. package/dist/modules/materials/KingSyPointMaterial.d.ts +18 -0
  78. package/dist/modules/materials/KingSyShadowcatcherMaterial.d.ts +10 -0
  79. package/dist/modules/materials/KingSyStandardColoredMaterial.d.ts +11 -0
  80. package/dist/modules/materials/KingSyStandardMaterial.d.ts +22 -0
  81. package/dist/modules/materials/KingSyTextMaterial.d.ts +26 -0
  82. package/dist/modules/materials/KingSyViewportMaterial.d.ts +13 -0
  83. package/dist/modules/materials/MaterialOptions.d.ts +6 -0
  84. package/dist/modules/materials/Materials.d.ts +111 -0
  85. package/dist/modules/materials/shaders/kingsy-apply-ao-frag.d.ts +1 -0
  86. package/dist/modules/materials/shaders/kingsy-apply-ao-vert.d.ts +1 -0
  87. package/dist/modules/materials/shaders/kingsy-basic-frag.d.ts +1 -0
  88. package/dist/modules/materials/shaders/kingsy-basic-vert.d.ts +1 -0
  89. package/dist/modules/materials/shaders/kingsy-copy-output-frag.d.ts +1 -0
  90. package/dist/modules/materials/shaders/kingsy-copy-output-vert.d.ts +1 -0
  91. package/dist/modules/materials/shaders/kingsy-depth-frag.d.ts +1 -0
  92. package/dist/modules/materials/shaders/kingsy-depth-normal-frag.d.ts +1 -0
  93. package/dist/modules/materials/shaders/kingsy-depth-normal-id-frag.d.ts +1 -0
  94. package/dist/modules/materials/shaders/kingsy-depth-normal-id-vert.d.ts +1 -0
  95. package/dist/modules/materials/shaders/kingsy-depth-normal-vert.d.ts +1 -0
  96. package/dist/modules/materials/shaders/kingsy-depth-vert.d.ts +1 -0
  97. package/dist/modules/materials/shaders/kingsy-displace-frag.d.ts +1 -0
  98. package/dist/modules/materials/shaders/kingsy-displace.vert.d.ts +1 -0
  99. package/dist/modules/materials/shaders/kingsy-edges-generator-frag.d.ts +1 -0
  100. package/dist/modules/materials/shaders/kingsy-edges-generator-vert.d.ts +1 -0
  101. package/dist/modules/materials/shaders/kingsy-ghost-frag.d.ts +1 -0
  102. package/dist/modules/materials/shaders/kingsy-ghost-vert.d.ts +1 -0
  103. package/dist/modules/materials/shaders/kingsy-line-frag.d.ts +1 -0
  104. package/dist/modules/materials/shaders/kingsy-line-vert.d.ts +1 -0
  105. package/dist/modules/materials/shaders/kingsy-normal-frag.d.ts +1 -0
  106. package/dist/modules/materials/shaders/kingsy-normal-vert.d.ts +1 -0
  107. package/dist/modules/materials/shaders/kingsy-point-frag.d.ts +1 -0
  108. package/dist/modules/materials/shaders/kingsy-point-vert.d.ts +1 -0
  109. package/dist/modules/materials/shaders/kingsy-sao-frag.d.ts +1 -0
  110. package/dist/modules/materials/shaders/kingsy-sao-vert.d.ts +1 -0
  111. package/dist/modules/materials/shaders/kingsy-shadowcatche-frag.d.ts +1 -0
  112. package/dist/modules/materials/shaders/kingsy-shadowcatcher-vert.d.ts +1 -0
  113. package/dist/modules/materials/shaders/kingsy-standard-colored-frag.d.ts +1 -0
  114. package/dist/modules/materials/shaders/kingsy-standard-colored-vert.d.ts +1 -0
  115. package/dist/modules/materials/shaders/kingsy-standard-frag.d.ts +1 -0
  116. package/dist/modules/materials/shaders/kingsy-standard-vert.d.ts +1 -0
  117. package/dist/modules/materials/shaders/kingsy-static-ao-accumulate-frag.d.ts +1 -0
  118. package/dist/modules/materials/shaders/kingsy-static-ao-accumulate-vert.d.ts +1 -0
  119. package/dist/modules/materials/shaders/kingsy-static-ao-generate-frag.d.ts +1 -0
  120. package/dist/modules/materials/shaders/kingsy-static-ao-generate-vert.d.ts +1 -0
  121. package/dist/modules/materials/shaders/kingsy-temporal-supersampling-frag.d.ts +1 -0
  122. package/dist/modules/materials/shaders/kingsy-temporal-supersampling-vert.d.ts +1 -0
  123. package/dist/modules/materials/shaders/kingsy-text-frag.d.ts +1 -0
  124. package/dist/modules/materials/shaders/kingsy-text-vert.d.ts +1 -0
  125. package/dist/modules/materials/shaders/kingsy-viewport-frag.d.ts +1 -0
  126. package/dist/modules/materials/shaders/kingsy-viewport-vert.d.ts +1 -0
  127. package/dist/modules/objects/AccelerationStructure.d.ts +72 -0
  128. package/dist/modules/objects/ExtendedInstancedMesh.d.ts +6 -0
  129. package/dist/modules/objects/JitterQuad.d.ts +10 -0
  130. package/dist/modules/objects/KingSyCamera.d.ts +31 -0
  131. package/dist/modules/objects/KingSyInstancedMesh.d.ts +44 -0
  132. package/dist/modules/objects/KingSyMesh.d.ts +43 -0
  133. package/dist/modules/objects/KingSyRaycaster.d.ts +42 -0
  134. package/dist/modules/objects/KingSyText.d.ts +39 -0
  135. package/dist/modules/objects/KingSyWebGLRenderer.d.ts +24 -0
  136. package/dist/modules/objects/RotatablePMREMGenerator.d.ts +5 -0
  137. package/dist/modules/objects/TopLevelAccelerationStructure.d.ts +41 -0
  138. package/dist/modules/pipeline/Passes/BlendPass.d.ts +17 -0
  139. package/dist/modules/pipeline/Passes/DepthNormalIdPass.d.ts +12 -0
  140. package/dist/modules/pipeline/Passes/DepthNormalPass.d.ts +25 -0
  141. package/dist/modules/pipeline/Passes/DepthPass.d.ts +23 -0
  142. package/dist/modules/pipeline/Passes/EdgesPass.d.ts +25 -0
  143. package/dist/modules/pipeline/Passes/GPass.d.ts +88 -0
  144. package/dist/modules/pipeline/Passes/GeometryPass.d.ts +7 -0
  145. package/dist/modules/pipeline/Passes/NormalsPass.d.ts +8 -0
  146. package/dist/modules/pipeline/Passes/OutputPass.d.ts +23 -0
  147. package/dist/modules/pipeline/Passes/ProgressiveAOPass.d.ts +30 -0
  148. package/dist/modules/pipeline/Passes/ShadedPass.d.ts +26 -0
  149. package/dist/modules/pipeline/Passes/ShadowcatcherPass.d.ts +43 -0
  150. package/dist/modules/pipeline/Passes/StencilMaskPass.d.ts +9 -0
  151. package/dist/modules/pipeline/Passes/StencilPass.d.ts +9 -0
  152. package/dist/modules/pipeline/Passes/TAAPass.d.ts +15 -0
  153. package/dist/modules/pipeline/Passes/ViewportPass.d.ts +22 -0
  154. package/dist/modules/pipeline/Pipelines/ArcticViewPipeline.d.ts +7 -0
  155. package/dist/modules/pipeline/Pipelines/DefaultPipeline.d.ts +6 -0
  156. package/dist/modules/pipeline/Pipelines/EdgesPipeline.d.ts +28 -0
  157. package/dist/modules/pipeline/Pipelines/PenViewPipeline.d.ts +6 -0
  158. package/dist/modules/pipeline/Pipelines/Pipeline.d.ts +43 -0
  159. package/dist/modules/pipeline/Pipelines/ProgressivePipeline.d.ts +24 -0
  160. package/dist/modules/pipeline/Pipelines/ShadedViewPipeline.d.ts +7 -0
  161. package/dist/modules/pipeline/Pipelines/SolidViewPipeline.d.ts +6 -0
  162. package/dist/modules/pipeline/Pipelines/TAAPipeline.d.ts +7 -0
  163. package/dist/modules/queries/IntersectionQuerySolver.d.ts +11 -0
  164. package/dist/modules/queries/PointQuerySolver.d.ts +9 -0
  165. package/dist/modules/queries/Queries.d.ts +9 -0
  166. package/dist/modules/queries/Query.d.ts +51 -0
  167. package/dist/modules/three/stats.d.ts +4 -0
  168. package/dist/modules/tree/NodeMap.d.ts +20 -0
  169. package/dist/modules/tree/NodeRenderView.d.ts +51 -0
  170. package/dist/modules/tree/RenderTree.d.ts +36 -0
  171. package/dist/modules/tree/WorldTree.d.ts +52 -0
  172. package/dist/modules/utils/AngleDamper.d.ts +18 -0
  173. package/dist/modules/utils/Damper.d.ts +17 -0
  174. package/dist/modules/utils/Logger.d.ts +2 -0
  175. package/dist/type-augmentations/three-extensions.d.ts +1 -0
  176. package/package.json +99 -0
  177. package/readme.md +30 -0
@@ -0,0 +1,52 @@
1
+ import TreeModel, { type Model } from 'tree-model';
2
+ import { NodeRenderView } from './NodeRenderView.js';
3
+ import { RenderTree } from './RenderTree.js';
4
+ export type TreeNode = TreeModel.Node<NodeData>;
5
+ export type SearchPredicate = (node: TreeNode) => boolean;
6
+ export interface NodeData {
7
+ id: string;
8
+ raw: {
9
+ [prop: string]: any;
10
+ };
11
+ children: TreeNode[];
12
+ atomic: boolean;
13
+ nestedNodes?: TreeNode[];
14
+ subtreeId?: number;
15
+ renderView?: NodeRenderView | null;
16
+ instanced?: boolean;
17
+ color?: number;
18
+ }
19
+ export declare class WorldTree {
20
+ private renderTreeInstances;
21
+ private nodeMaps;
22
+ private readonly supressWarnings;
23
+ static readonly ROOT_ID = "ROOT";
24
+ private subtreeId;
25
+ constructor();
26
+ /** The root render tree will always be non-null because it will always contain the root */
27
+ getRenderTree(): RenderTree;
28
+ getRenderTree(subtreeId: string): RenderTree | null;
29
+ private tree;
30
+ _root: TreeNode;
31
+ get root(): TreeNode;
32
+ private get nextSubtreeId();
33
+ get nodeCount(): number;
34
+ isRoot(node: TreeNode): boolean;
35
+ isSubtreeRoot(node: TreeNode): boolean;
36
+ parse(model: Model<NodeData>): TreeNode;
37
+ addSubtree(node: TreeNode): void;
38
+ addNode(node: TreeNode, parent: TreeNode | null): void;
39
+ removeNode(node: TreeNode, removeChildren: boolean): void;
40
+ findAll(predicate: SearchPredicate, node?: TreeNode): Array<TreeNode>;
41
+ findId(id: string, subtreeId?: number): TreeNode[] | null;
42
+ /** TODO: Would rather not have this */
43
+ findSubtree(id: string): TreeNode | null;
44
+ getAncestors(node: TreeNode): Array<TreeNode>;
45
+ getInstances(subtreeId: string): {
46
+ [id: string]: Record<string, TreeNode>;
47
+ };
48
+ /** TO DO: We might want to add boolean as return type here too */
49
+ walk(predicate: SearchPredicate, node?: TreeNode): void;
50
+ walkAsync(predicate: SearchPredicate, node?: TreeNode): Promise<boolean>;
51
+ purge(subtreeId?: string): void;
52
+ }
@@ -0,0 +1,18 @@
1
+ export declare const SETTLING_TIME: number;
2
+ export declare const DECAY_MILLISECONDS = 50;
3
+ /**
4
+ * The Damper class is a generic second-order critically damped system that does
5
+ * one linear step of the desired length of time. The only parameter is
6
+ * DECAY_MILLISECONDS. This common parameter makes all states converge at the
7
+ * same rate regardless of scale. xNormalization is a number to provide the
8
+ * rough scale of x, such that NIL_SPEED clamping also happens at roughly the
9
+ * same convergence for all states.
10
+ */
11
+ export declare class AngleDamper {
12
+ private velocity;
13
+ private naturalFrequency;
14
+ constructor(decayMilliseconds?: number);
15
+ setDecayTime(decayMilliseconds: number): void;
16
+ protected wrapAngle(angle: number): number;
17
+ update(x: number, xGoal: number, timeStepMilliseconds: number, xNormalization: number): number;
18
+ }
@@ -0,0 +1,17 @@
1
+ export declare const SETTLING_TIME: number;
2
+ export declare const DECAY_MILLISECONDS = 50;
3
+ /**
4
+ * The Damper class is a generic second-order critically damped system that does
5
+ * one linear step of the desired length of time. The only parameter is
6
+ * DECAY_MILLISECONDS. This common parameter makes all states converge at the
7
+ * same rate regardless of scale. xNormalization is a number to provide the
8
+ * rough scale of x, such that NIL_SPEED clamping also happens at roughly the
9
+ * same convergence for all states.
10
+ */
11
+ export declare class Damper {
12
+ private velocity;
13
+ private naturalFrequency;
14
+ constructor(decayMilliseconds?: number);
15
+ setDecayTime(decayMilliseconds: number): void;
16
+ update(x: number, xGoal: number, timeStepMilliseconds: number, xNormalization: number): number;
17
+ }
@@ -0,0 +1,2 @@
1
+ declare const Logger: JsLogger.GlobalLogger;
2
+ export default Logger;
@@ -0,0 +1 @@
1
+ export {};
package/package.json ADDED
@@ -0,0 +1,99 @@
1
+ {
2
+ "name": "@kingsy/viewer",
3
+ "version": "2.25.7",
4
+ "description": "A 3d viewer for KingSy, based on threejs.",
5
+ "homepage": "https://kingsy.systems",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/kingsysystems/kingsy-server.git",
9
+ "directory": "packages/viewer"
10
+ },
11
+ "main": "dist/index.js",
12
+ "module": "dist/index.js",
13
+ "type": "module",
14
+ "sourceType": "module",
15
+ "exports": {
16
+ ".": {
17
+ "import": {
18
+ "types": "./dist/index.d.ts",
19
+ "default": "./dist/index.js"
20
+ }
21
+ },
22
+ "./dist/assets/*": "./dist/assets/*",
23
+ "./assets/*": "./dist/assets/*"
24
+ },
25
+ "types": "./dist/index.d.ts",
26
+ "files": [
27
+ "dist"
28
+ ],
29
+ "engines": {
30
+ "node": ">=18.0.0"
31
+ },
32
+ "scripts": {
33
+ "build": "NODE_ENV=production rollup --config",
34
+ "build:dev": "rollup --config",
35
+ "dev": "rollup --config --watch",
36
+ "prepack": "yarn build",
37
+ "lint:js": "eslint .",
38
+ "lint:tsc": "tsc --noEmit",
39
+ "lint": "yarn lint:js && yarn lint:tsc",
40
+ "lint:ci": "yarn lint:tsc",
41
+ "test": "vitest",
42
+ "test:ui": "vitest --ui",
43
+ "test:run": "vitest run"
44
+ },
45
+ "author": "AEC Systems",
46
+ "license": "Apache-2.0",
47
+ "keywords": [
48
+ "kingsy",
49
+ "aec",
50
+ "3d",
51
+ "3d viewer",
52
+ "threejs"
53
+ ],
54
+ "dependencies": {
55
+ "@kingsy/objectloader2": "^2.25.7",
56
+ "@kingsy/shared": "^2.25.7",
57
+ "@types/flat": "^5.0.2",
58
+ "earcut": "3.0.1",
59
+ "flat": "^5.0.2",
60
+ "js-logger": "1.6.1",
61
+ "lodash-es": "^4.17.21",
62
+ "polylabel": "2.0.1",
63
+ "string-to-color": "^2.2.2",
64
+ "three": "^0.140.0",
65
+ "three-mesh-bvh": "0.5.17",
66
+ "tree-model": "1.0.7",
67
+ "troika-three-text": "0.47.2",
68
+ "type-fest": "^4.15.0"
69
+ },
70
+ "devDependencies": {
71
+ "@babel/core": "^7.18.2",
72
+ "@babel/eslint-parser": "^7.18.2",
73
+ "@babel/preset-env": "^7.20.2",
74
+ "@rollup/plugin-babel": "^5.3.1",
75
+ "@rollup/plugin-image": "^3.0.2",
76
+ "@rollup/plugin-typescript": "^11.1.6",
77
+ "@types/babel__core": "^7.20.1",
78
+ "@types/earcut": "3.0.0",
79
+ "@types/lodash-es": "4.17.12",
80
+ "@types/polylabel": "1.1.3",
81
+ "@types/three": "^0.140.0",
82
+ "@typescript-eslint/eslint-plugin": "^7.12.0",
83
+ "@typescript-eslint/parser": "^7.12.0",
84
+ "@vitest/ui": "^1.4.0",
85
+ "core-js": "^3.21.1",
86
+ "eslint": "^9.4.0",
87
+ "eslint-config-prettier": "^9.1.0",
88
+ "jsdom": "^24.0.0",
89
+ "prettier": "^2.5.1",
90
+ "regenerator-runtime": "^0.13.7",
91
+ "rollup": "^2.70.1",
92
+ "rollup-plugin-delete": "^2.0.0",
93
+ "rollup-plugin-terser": "^7.0.2",
94
+ "rollup-plugin-typescript2": "^0.36.0",
95
+ "typescript": "^4.5.4",
96
+ "vitest": "^1.4.0"
97
+ },
98
+ "gitHead": "5627e490f9a3ecadf19cc4686ad15f344d9ad2d3"
99
+ }
package/readme.md ADDED
@@ -0,0 +1,30 @@
1
+ # The KingSy Viewer
2
+
3
+ [![Twitter Follow](https://img.shields.io/twitter/follow/KingSySystems?style=social)](https://twitter.com/KingSySystems) [![Community forum users](https://img.shields.io/discourse/users?server=https%3A%2F%2Fkingsy.community&style=flat-square&logo=discourse&logoColor=white)](https://kingsy.community) [![website](https://img.shields.io/badge/https://-kingsy.systems-royalblue?style=flat-square)](https://kingsy.systems) [![docs](https://img.shields.io/badge/docs-kingsy.guide-orange?style=flat-square&logo=read-the-docs&logoColor=white)](https://kingsy.guide/dev/) [![npm version](https://badge.fury.io/js/%40kingsy%2Fviewer.svg)](https://badge.fury.io/js/%40kingsy%2Fviewer)
4
+
5
+ ## Documentation
6
+
7
+ Complete documentation [here](https://kingsy.guide/viewer/)
8
+ Migration guide [here](https://kingsy.notion.site/Migration-Guide-b2b4118d34b544e9b9a848714348e7c7)
9
+
10
+ ## Examples
11
+
12
+ You can find readily available examples in the documentation [here](https://kingsy.guide/viewer/basic-example.html)
13
+
14
+ ## Development
15
+
16
+ - run `yarn` in the repo root to install and link all required dependencies.
17
+ - run `yarn dev` in the viewer package (here) to start a dev build with automatic code refresing of the viewer code.
18
+ - run `yarn dev` in the viewer-sandbox package to start the viewer sandbox.
19
+
20
+ ## Feedback
21
+
22
+ We would love to hear your feedback in [this forum thread](https://kingsy.community/t/seeking-feedback-on-the-new-viewer-api-structure/7231).
23
+
24
+ ## Community
25
+
26
+ If in trouble, the KingSy Community hangs out on [the forum](https://kingsy.community). Do join and introduce yourself! We're happy to help.
27
+
28
+ ## License
29
+
30
+ Unless otherwise described, the code in this repository is licensed under the Apache-2.0 License. If you have any questions, don't hesitate to get in touch with us via [email](mailto:hello@kingsy.systems).