Skip to content

Instantly share code, notes, and snippets.

View ndugger's full-sized avatar

Nick Dugger ndugger

  • Minneapolis, MN
View GitHub Profile
export default class Texture {
private size: number;
private texture: WebGLTexture;
private unit: number;
public constructor(size: number, texture: WebGLTexture, unit: number) {
this.size = size;
this.texture = texture;
this.unit = unit;
import Canvas from '../library/Canvas';
import Program from '../library/Program';
import Shader from '../library/Shader';
const canvas = new Canvas(640, 480);
const image = new Image();
const program = new Program(canvas, [
new Shader.Vertex(`
in vec2 i_Position;
in vec2 i_Sample;
import * as Quark from 'hammervale/libraries/quark';
import Button from 'hammervale/client/ui/widgets/Button';
import Card from 'hammervale/client/ui/widgets/Card';
import FlexLayout from 'hammervale/client/ui/widgets/FlexLayout';
import Form from 'hammervale/client/ui/widgets/Form';
import GridLayout from 'hammervale/client/ui/widgets/GridLayout';
import Icon from 'hammervale/client/ui/widgets/Icon';
import Label from 'hammervale/client/ui/widgets/Label';
import Spacer from 'hammervale/client/ui/widgets/Spacer';
import * as Quark from 'quark';
import * as palette from 'hammer-vale/common/color/palette';
type RibbonTail = 'start' | 'end';
type RibbonVariant = 'vertical' | 'horizontal' | 'diagonal';
export default class Ribbon extends Quark.Widget {
public size: number = 80;
import * as Quark from 'quark';
interface TestState {
clicked: boolean;
}
const state = new Quark.Store<TestState>({
clicked: false
});
@ndugger
ndugger / quark.ts
Last active March 28, 2019 19:29
Widget Framework | Custom Elements, Shadow DOM, Virtual DOM | TypeScript
import * as Quark from 'quark';
class TestButton extends Quark.Widget {
public design(): string {
return `
:host {
display: contents;
}
mod wjet;
use wjet::core::Event;
use wjet::core::Tree;
use wjet::core::Widget;
use wjet::shape::Rectangle;
use wjet::shape::Typography;
pub struct Button {
width: u32,
@ndugger
ndugger / wml.jsx
Last active February 24, 2019 03:45
wml - widget markup language (not jsx)
<ui::window maximize(true) title(&app_title + ": New Blog Post")>
<ui::toolbar on_action(&handle_toolbar_action)>
<ui::icon context("toolbar") variant("edit")/>
<ui::toolbar::separator grow(true) invisible(true)/>
<ui::button context("toolbar") emit("cancel")>
"Cancel"
</ui::button>
</ui::toolbar>
<ui::form on_error(&handle_form_error) on_submit(&handle_form_submit) on_success(&handle_form_success)>
<ui::layout::flex direction("vertical") grow(true)>
@ndugger
ndugger / example.ds
Last active February 12, 2019 05:16
data_script creative thought exercise
struct dependencies[
string forte[ master ]
string fusion[ master ]
]
list includes[
string[ . ]
]
struct package[