Skip to content

Instantly share code, notes, and snippets.

View dennyabrain's full-sized avatar
🎯
Focusing

Denny George dennyabrain

🎯
Focusing
View GitHub Profile
@dennyabrain
dennyabrain / app.js
Created February 23, 2025 06:35
Add React Components to a Phoenix App without adding additional dependencies
import { CounterHook } from "./counter";
let Hooks = {
CounterHook,
};
let csrfToken = document
.querySelector("meta[name='csrf-token']")
.getAttribute("content");
let liveSocket = new LiveSocket("/live", Socket, {
@dennyabrain
dennyabrain / application.ex
Created April 30, 2024 04:48
Elixir Convention for Error Handling with decent User Experience
defmodule Application do
def get_queue_url() do
url = Application.get_env(:dau, RabbitMQ) |> Keyword.get(:urls)
case url do
url -> {:ok, url}
nil -> {:error, "Queue URL is not set"}
end
rescue
_ -> {:error, "Unexpected Error : Fetching Queue URL"}
end
@dennyabrain
dennyabrain / hide-spoiler.js
Created September 27, 2022 10:58
Remixing your online experience
document
.querySelectorAll('[data-testid="tweetText"]')
.forEach((i)=>{
console.log(i)
if(i.innerText.indexOf("HouseOfTheDragon")!=-1){
i.parentElement.parentElement.parentElement.remove()
}
})
@dennyabrain
dennyabrain / config-map.yml
Created October 25, 2021 04:38
Metabase on Kubernetes
kind: ConfigMap
apiVersion: v1
metadata:
name: infrastructure-data-metabase
labels:
app.kubernetes.io/name: infrastructure-data-metabase
app.kubernetes.io/component: web
app.kubernetes.io/part-of: infrastructure
app.kubernetes.io/managed-by: tattle
data:
@dennyabrain
dennyabrain / basic.js
Created June 30, 2021 04:30
Interactive Vizualizations
import React, { useState } from "react";
import { useSpring, animated } from "react-spring";
const Transition = () => {
const [dataNum, setDataNum] = useState(true);
const { val } = useSpring({
val: dataNum ? 1 : 0,
});
return (
@dennyabrain
dennyabrain / boilerplate.js
Last active May 6, 2023 19:08
Strapi File Upload
import React, { useState } from "react"
import { Box, Grommet, Button, TextInput } from "grommet"
import TattleTheme from "../atomic/theme"
import Dropzone from "react-dropzone"
import axios from "axios"
const Queries = () => {
const [question, setQuestion] = useState("")
const [files, setFiles] = useState([])
@dennyabrain
dennyabrain / example-store-snippet.json
Last active November 11, 2019 21:08
Example Redux Store
{
"sectionSearchDuplicate": {
"status": "data",
"type": "image",
"mediaUrl": "https://tattle-media.s3.amazonaws.com/post_image_1.jpeg"
},
"sectionSearchFactCheckedStories": {
"status": "data",
"urls": [
{
const SectionSearchWhatsappPosts = () => {
const dispatch = useDispatch();
const sectionSearchDuplicate = useSelector( state => state.sectionSearchDuplicate)
const factCheckedStoriesData = useSelector( state => state.sectionSearchFactCheckedStories)
const onSubmit = (({searchQuery) => {
dispatch(findDuplicateImages(searchQuery));
dispatch(findSimilarFactCheckedStories(searchQuery))
@dennyabrain
dennyabrain / structure-snippet.jsx
Last active November 11, 2019 19:49
Example of App Shell and Sections implementation for Tattle Shell
<AppShell
layoutType={'portal'}
primaryNavigationSection = {
<PrimaryNavigationSection>
...
</PrimaryNavigationSection>
}
mainContentSection = {
<MainContentSection route={mainContentSection.route}>
/**
* Created by nivsherf on 07/07/2016.
*/
'use strict';
var watsonController = require('../controllers/watson-controller'),
sns = require('../controllers/sns-controller'),
trainingController = require('../controllers/training-controller'),
conversation = require('../models/conversation'),
question = require('../models/question'),