Skip to content

Instantly share code, notes, and snippets.

View nmfisher's full-sized avatar

Nick Fisher nmfisher

View GitHub Profile
@pragma("wasm:export", "dartAdd")
double dartAdd(double a, double b) {
return a + b;
void main(List<String> args) {
> dart compile wasm main.dart
nmfisher /
Created August 2, 2023 00:54
Generate shape keys from frame poses in Blender
# this assumes that every 10th frame is the pose corresponding to the shape key, ordered according to the variable arkit
# adjust frame_increment if this isn't correct (e.g. if each pose is on consecutive frames, set frame_increment to 1)
# reorder arkit to match the order of poses in your action if needed
# select the mesh in the viewport, then run this script
import bpy
frame = -1
frame_increment = 10
// MIT licence
import 'dart:async';
import 'dart:io';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:fluent_academy_app/blocs/initializable_cubit.dart';
import 'package:fluent_academy_app/widgets/user/auth/signin/sign_in_providers.dart';
import 'package:flutter/widgets.dart';
import 'package:firebase_auth/firebase_auth.dart' as auth;
import 'package:google_sign_in/google_sign_in.dart';
nmfisher / UnityPlayerUtils.kt
Last active March 17, 2021 16:27
Modified UnityPlayerUtils to fix layering of Unity View inside Flutter
package com.xraph.plugin.flutter_unity_widget
import android.os.Build
import android.os.Handler
import android.os.Looper
import android.util.Log
import android.view.ViewGroup
import android.view.ViewGroup.LayoutParams.MATCH_PARENT
nmfisher / gist:99da9741c440cd460129
Created July 1, 2015 00:24
Custom AuthenticationHandler for CAS using Bcrypt (standard password encoding algorithm used by Grails spring security plugin)
package com.clearframe.cas;
import java.util.Map;
import javax.validation.constraints.NotNull;
import org.jasig.cas.adaptors.jdbc.AbstractJdbcUsernamePasswordAuthenticationHandler;
import org.jasig.cas.authentication.UsernamePasswordCredential;
import org.jasig.cas.authentication.HandlerResult;
import org.jasig.cas.authentication.PreventedException;
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
class NotchedContainer extends StatelessWidget {
final Widget child;
final Widget notchContent;
final double notchPadding;
final double notchOffsetRight;
final EdgeInsets contentPadding;
final Alignment notchPosition;
import 'dart:typed_data';
import 'dart:io';
class Half {
static Float32List ToFloat32(ByteData buffer) {
var f32Buffer = ByteData(buffer.lengthInBytes * 2);
for(int i = 0; i < buffer.lengthInBytes; i+=2) {
nmfisher / gist:467f7a3d441147b9c3829988b151ca0d
Created September 2, 2019 07:04
Java code to unzip Flutter assets
private static void unzipLibs(AssetManager am, String nativeLibraryDir) {
try {
File complete = Paths.get(appDir, "mono_libs_complete").toFile();
if(complete.exists() && !BuildConfig.DEBUG) {
Log.e(TAG, "Libs have already been unzipped to data directory, skipping unzip...");
nmfisher / sample.dart
Created August 1, 2019 06:26
JsonObjectLite failing to handle nested list-type JsonObjectLite
final dynamic obj = new JsonObjectLite(); = JsonObjectLite.fromJsonString("[1,2,3]");
nmfisher / gist:c901254c1612bdef8fda406658690c84
Created February 10, 2019 01:16
Casting F# function to C# Func
let L2Norm:Func<double[],double[],float> = Func<double[],double[],float>(fun (x:double[]) (y:double[]) ->
let mutable dist = 0.
for i in 0..x.Length-1 do
dist <- (x.[i] - y.[i]) * (x.[i] - y.[i]);