Skip to content

Instantly share code, notes, and snippets.

View rsispal's full-sized avatar

Rav Sispal rsispal

View GitHub Profile
@rsispal
rsispal / Bidirectional Master-Slave Packet Protocol Specification.md
Created May 11, 2025 23:29
Bidirectional Master-Slave Packet Protocol Specification

Bidirectional Master-Slave Packet Protocol Specification

Overview

This specification defines a robust, bidirectional packet protocol. It supports symmetrical messaging between master and slave devices, robust identification via UUIDv7, reliable delivery, fragmentation, and error checking.

Key Features:

  • Master and slave devices both send commands, events, replies, and acknowledgments
  • Supports message fragmentation
  • UUIDv7-based addressing
@rsispal
rsispal / template-context.tsx
Last active December 19, 2021 19:27
[TEMPLATE] React Context/Reducer/Hook State Management (Redux Alternative)
import { createContext, useReducer, useContext, FC, useEffect, useMemo } from "react";
type InnerState = {};
export interface TemplateContextProviderState {}
export interface Action {
type: ActionType;
payload: {};
}
@rsispal
rsispal / use-browser-dark-mode.ts
Created December 17, 2021 18:25
[useBrowserDarkMode] React Browser Dark Mode Detection Hook Raw
export function useBrowserDarkMode(loggingEnabled: boolean = false) {
const queryBrowserPreference = () => window.matchMedia("(prefers-color-scheme: dark)").matches === true;
const [isDarkMode, setIsDarkMode] = useState<boolean>(() => queryBrowserPreference());
useEffect(() => {
if (window.matchMedia("(prefers-color-scheme)").media !== "not all") {
window
.matchMedia("(prefers-color-scheme: dark)")
.addEventListener("change", ({ matches: darkModeState }) => setIsDarkMode(darkModeState === true));