Skip to content

Instantly share code, notes, and snippets.

View luanlmd's full-sized avatar

Luan Almeida luanlmd

View GitHub Profile
@luanlmd
luanlmd / drizzle.ts
Created November 13, 2023 17:54
Drizzle get relation count
// final query
public async getInfluencersWithReferrals() {
return db
.select({ user: userSchema, referralsCount: sql<number>`count(${referralSchema.id})` })
.from(userSchema)
.innerJoin(referralSchema, eq(userSchema.id, referralSchema.userId))
.groupBy(userSchema.id);
}
// reverse query
@luanlmd
luanlmd / middleware.ts
Created October 26, 2023 14:05
nextjs middleware to mess with headers and cookies
import { NextRequest, NextResponse } from 'next/server';
export default function middleware(request: NextRequest) {
if (request.nextUrl.pathname.length === 11) {
const cookieKey = 'abc123';
console.log('aqui');
const requestHeaders = new Headers(request.headers);
requestHeaders.set('x-hello-from-middleware1', 'hello');

Keybase proof

I hereby claim:

  • I am luanlmd on github.
  • I am luanlmd (https://keybase.io/luanlmd) on keybase.
  • I have a public key ASDfTJ-J6JlO676jx9RLznzvD4bbpLeQn53qm1xs-TW59Qo

To claim this, I am signing this object:

ffmpeg -listen 1 -timeout 10000 -i rtmp://127.0.0.1:5000 \
-preset slower \
-c:a aac \
-c:v h264 \
-maxrate 3500k \
-bufsize 350k \
-force_key_frames "expr:gte(t,n_forced*3)" \
-hls_time 3 \
-hls_segment_filename "/tmp/720p_%03d.ts" /tmp/720p_playlist.m3u8
@luanlmd
luanlmd / clearJenkins.groovy
Last active October 8, 2021 12:36
Clear Jenkins Queue
// Go TO JENKINS_HOST/script
// Paste and run:
import hudson.model.*
def queue = Hudson.instance.queue
println "Queue contains ${queue.items.length} items"
queue.clear()
println "Queue cleared"
int tempVal;
int tempPin = 1;
int photoPin = 2;
int photoVal;
void setup()
{
pinMode(LED_BUILTIN, OUTPUT);
Serial.begin(9600);
await new Promise((resolve, reject) => {
setTimeout(() => { resolve() }, 10000);
})
const aws = require('aws-sdk');
const cloudFront = aws.CloudFront;
const privateKey = `-----BEGIN RSA PRIVATE KEY-----
YOUR_PRIVATE_KEY_HERE_WITHOUT_ANY_TABULATION_BEFORE
-----END RSA PRIVATE KEY-----`;
const cfSigner = new cloudFront.Signer('YOUR_ACCESS_KEY_ID', privateKey);
const url = `https://randomaddress.cloudfront.net/path/to/file.jpg`;
import { useState } from 'react';
export const useForm = (initialValues: any) => {
const [values, setValues] = useState(initialValues);
return [values, (e: any) => {
setValues({
...values,
[e.target.name]: e.target.value
});
}];
import { useEffect, useState } from 'react';
export const useFetch = (url: string) => {
const [data, setData] = useState('');
const [loading, setLoading] = useState(false);
useEffect(() => {
if (url !== '') {
setData('');
setLoading(true);