A non-exhaustive list of WebGL and WebGPU frameworks and libraries. It is mostly for learning purposes as some of the libraries listed are wip/outdated/not maintained anymore.
Name | Stars | Last Commit | Description |
---|---|---|---|
three.js | ![GitHub |
A non-exhaustive list of WebGL and WebGPU frameworks and libraries. It is mostly for learning purposes as some of the libraries listed are wip/outdated/not maintained anymore.
Name | Stars | Last Commit | Description |
---|---|---|---|
three.js | ![GitHub |
/** '/src/app/shared/equal-value-validator.ts' */ | |
/** Just a demo/draft, please ensure your implementation is sound before going live */ | |
import { FormGroup, ValidatorFn } from '@angular/forms'; | |
/** this control value must be equal to given control's value */ | |
export function equalValueValidator(targetKey: string, toMatchKey: string): ValidatorFn { | |
return (group: FormGroup): {[key: string]: any} => { | |
const target = group.controls[targetKey]; | |
const toMatch = group.controls[toMatchKey]; |
<?xml version="1.0" encoding="UTF-8"?> | |
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
<plist version="1.0"> | |
<dict> | |
<key>PayloadContent</key> | |
<array> | |
<dict> | |
<key>PayloadContent</key> | |
<dict> | |
<key>com.google.Chrome</key> |
{ | |
"presets": ["es2015"], | |
"plugins": ["transform-runtime"] | |
} |
An example that shows the difference between creating a JavaScript class and subclass in ES5 and ES6.
namespace Analogy | |
{ | |
/// <summary> | |
/// This example shows that a library that needs access to target .NET Standard 1.3 | |
/// can only access APIs available in that .NET Standard. Even though similar the APIs exist on .NET | |
/// Framework 4.5, it implements a version of .NET Standard that isn't compatible with the library. | |
/// </summary>INetCoreApp10 | |
class Example1 | |
{ | |
public void Net45Application(INetFramework45 platform) |
import {Injectable, EventEmitter} from 'angular2/core'; | |
import {Http, Headers, RequestOptions, RequestOptionsArgs, Response, RequestMethod, Request, Connection, ConnectionBackend} from 'angular2/http'; | |
import * as Rx from 'rxjs'; | |
export enum Action { QueryStart, QueryStop }; | |
@Injectable() | |
export class AuthHttp { | |
process: EventEmitter<any> = new EventEmitter<any>(); |
# See list of docker virtual machines on the local box | |
$ docker-machine ls | |
NAME ACTIVE URL STATE URL SWARM DOCKER ERRORS | |
default * virtualbox Running tcp://192.168.99.100:2376 v1.9.1 | |
# Note the host URL 192.168.99.100 - it will be used later! | |
# Build an image from current folder under given image name | |
$ docker build -t gleb/demo-app . |
# Extremely basic development setup to serve the current directory at http://localhost:9001 | |
# Start nginx in this directory with `nginx -p . -c nginx.conf` | |
# Stop nginx with `nginx -p . -s stop` | |
events {} | |
http { | |
# Serve files with correct mimetypes on OSX | |
# location may have to be adjusted depending on your OS and nginx install | |
include /usr/local/etc/nginx/mime.types; |
/** | |
* This array is needed for canceling requests when changing the state/route. | |
* @type {Array} | |
*/ | |
var currentRequests = []; | |
/** | |
* Handles route changes. | |
*/ | |
app.run(['$rootScope', function($rootScope) { |