Skip to content

Instantly share code, notes, and snippets.

View scarletquasar's full-sized avatar
:electron:
I may be slow to respond.

Scarlet Rose scarletquasar

:electron:
I may be slow to respond.
View GitHub Profile
@scarletquasar
scarletquasar / politica-de-privacidade-devscout-draft.md
Created June 28, 2025 16:02
Politica de Privacidade DevScout Draft

Política de privacidade

Esta Política de Privacidade descreve como coletamos, usamos e protegemos suas informações ao utilizar o site https://devscout.app.

Esta Política de Privacidade estará válida a partir de 01/07/2025

1. Informações coletadas

Coletamos informações fornecidas por você, como nome, e-mail e dados de contato, além de informações técnicas automaticamente, como endereço IP, tipo de navegador e dados de uso do site.

@scarletquasar
scarletquasar / termos-devscout-draft.md
Last active June 28, 2025 16:00
Termos de serviço DevScout Draft

Termos de serviço

Estes termos de serviço estarão válidos a partir de 01/07/2025 de acordo com a seção "Atualização destes Termos"

Boas vindas à DevScout!

Estes Termos de Uso (ou "Termos") regem seu acesso e uso da DevScout e fornecem informações sobre o Serviço da DevScout (o "Serviço"), descritar abaixo, exceto quando afirmamos explicitamente que outros termos (e não estes) se aplicam.

O Serviço da DevScout é oferecido pelas empresas Growly Group (58.950.489/0001-42) e placeholder (placeholder) e constituem um acordo entre você e as empresas citadas. Caso não concorde, não utilize a plataforma DevScout.

@scarletquasar
scarletquasar / ts-loader.js
Created June 7, 2025 01:48
poc ts-loader for node 23+ correct importing
// Keep that file in the project root and call the index with `node --loader ./ts-loader.js ./src/index.ts`
import { stat } from "fs/promises";
import { join, dirname, isAbsolute } from "path";
import { fileURLToPath, pathToFileURL } from "url";
export async function resolve(specifier, context, nextResolve) {
if (
!specifier.startsWith("file:") &&
!specifier.startsWith("./") &&
!specifier.startsWith("../") &&
@scarletquasar
scarletquasar / RecurrentDateTimeOffset.cs
Created October 20, 2024 01:51
RecurrentDateTimeOffset Draft
namespace FitLivre.DataStructures
{
public class RecurrentDateTimeOffset
{
private readonly RecurrentDateTimeKind _recurrencyKind;
private readonly DateTimeOffset[]? _fixedFiniteOccurrences;
private readonly RecurrentWeekDayAndTime[]? _perWeekOccurrences;
private readonly RecurrentMonthDayAndTime[]? _perMonthOccurrences;
private readonly RecurrentYearMonthDayAndTime[]? _perYearOccurrences;
private readonly TimeSpan _tolerance;
@scarletquasar
scarletquasar / accentsAutohotkey.md
Created February 19, 2024 05:21
[Script] Accents in american keyboard using Autohotkey
Combinations Alt Alt + Ctrl Alt + Shift Alt + Shift + Ctrl Right Alt
A á à Á À ã
E é è É È
I í ì Í Ì
O ó ò Ó Ò õ
U ú ù Ú Ù
@scarletquasar
scarletquasar / sortedWords.ts
Created October 4, 2023 19:18
sorted words
const words = ["cat", "act", "tac", "art", "tar"];
const expectedOutput = {
"act": ["cat", "act", "tac"],
"atr": ["art", "tar"],
}
const sortedWords = words
.map(word => word.split(''))
.map(array => array.sort())
class Either<TLeft, TRight> {
protected leftValue: TLeft = null;
protected rightValue: TRight = null;
static left<T>(value: T) {
const either = new Either<T, any>();
either.leftValue = value;
return either;
}
@scarletquasar
scarletquasar / deconstruct.cs
Created December 24, 2022 19:46
Deconstruction implementation C#
class Test
{
public void Deconstruct(out string a, out string b)
{
a = "hello";
b = "world";
}
}
(string a, string b) = new Test();
@scarletquasar
scarletquasar / conditionalSwitchCase.md
Created December 20, 2022 21:59
Switch case with conditions
string s = "0";
switch (s)
{
    case [var c] when c is >= '0' and <= '9':
        Console.WriteLine("break"); 
        break;
    default: break;
}
@scarletquasar
scarletquasar / listify.cs
Created November 28, 2022 00:32
create false 'enumerable' type
public class Listify
{
public int Start { get; }
public int End { get; }
public Listify(int start, int end)
{
Start = start;
End = end;
}