Skip to content

Instantly share code, notes, and snippets.

View heyaphra's full-sized avatar

Aphra Bloomfield heyaphra

View GitHub Profile
@heyaphra
heyaphra / Consumer.js
Created October 6, 2020 22:40
Addressing React and WebSocket Rendering Bottlenecks - Consumer HOC
// context/Consumer.js
import React, { Children, cloneElement } from 'react';
import { Context } from './';
class Consumer extends React.Component {
render() {
const { children } = this.props;
return (
<Context.Consumer>
@heyaphra
heyaphra / connect.js
Created October 6, 2020 22:35
Addressing React and WebSocket Rendering Bottlenecks - Context HOC
// context/connect.js
import React from 'react';
import { Consumer } from './';
const connect = (Comp) => (
(props) => (
<Consumer>
<Comp {...props} />
</Consumer>
@heyaphra
heyaphra / Home.js
Last active October 6, 2020 22:28
Addressing React and WebSocket Rendering Bottlenecks - Home view
// views/Home.js
import React, { Component } from "react";
import { MyComponent } from "../../components"
import { connect } from "../../context";
const Home = connect(
class extends Component {
render() {
const {
@heyaphra
heyaphra / App.js
Last active October 6, 2020 22:27
Addressing React and WebSocket Rendering Bottlenecks - Top-level component
// App.js
import React from "react";
import { Provider } from "./context";
import { Router } from "./router";
export default () => (
<Provider>
<Router />
</Provider>
@heyaphra
heyaphra / App.js
Last active October 6, 2020 22:17
Addressing React and WebSocket Rendering Bottlenecks - Front End Examples
import React from "react";
import { Provider } from "./context";
import { Router } from "./router";
export default () => (
<Provider>
<Router />
</Provider>
);

Keybase proof

I hereby claim:

  • I am spidercatnat on github.
  • I am spidercatnat (https://keybase.io/spidercatnat) on keybase.
  • I have a public key ASD5R9F7YYqCrmyiEfLKleTmOpe2QcZIcpfXxPw3c59-ngo

To claim this, I am signing this object:

@heyaphra
heyaphra / package.json
Created July 30, 2019 20:22 — forked from jthomas/package.json
Using TensorFlow.js with MobileNet models for image classification on Node.js
{
"name": "tf-js",
"version": "1.0.0",
"main": "script.js",
"license": "MIT",
"dependencies": {
"@tensorflow-models/mobilenet": "^0.2.2",
"@tensorflow/tfjs": "^0.12.3",
"@tensorflow/tfjs-node": "^0.1.9",
"jpeg-js": "^0.3.4"
import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
import { Menu, Dropdown, Icon, Button } from 'antd';
import { Bypasser, onePoleFilter, noiseGenerator, bitCrusher } from './Demos'
class App extends Component {
constructor() {
super();
this.state = {
/* loadModule: given a module's name, adds it to the audioWorklet */
async loadModule() {
const { state, actx } = this;
try {
await actx.audioWorklet.addModule(`worklet/${state.processor.name}.js`);
this.setState({moduleLoaded: true, status: null})
console.log(`loaded module ${state.processor.name}`);
} catch(e) {
this.setState({moduleLoaded: false})
console.log(`Failed to load module ${state.processor.name}`);
/**
* Copyright 2018 Google Inc. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,