MCPcopy Index your code
hub / github.com/Plumie/Norska

github.com/Plumie/Norska @0.4.5

Chat with this repo
repository ↗ · DeepWiki ↗ · release 0.4.5 ↗ · + Follow
43 symbols 158 edges 34 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Norska ⛰️

Three.js plugin for Alpine

Check out the full documentation here: https://docs.plume.moe/norska

Live Demo: https://norska.plume.moe

Installation

How to install Norska with AlpineJS

Run the following command to install Norska and its dependencies.

npm install @norska/core alpinejs three

Import Norska and initialize it as an Alpine plugin.

Please note that Norska must be registered as a plugin before Alpine is initialized

import norska from '@norska/core';

// Initialize Norksa
const Norska = norska({
  /* options... */
});

// Register Norska as an Alpine plugin
Alpine.plugin(Norska);
window.Alpine = Alpine;
Alpine.start();

Quick Start

How to use Norska

Initializing a canvas






To create a ThreeJS scene in our document, we need to initialize a Canvas, for this it is possible to use x-3.canvas which will create a basic scene, a camera, and a renderer with each of the default parameters that can be adjusted.

By default, the canvas element size is determined by the directive's parent's size.

Populating our scene

There are many ways to fill your scene, but we'll keep it simple for now.

Let's start with a cube.

**The hierarchy of the scene is the same as that of the HTML blocks in the canvas. A good way to do this is to use `

for elements with children, and void elements like

` for the rest.**

We declare a mesh with x-3.mesh, then we can attach a geometry and a material with the corresponding directives.

























Extension points exported contracts — how you extend this code

Window (Interface)
(no doc)
src/core/types/global.d.ts

Core symbols most depended-on inside this repo

getInstance
called by 7
src/core/utils/instance.ts
isObject3D
called by 6
src/core/utils/guards.ts
sendCustomEvent
called by 5
src/core/directives/canvas/events.ts
isObject
called by 5
src/core/utils/guards.ts
getParentInstance
called by 5
src/core/utils/instance.ts
getIntersects
called by 4
src/core/directives/canvas/events.ts
getIntersectedObjectEl
called by 4
src/core/directives/canvas/events.ts
update
called by 3
src/core/directives/property.ts

Shape

Function 42
Interface 1

Languages

TypeScript100%

Modules by API surface

src/core/directives/canvas/index.ts9 symbols
src/core/directives/canvas/events.ts7 symbols
src/core/utils/instance.ts6 symbols
src/core/directives/attach.ts4 symbols
src/core/utils/guards.ts3 symbols
src/core/directives/property.ts3 symbols
src/core/utils/property.ts2 symbols
src/core/main.ts2 symbols
src/core/directives/instance.ts2 symbols
src/core/types/global.d.ts1 symbols
src/core/magics/irefs.ts1 symbols
src/core/directives/three.ts1 symbols

For agents

$ claude mcp add Norska \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page