All Projects → io-gui → iogui

io-gui / iogui

Licence: MIT license
Experimental JavaScript Framework

Programming Languages

typescript
32286 projects
HTML
75241 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to iogui

element
Fast and simple custom elements.
Stars: ✭ 65 (+51.16%)
Mutual labels:  threejs, custom-elements
Three Elements
Web Components-powered custom HTML elements for building Three.js-powered games and interactive experiences. 🎉
Stars: ✭ 331 (+669.77%)
Mutual labels:  threejs, custom-elements
Lume
Create CSS3D/WebGL applications declaratively with HTML. Give regular DOM elements shadow and lighting.
Stars: ✭ 445 (+934.88%)
Mutual labels:  threejs, custom-elements
svelte-webcomponent-boilerplate
🏗 Create your HTML5 Web Component with Svelte. Made your web components with this user-friendly boilerplate
Stars: ✭ 58 (+34.88%)
Mutual labels:  custom-elements
generative-art
🌈🎨 Generative Art is the idea realized as genetic code of artificial events, as construction of dynamic complex systems able to generate endless variations. This is also a nuxt-module (@luxdamore/nuxt-canvas-sketch) - [three.js, tensorflow.js and gsap are not included].
Stars: ✭ 41 (-4.65%)
Mutual labels:  threejs
smart-webcomponents-community
Material & Bootstrap Web Components built with Smart
Stars: ✭ 30 (-30.23%)
Mutual labels:  custom-elements
paper-chip
A chip web component made with Polymer 2 following Material Design guidelines
Stars: ✭ 30 (-30.23%)
Mutual labels:  custom-elements
three-platformize
一个让 THREE 平台化的项目,目前已适配微信,淘宝,头条小程序,微信小游戏
Stars: ✭ 418 (+872.09%)
Mutual labels:  threejs
material-webcomponents
Material Design implemented in Web Components (Custom Elements v1)
Stars: ✭ 110 (+155.81%)
Mutual labels:  custom-elements
source-engine-model-loader
Three.js loader for parsing Valve's Source Engine models
Stars: ✭ 54 (+25.58%)
Mutual labels:  threejs
Three-Kinectron
A Three.js plugin for rendering Kinectron feeds
Stars: ✭ 28 (-34.88%)
Mutual labels:  threejs
cgajs
A javascript parser, processor and visualiser for the ESRI CGA Grammar language
Stars: ✭ 20 (-53.49%)
Mutual labels:  threejs
Mixed-Reality-JS
A simple framework for building Hololens applications with Javascript and ThreeJS. Based on HoloJS.
Stars: ✭ 54 (+25.58%)
Mutual labels:  threejs
CalDOM
An agnostic, reactive & minimalist (3kb) JavaScript UI library with direct access to native DOM.
Stars: ✭ 176 (+309.3%)
Mutual labels:  custom-elements
threelet
Portable 3D/WebXR component based on three.js
Stars: ✭ 38 (-11.63%)
Mutual labels:  threejs
humke-4d-geometry
A web-based 4D Geometry viewer
Stars: ✭ 51 (+18.6%)
Mutual labels:  threejs
Three-LargeScreen
🎖 模仿图扑的3D风机可视化大屏
Stars: ✭ 117 (+172.09%)
Mutual labels:  threejs
chat-ui
💬 rich message handling chat interface for bot projects
Stars: ✭ 19 (-55.81%)
Mutual labels:  custom-elements
web-controls-library
A library of reusable custom elements for GeneXus web applications
Stars: ✭ 14 (-67.44%)
Mutual labels:  custom-elements
ng-three-examples
three.js examples in Angular 2
Stars: ✭ 24 (-44.19%)
Mutual labels:  threejs

Io-Gui: Experimental JavaScript Framework

NPM Package DeepScan License

⚠️ WARNING! Io-Gui is an experiment currently under development. This code is not production ready!

Io-Gui is an experimental UI framework aimed at simplicity and performance. It lets you write fast and reactive custom elements that respond to state changes, data binding events and object mutations. It can support single page applications with routing, navigation and code splitting.

The goal of this project is to provide a strong foundation for complex applications and tools such as 3D editors and demo tools for threejs.

To learn about Io-Gui, read the quick start and the deep dive guide.

You can also check out the collection of built-in elements.

Stay in touch on github and mastodon.

Design system

Io-Gui includes a design system built with a simple and effective CSS framework. It's built-in element library includes editors for basic data types and user input, various types of sliders, color editors, configurable object editors, menu systems, selectors and layout elements.

Reactive WebGL Elements

One of the unique features of Io-Gui is its ability to render custom elements using WebGL shaders. Elements that extend the IoGl element have the ability to render their contents using GLSL shading language. Element properties and CSS theme variables are reactively mapped to shader uniforms.

Development

Io-Gui has no runtime dependencies and only a few development dependencies. Aside from the typescript compiler, Io-Gui relies on very little tooling for development, linting and testing. You should be able to just type tsc and get started. However, for the sake of convenience, it uses nodejs and yarn to run development scripts.

To download and develop Io-Gui locally:

git clone https://github.com/io-gui/io.git && cd io
yarn && yarn dev

This will install dev dependencies and start the typescript watch script. You will also need to run a static file server of your choice.

yarn build

To learn more Io-Gui development, please read contributing guide and code of conduct, browse and submit issues.

Documentation

The Io-Gui documentation is hosted on io-gui.dev via github pages from the main branch of this github repository. The UI of the website is created using Io-Gui and the source code is contained in index.html. The website content is loaded from .md files in the docs/ directory and .js files in the demos/ directory. The website itself is the most up-to-date reference on how to build a documentation website using Io-Gui. It also contains examples on how to use different nodes and elements.

The files in docs/tsdoc are a work in progress. The files are automatically generated using typedoc and typedoc-plugin-markdown plugin.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].