Skip to content

Instantly share code, notes, and snippets.

View josefrichter's full-sized avatar

Josef Richter josefrichter

View GitHub Profile
defmodule Counter do
use Agent
def start_link(initial_value) do
Agent.start_link(fn -> initial_value end, name: __MODULE__)
end
def value do
Agent.get(__MODULE__, & &1)
end
defmodule MovieData do
def start_link do
Agent.start_link(fn -> %{} end)
end
def add(pid, movie) do
Agent.update(pid, fn(state) ->
Map.put(state, movie, 1)
end)
def create_comment(attrs \\ %{}) do
%Comment{}
|> Comment.changeset(attrs)
# TODO how to I get "post" here, to do the following step?
# |> Ecto.Changeset.put_assoc(:post, post)
|> Repo.insert()
end
@josefrichter
josefrichter / Spacer.tsx
Created April 10, 2020 07:33
replicating SwitftUI Spacer() in React
// replicating SwitftUI Spacer() in React
import * as React from "react"
export function Spacer() {
return <div style={{ flex: "1 1 0" }}>&nbsp;</div>
}
//
// Modal sheets on top of each other in SwiftUI
// Testing the possibilities
//
// ContentView.swift
// navTest1
//
// Created by JOSEF RICHTER on 04/03/2020.
// Copyright © 2020 JOSEF RICHTER. Licence: do whatever you want, aka WTFPL http://www.wtfpl.net
//
@josefrichter
josefrichter / ComponentBoilerplate.tsx
Last active October 15, 2019 16:32 — forked from steveruizok/Example.tsx
An example Framer X code component.
import * as React from "react"
import {
Frame,
FrameProps,
addPropertyControls,
ControlType,
} from "framer"
type Props = Partial<FrameProps> &
import * as React from "react"
import { Frame } from "framer"
// change your presets here
const doubleTapMiliseconds = 300
const longTapMiliseconds = 400
export function TapRecognizer() {
const [tapTimestamp, setTapTimestamp] = React.useState(Date.now())
return <Frame style={style} onTap={this.onTap}>
<div style={{opacity:checkMarkOpacity, color: 'white'}}>
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 -1 24 24"><path fill="none" d="M0 0h24v24H0z"/><path fill="white" stroke="none" d="M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"/></svg>
</div>
</Frame>;
@josefrichter
josefrichter / OrganismCard.tsx
Created September 22, 2018 16:29
slot pattern for framer x
import * as React from "react";
import { Frame, PropertyControls, ControlType } from "framer";
import { MoleculeLeftContentText } from "./MoleculeLeftContentText"
import { MoleculeLeftContentTextTwoLines } from "./MoleculeLeftContentTextTwoLines";
const style: React.CSSProperties = {
height: 78,
marginLeft: 12,
marginRight: 12,
paddingLeft: 18,
import UIKit
import WebKit
class MagazineViewController: UIViewController, UIWebViewDelegate {
@IBOutlet weak var webview: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()