Skip to content

Instantly share code, notes, and snippets.

View xndyz's full-sized avatar

𖤬𝔫𝔡𝔶 xndyz

View GitHub Profile

Community Game Designer @ Hack Club

Thank you to everyone who applied for this position. In total, 263 people submitted applications, writing more than 100,000 words in total. To every applicant: thank you. As of 2021-01-27, this posting is now closed.

At Hack Club (https://hackclub.com), a 501(c)(3) nonprofit, we're building a giant video game, but instead of being made out of bits and code, it's made out of teenagers. And instead of pushing players to get a high score, Hack Club helps teenagers learn to code, build the most meaningful friendships of their lives, and develop strong identities to become the future leaders our world needs.

Alongside the soccer players, theater kids, and band geeks, we aspire to create and foster a new type of high schooler: the teenage hacker. Our goal: to become as ubiquitous, as universal, and as culturally foundational for young people today as the Girl and Boy Scouts were 70 years ago.

Title: Community Game Designer

@lfades
lfades / Auth.js
Created October 11, 2018 19:06
Next.js Auth implementation: Apollo Server + Passport + Passport-jwt
/**
* server/dataSources/Auth.js
* Auth implementation, it's not really a dataSource so it doesn't need to be here
*/
const { authenticate, createJwt } = require('../lib/passport');
const { ON_HTTPS } = require('../configs');
const ONE_MINUTE = 1000 * 60;
const ONE_DAY = ONE_MINUTE * 60 * 24;
const ONE_MONTH = ONE_DAY * 30;
type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>;
export function withAppContext<
P extends { appContext?: AppContextInterface },
R = Omit<P, 'appContext'>
>(
Component: React.ComponentClass<P> | React.StatelessComponent<P>
): React.SFC<R> {
return function BoundComponent(props: R) {
return (

For example, to override the AppBar (https://material-ui-next.com/api/app-bar/) root class we can do the following:

First method (override Material UI classnames):

1 - Add the property classes in the AppBar component:

    <AppBar classes={{root: 'my-root-class'}}
@andykent
andykent / slate-react.d.ts
Last active May 19, 2020 11:45
Slate TypeScript Definitions
declare module 'slate-react' {
import * as Slate from 'slate'
import * as Immutable from 'immutable'
import { ReactNode } from 'react'
type RenderMarkProps = {
mark: { type: string },
children: ReactNode
}
@folt
folt / gist:a98e9368dbe1dcbfce7198c16b862c92
Last active March 4, 2026 04:15
Balsamiq Mockups 3 crack
Name: Flash
Serial: eNrzzU/OLi0odswsqnHLSSzOqDGoca7JKCkpsNLXLy8v1ytJTczVLUotKNFLzs8FAJHYETc=
if anyone wants to thank ETH: 0x527c2aB55b744D6167dc981576318af96ed26676
Thank you!
@lelandbatey
lelandbatey / whiteboardCleaner.md
Last active March 16, 2026 18:37
Whiteboard Picture Cleaner - Shell one-liner/script to clean up and beautify photos of whiteboards!

Description

This simple script will take a picture of a whiteboard and use parts of the ImageMagick library with sane defaults to clean it up tremendously.

The script is here:

#!/bin/bash
convert "$1" -morphology Convolve DoG:15,100,0 -negate -normalize -blur 0x1 -channel RBG -level 60%,91%,0.1 "$2"

Results

@TomByrne
TomByrne / MultiExporter.jsx
Last active February 12, 2026 14:06
An Illustrator script for exporting layers and/or artboards into separate files (PNG8 / PNG24 / EPS / PDF / SVG / JPG / FXG).See http://www.tbyrne.org/export-illustrator-layers-to-svg-files
// MultiExporter.jsx
// Version 0.1
// Version 0.2 Adds PNG and EPS exports
// Version 0.3 Adds support for exporting at different resolutions
// Version 0.4 Adds support for SVG, changed EPS behaviour to minimise output filesize
// Version 0.5 Fixed cropping issues
// Version 0.6 Added inner padding mode to prevent circular bounds clipping
//
// Copyright 2013 Tom Byrne
//
@tony4d
tony4d / p4merge4git.md
Created August 24, 2012 19:00
Setup p4merge as a visual diff and merge tool for git
# Video: http://rubyhoedown2008.confreaks.com/08-chris-wanstrath-keynote.html
Hi everyone, I'm Chris Wanstrath.
When Jeremy asked me to come talk, I said yes. Hell yes. Immediately. But
then I took a few moments and thought, Wait, why? Why me? What am I supposed
to say that's interesting? Something about Ruby, perhaps. Maybe the
future of it. The future of something, at least. That sounds
keynote-y.