Skip to content

Instantly share code, notes, and snippets.

View dcaponi's full-sized avatar

Dominick Caponi dcaponi

View GitHub Profile
@dcaponi
dcaponi / mongodb_readme.md
Last active January 29, 2024 03:39
MongoDB Locally

Local MongoDB w/ Docker because Podman don't work on Apple Silicon

Steps

  • make dockerfile
services:
  mongo:
    image: mongodb/atlas
    privileged: true
    command: |
 /bin/bash -c "atlas deployments setup --type local --port 27778 --bindIpAll --username root --password root --force && tail -f /dev/null"
@dcaponi
dcaponi / PKCE_login_page.js
Last active June 1, 2023 13:37
Prototype of OIDC PKCE Flow in React
import React, { Component } from 'react';
import axios from 'axios';
import qs from "qs";
import * as base64 from 'base64-js'
import SubmitButton from '../../ui_components/buttons/submit_button';
import AppWrapper from '../../ui_components/app_wrapper/app_wrapper'
import Popup from '../../ui_components/popup/popup';
class LoginOIDCPage extends Component {
@dcaponi
dcaponi / onelogin_oidc.tf
Last active June 1, 2023 13:18
bootstraps your onelogin account with a user, role, and OIDC app
terraform {
required_providers {
onelogin = {
source = "onelogin/onelogin"
version = "0.1.6"
}
}
}
resource onelogin_oidc_apps my_app {
@dcaponi
dcaponi / hack-brew.md
Last active September 7, 2021 23:07
how to make brew formula for your go build.

Create Brew Tap - Because You're Not Cool Enough to be in the Official Brew Club

  1. create a new repository called homebrew-tap-your_app
  2. run git init and put the empty repository in Github
  3. create a new branch and run brew create --tap=USER/REPO --go https://github.com/user/repo/archive/vA.I.P.tar.gz (where A is Major, I is Minor and P is Patch version... obviously 😜) to create a new pre-gen formula in your empty project.
  4. Make sure the url in the pre-gen formula looks like https://github.com/user/repo/archive/refs/tags/vA.I.P.tar.gz
  5. If brew create doesn't already, copy the sha256 that gets stuck in your terminal output in the field for sha256
  6. push that shit and open a PR
  7. AFTER those are done, add the pr-pull label and wait for that action to run - this will add the bottles specified in the test-bot action in tests.yml (you don't have to update those SHAs on your own... dont panic)
  8. If it didn't blow up, you're donezo!
@dcaponi
dcaponi / App.Svelte
Last active August 29, 2021 21:24
basic example of protected routes in svelte
<!-- App.svelte -->
<script lang="ts">
import { Router, Link, Route } from "svelte-routing";
import ProtectedRoute from './concerns/ProtectedRoute.svelte';
import Home from "./pages/Home.svelte";
import SecretStuff from "./pages/SecretStuff.svelte";
</script>
@dcaponi
dcaponi / ProtectedRoute.Svelte
Last active August 29, 2021 17:19
implementation of route protection component
<script lang="ts">
import Client from "@onelogin/sdk";
import { Route } from 'svelte-routing';
import { accessToken } from './stores';
import Login from '../pages/Login.svelte';
export let path: string;
export let component: any;
@dcaponi
dcaponi / controller.go
Created August 11, 2021 19:21
pw_less controller
package user
import (
"encoding/json"
"fmt"
"log"
"strings"
"github.com/onelogin/onelogin-go-sdk/pkg/services/users"
@dcaponi
dcaponi / handler.go
Created August 11, 2021 19:20
pw_less http handler
package user
import (
"errors"
"io/ioutil"
"net/http"
)
type UserHandler struct {
Controller UserController
@dcaponi
dcaponi / email.go
Created August 11, 2021 19:19
pw_less email sender
package email
import (
"fmt"
"net/smtp"
)
type Emailer interface {
Send(to []string, msg string) error
}
@dcaponi
dcaponi / cache.go
Created August 11, 2021 19:19
pw_less cache.go
package cache
import (
"context"
"log"
"time"
"github.com/go-redis/redis/v8"
)