Skip to content

Instantly share code, notes, and snippets.

View donrestarone's full-sized avatar
🤖
Building products

Don Restarone donrestarone

🤖
Building products
View GitHub Profile
@donrestarone
donrestarone / todolist.js
Created December 23, 2020 23:50
a function for dynamically generating dummy data for react-grid-layout
let faker = require('faker');
export const todoList = () => {
let columnCount = 12
let maxBlocksPerColumn = 12
let layout = []
let i = 0
const cardWidth = 3
const cardHeight = 8
const inlineYaxis = 1
@donrestarone
donrestarone / app.js
Created December 23, 2020 23:47
react component demo'ing react-grid-layout and pan pinch zoom
import React, {useEffect} from 'react'
import './index.css';
import { TransformWrapper, TransformComponent } from "react-zoom-pan-pinch";
import {todoList} from './constants/todo'
import {useState} from 'react'
import 'react-grid-layout/css/styles.css'
import 'react-resizable/css/styles.css'
import GridLayout from 'react-grid-layout';
function App(props) {
@donrestarone
donrestarone / index.js
Created December 23, 2020 23:40
React entrypoint for Phoenix
import { define } from 'remount'
import App from './App'
define({ 'x-application': App })
@donrestarone
donrestarone / webpack.config.js
Created December 23, 2020 23:31
webpack configuration for React (in a Phoenix application)
const path = require('path');
const glob = require('glob');
const HardSourceWebpackPlugin = require('hard-source-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const TerserPlugin = require('terser-webpack-plugin');
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');
const CopyWebpackPlugin = require('copy-webpack-plugin');
module.exports = (env, options) => {
const devMode = options.mode !== 'production';
@donrestarone
donrestarone / babel.config.js
Created December 23, 2020 23:29
babel configuration for React (used in a Phoenix application)
module.exports = function (api) {
api.cache(true);
const presets = [
'@babel/preset-env',
'@babel/preset-react',
]
const plugins = [
]
@donrestarone
donrestarone / home_view.ex
Created December 23, 2020 23:21
view function to avoid missing view error in phoenix
defmodule WorkshopWeb.HomeView do
use WorkshopWeb, :view
end
@donrestarone
donrestarone / home_controller.ex
Created December 23, 2020 23:16
phoenix controller file
defmodule WorkshopWeb.HomeController do
use WorkshopWeb, :controller
def index(conn, _params) do
render(
conn,
"index.html",
props: Jason.encode!(%{foo: "bar"})
)
end
@donrestarone
donrestarone / router.ex
Created December 23, 2020 23:15
phoenix route file
defmodule WorkshopWeb.Router do
use WorkshopWeb, :router
pipeline :browser do
plug :accepts, ["html"]
plug :fetch_session
plug :fetch_live_flash
plug :put_root_layout, {WorkshopWeb.LayoutView, :root}
plug :protect_from_forgery
plug :put_secure_browser_headers
@donrestarone
donrestarone / docker.md
Last active December 15, 2020 02:19
docker cheatsheet

docker cheatsheet

viewing available/running containers

docker ps shows running containers, amd docker container ls lists available containers

docker ps
docker container ls

viewing available images

@donrestarone
donrestarone / sshconfig.sh
Created November 21, 2020 14:48
setting up SSH via .ssh/config
# make sure to move your .pem file for SSH auth to ~/.ssh & chmod 0400 the file
chmod 0400 your-server-identity.pem
# open ~/.ssh/config with your favorite text editer and drop in the following plumbing (replace the IP/host of your server and username and point to the correct pem file)
Host my-server
HostName 54.157.228.255
User your-user-name
IdentityFile ~/.ssh/your-server-identity.pem
IdentitiesOnly yes