Tags
#typescript
Inhalte mit dem Tag "typescript".
- GlossarBiome
Biome ist ein Rust-basierter Formatter und Linter für JavaScript/TypeScript, der Formatierung und statische Analyse vereint.
- SnippetsCaching für dynamische Imports
Leichte TypeScript-Implementierung zum Caching dynamischer Imports. Mehrere Imports desselben Pfads werden mit einem Promise verarbeitet.
- SnippetsDateiprüfung in Node.js
Promise-basierte Funktion, um zu prüfen, ob ein Pfad in Node.js eine Datei ist. Gibt bei Fehlern false zurück.
- SnippetsPrüfung der File-System-API-Berechtigung
Funktion zum Prüfen und Anfordern von Berechtigungen für die File System API im Browser. Unterstützt Read-only und Read-write.
- SnippetsReact useSelection Hook
Benutzerdefinierter React-Hook zur Verwaltung von Mehrfachauswahl. Behandelt vollständige, teilweise und einzelne Auswahl typsicher.
- SnippetsText mit TransformStream aufteilen
Ein TypeScript-Beispiel zur Verwendung von ReadableStream und TransformStream, um langen Text in Chunks einer bestimmten Größe aufzuteilen.
- SnippetsTypeScript-Implementierung von p-limit
TypeScript-Neuimplementierung von p-limit zur Steuerung der Promise-Konkurrenz. Konkurrenzkontrolle ohne zusätzliche Abhängigkeiten.
- SnippetsTypeScript-Implementierung von yocto-queue
TypeScript-Neuimplementierung der schlanken Queue yocto-queue. Bietet grundlegende Operationen wie enqueue, dequeue und iterator.
- SnippetsUint8Arrays zusammenführen
Eine TypeScript-Funktion zum Zusammenführen mehrerer Uint8Arrays in eines. Nützlich für die Kombination von Binärdaten.
- SnippetsBuild-Zeit-Nachrichten-ID-Hash-Store
Eine TypeScript-Funktion, die Nachrichten-IDs und Kontexte zur Build-Zeit hasht und kürzt. Nützlich, wenn eine Zielplattform erlaubte Übersetzungsschlüssel einschränkt.
- SnippetsBulk Import with Fallback from Pairwise COPY to Individual Inserts
Versuchen Sie zunächst einen Bulk-Import für große relationale Daten und fallen Sie dann auf einzelne Einfügungen für Zeilen zurück, die Schema-Einschränkungen verletzen. Balanciert Geschwindigkeit und Erfolgsrate.
- SnippetsCache-First, Live-Fetch Orchestrierungsmuster
Orchestrierung, die einen schnellen Pfad aus dem Cache mit einem langsamen Pfad vom Remote-Dienst kombiniert. Misst Cache-Hits/Misses, Latenz und das Endergebnis als Metriken und delegiert Nebeneffekte nach außen.
- SnippetsGeschichtete DOM-Beobachtungsstrategie
Ein Muster für den schrittweisen Wechsel zu engeren Observern sobald die App bereit ist. Breit einsetzbar in SPA-Content-Scripts und Drittanbieter-DOM-Integrationen.
- SnippetsIdempotenter DOM-Observer-Setup über dataset
Ein einfaches Muster mit data-Attributen, um doppelte MutationObserver-Registrierungen zu verhindern. Kein globales Registry erforderlich, hochgradig portierbar.
- SnippetsIn Entität eingebettete Cooldown-Warnungsunterdrückung
Ein Muster, das die Logik zur Unterdrückung wiederholter Warnungen in die Quota-Entität selbst einbettet. Kontrolliert häufige Warnungen wie Ratenlimit-Benachrichtigungen und Abrechnungswarnungen angemessen.
- SnippetsNative UI-Elemente klonen, um Stile zu erben
Ein leichtgewichtiges Muster, das visuelle Konsistenz durch Klonen bestehender Host-App-Buttons mit cloneNode gewährleistet, wobei nur Icon und Text ersetzt werden. Kein Kampf mit obfuskiertem CSS nötig.
- SnippetsProperty-Extractor-Hilfsfunktion
Generiert eine Funktion, die nur angegebene Eigenschaften aus einem Objekt extrahiert. Konsolidiert typsichere Property-Extraktion in einer Zeile für verschachtelte mapBy- und Array-Transformationen.
- SnippetsWorker-Pool mit Sub-Batches und Per-Sub-Batch-Timeout
Ein Muster, das große Datensätze in kleine Sub-Batches aufteilt, die an Worker gesendet werden, um Speicherdruck zu reduzieren und gleichzeitig Timeouts pro Batch für frühe Anomalieerkennung festzulegen.
- SnippetsZweiphasiger Repository-Walk mit Byte-Budget
Verarbeitung in path/size Scan → Strukturanalyse → nur benötigte Chunks lesen → Parsen aufteilen, um Speicherlimits auch für große Repositories kontrollierbar zu machen.
- BlogTypeScript Monorepo Organisieren der optimalen Lösung, Ausgabe 2026
Wir haben die Rollen von pnpm workspace, Turborepo, TypeScript Project References, Biome und WXT organisiert und die allgemeine einfache Lösung und die praktische Lösung mit einer 4-Paket-Struktur zusammengefasst.
- Blog@hsblabs/web-stream-extras veröffentlicht
Eine kleine TypeScript-Utility-Bibliothek für ReadableStream<Uint8Array> in Browsern und Node.js — mit Byte-Konvertierungshelfern, Transform Streams und Stream-Verschlüsselung via Web Crypto API.
- BlogByte-Streams im Browser mit Web Crypto verschlüsseln
Web Crypto bietet starke kryptografische Primitive, aber kein Stream-Interface. So verschlüsseln Sie ein ReadableStream<Uint8Array> mit dem encryption-Subpath von @hsblabs/web-stream-extras — inklusive Dateiverschlüsselung, streambezogenem Schlüsselmanagement und Pipeline-Komposition.
- BlogIch hatte es satt, denselben Web-Streams-Boilerplate immer wieder zu schreiben
Warum ich wiederkehrende ReadableStream<Uint8Array>-Utilities in @hsblabs/web-stream-extras gebündelt habe. Die drei Muster, die ständig wiederkamen, die ByteTransformStream-Basisklasse und Stream-Verschlüsselung mit Web Crypto.
- SnippetsImplementierung eines leichten Result-Typs in TypeScript
Ein Error-Handling-Pattern ohne try-catch. Typsichere Fehlerbehandlung mit einem Result-Typ, der data und error trennt.
- BlogImplementierung eines nur für Entwicklung vorgesehenen Live-Editors in Astro-Projekten
So implementieren Sie einen browserbasierten Editor, der nur im Entwicklungsmodus in Astro funktioniert. Verwenden Sie Vite-Middleware und React, um das Content-Management während der Entwicklung komfortabel zu gestalten, ohne die Produktions-Builds zu beeinflussen.
- SnippetsLazy-Initialisiertes Objekt
TypeScript-Pattern mit Gettern, das Werte nur beim ersten Zugriff generiert. Leichtgewichtige Lazy-Evaluation im Vergleich zum Speicher-Cache.
- SnippetsPolyfill für crypto.randomUUID
Polyfill-Implementierung der crypto.randomUUID-Funktion. Da alle Browser dies unterstützen, ist eine neue Implementierung nicht erforderlich, aber es dient als Referenz zum Verständnis des UUID v4-Mechanismus.
- SnippetsRegex für Bilderweiterungen
JavaScript/TypeScript Regex-Muster zur Erkennung von Bildformaten aus Dateinamen. Unterstützt png, webp, jpg, jpeg, avif, gif.
- SnippetsSHA256 Synchrone Implementierung (ohne WebCrypto API)
Eine reine JavaScript SHA256-Implementierung ohne Verwendung der WebCrypto API. Für Umgebungen, in denen das crypto-Objekt nicht verfügbar ist, wie bei einigen Web Workers-Implementierungen.
- SnippetsTypeScript Non-null Assertion
TypeScript-Typ-Guard-Funktionen zur Eliminierung von undefined und null. Sicherstellung sowohl von Laufzeitfehlern als auch von Typsicherheit.
- SnippetsTypeScript-Array-Utilities
Sammlung typsicherer Hilfsfunktionen für häufige Array-Operationen in TypeScript. Leeres Array erzeugen, chunking, Null-Filterung und Shuffle.
- SnippetsUint32Array Hilfsfunktionen
Ein prägnanter TypeScript-Wrapper für `new Uint32Array`-Aufrufe. Unterstützt alle Konstruktor-Überladungen mit typsicheren Überladungsdefinitionen.
- SnippetsUint8Array Hilfsfunktionen
Ein TypeScript-Wrapper zur Vereinfachung von new Uint8Array-Aufrufen. Unterstützt Arrays, ArrayBuffer und Initialisierung nach Länge.
- SnippetsZeitbasierte semantische Versionsgenerierung
TypeScript-Funktion, die Versionsnummern automatisch aus Build-Zeitstempeln generiert. Nützlich, wenn Versionslimits existieren, wie bei Chrome-Erweiterungen.
- BlogImplementierung von CRC32-Hashing in TypeScript
Schritte zum Implementieren des CRC32-Hashing-Algorithmus in TypeScript. Organisiert Beschleunigungstechniken mithilfe von Nachschlagetabellen und tatsächlichen Anwendungsbeispielen.
- BlogZeilenweises Aufteilen von Text mit TransformStream: LineSplitTransform
Eine TransformStream-Implementierung, die binäre Stream-Daten in Zeilen aufteilt. Nützlich für die schrittweise Verarbeitung von Log- und Textdateien.
- BlogEine TypeScript-Utility-Funktion zum Konvertieren von Werten in ReadableStream
Eine Utility-Funktion, die Strings, Objekte und andere Werte in ReadableStream umwandelt. Streams mit beliebigen Typen, ohne erst über Blob zu gehen.
- BlogImplementierung der CIDR-Bereichs-IP-Adressbestimmung mit TypeScript
Für Umgebungen, in denen externe Module wie CloudFront Function nicht verwendet werden können, haben wir unsere eigene IP-Adressermittlung innerhalb des CIDR-Bereichs implementiert. Organisierte die Implementierung der Klassensyntax mithilfe bitweiser Operationen.
- Bloggenerate-project-summary.py mit Bun + TypeScript neu umgesetzt
Eine Neuimplementierung eines Python-Skripts zur Projektzusammenfassung in Bun + TypeScript. Warum ich dafür ein portables Binary für LLM-Kontext gebaut habe.
- BlogTypeScript-Implementierung zum Sortieren von Mediendateien nach Auflösung
Eine kompakte TypeScript-Implementierung, um Videos oder Bilder nach Auflösung (Breite × Höhe) zu sortieren. Praktisch für Twitter-Medienvarianten.
- BlogLotto-6- und Lotto-7-Zahlen in TypeScript erzeugen
Eine TypeScript-Implementierung, die mit dem Mersenne Twister Lotto-6- und Lotto-7-Zahlen erzeugt. Ein praktisches Beispiel für einen Pseudozufallszahlengenerator.
- BlogMit TypeScript eine Anfrage an ein IAM-geschütztes API Gateway senden
So senden Sie aus einer lokalen TypeScript-Umgebung mit SigV4 aus dem AWS SDK für JavaScript Anfragen an ein API Gateway mit IAM-Authentifizierung.
- BlogTypeScript-Implementierung zum Generieren von Bildern aus HTMLVideoElement
Eine TypeScript-Implementierung, die Canvas und VideoElement verwendet, um den aktuellen Frame eines Videos als Bild zu extrahieren. Organisierte die Methode zur Generierung von Blobs basierend auf Versprechen.
- BlogMeine erste Vite-Plugin-Implementierung: Build-Metadaten automatisch erzeugen
Wie man mit der Vite Plugin API eigene Logik in den Build-Lebenszyklus einhängt. Ein Beispiel mit einem Plugin, das zeitbasierte semantische Versionsmetadaten erzeugt.
- BlogTypeScript-Implementierung der Steganographie mithilfe von Variantenselektoren
Eine TypeScript-Implementierung einer Steganographie-Methode, die den Variantenselektor von Unicode nutzt, um versteckte, unsichtbare Zeichenfolgen in Text einzubetten.
- BlogTypeScript-Implementierung zum Extrahieren von Größeninformationen aus Twitter-Video-URLs
Eine TypeScript-Implementierung, die Auflösungsinformationen aus Twitter-(X)-Video-URLs per regulärem Ausdruck extrahiert. Eine kurze Zusammenfassung von URL-Muster und Größenextraktion.
hsb.horse