5 Repos
Building web user interfaces using functional programming languages that compile to JavaScript.
Distinguishing note: Shortlist candidates focus on C# or general environment setup, not the functional paradigm applied to frontend web dev.
Explore 5 awesome GitHub repositories matching web development · Functional Frontend Development. Refine with filters or upvote what's useful.
ClojureScript is a Lisp-based compiler and runtime that translates Clojure source code into JavaScript. It enables functional programming across different JavaScript engines and platforms, allowing developers to build user interfaces and applications for web browsers and server environments. The project provides a read-eval-print loop for executing code live within a browser or server for immediate feedback. This facilitates an interactive development workflow where code can be written and tested in real time without restarting the application. The system covers a broad capability surface, i
Enables writing browser-based applications using Clojure syntax that compiles to JavaScript for execution.
ReScript is a statically typed programming language and compiler designed to transform type-safe source code into efficient, human-readable JavaScript. It functions as a transpiler that enforces data consistency and prevents runtime errors through static type analysis for both web and server applications. The project distinguishes itself as an incremental build system that analyzes dependency graphs to recompile only modified files and their dependents. It includes a JSX compatible compiler for building user interfaces and provides a framework for bridging type-safe code with existing JavaScr
Enables building web user interfaces using a functional paradigm that compiles to JavaScript.
Choo ist ein funktionales Frontend-Framework für den Bau von Webanwendungen. Es besteht aus einer Suite von Tools, darunter ein Client-Side-Router, eine DOM-Diffing-Engine und eine isomorphe JavaScript-Bibliothek. Das Projekt nutzt eine eventgesteuerte Architektur, um Geschäftslogik von der Darstellung zu entkoppeln und Statusaktualisierungen sowie View-Refreshes über einen zentralen Event-Emitter zu koordinieren. Es verwendet isomorphes Rendering, um HTML-Ausgaben über einen einzigen Logikpfad sowohl für serverseitige Strings als auch für clientseitige DOM-Manipulationen zu generieren. Das Framework verwaltet ein Shared-State-Objekt, das Daten über Handler und Views hinweg synchronisiert. Die Performance wird durch eine DOM-Diffing-Engine adressiert, die identifier-basiertes Component-Caching und manuelle Reconciliation nutzt, um aufwendige Mutationen zu minimieren. Der Router mappt URL-Pfade auf Handler-Funktionen und extrahiert benannte Parameter direkt in den geteilten Anwendungsstatus.
Provides a lightweight functional framework for building web applications with an event-driven architecture.
re-frame ist ein funktionales Framework für den Bau von Single-Page-Anwendungen in ClojureScript. Es bietet eine zentralisierte, unveränderliche Datenbank, die als Single Source of Truth für den gesamten Anwendungszustand dient und einen strikten, unidirektionalen Datenfluss erzwingt, bei dem Events Zustandsübergänge und nachfolgende View-Updates auslösen. Das Framework zeichnet sich durch einen reaktiven Signal-Graphen und eine Interceptor-basierte Middleware-Pipeline aus. Indem Anwendungslogik als Sequenz datengetriebener Events und deklarativer Side-Effects behandelt wird, entkoppelt es die Geschäftslogik von der View-Schicht. Diese Architektur ermöglicht es Entwicklern, komplexe Zustandsübergänge und externe Operationen durch reine Funktionen zu verwalten, wobei sichergestellt wird, dass Side-Effects von einem separaten Interpreter statt durch imperative Aufrufe ausgeführt werden. Das System umfasst eine umfassende Suite an Funktionen für das Management der Anwendungsarchitektur, einschließlich reaktiver Datenableitung, abonnementbasierter View-Reconciliation und eventgesteuertem Zustandsmanagement. Es unterstützt fortgeschrittene Entwicklungs-Workflows wie Event-Tracing, State-Checkpointing und die Möglichkeit, Side-Effects für isolierte Tests zu stubben. Das Projekt ist für die Integration mit React konzipiert und nutzt Virtual-DOM-Reconciliation, um Benutzeroberflächen effizient zu aktualisieren. Es bietet ein robustes Set an Utilities für den Umgang mit Cross-Cutting Concerns, die Verwaltung komplexer Datenfluss-Graphen und die Koordination asynchroner Operationen innerhalb einer vorhersagbaren, sequenziellen Event-Pipeline.
Provides a toolset for building single-page applications that decouples business logic from the view layer using pure functions and interceptor pipelines.
Dieses Projekt ist eine in sich geschlossene Desktop-Anwendung für Projektmanagement, die Aufgaben auf einem visuellen Board organisiert. Sie fungiert als eigenständiges Tool zur Nachverfolgung von Workflows und Aufgabenstatus und arbeitet vollständig offline, ohne dass externe Cloud-Dienste oder Internetkonnektivität erforderlich sind. Die Anwendung ist als einzelne ausführbare Datei erstellt, die sowohl die Backend-Logik als auch das Frontend-Interface bündelt. Durch die Nutzung eines leichtgewichtigen System-Containers zum Hosten des webbasierten Interfaces wird der Speicher-Overhead vermieden, der mit vollständigen Browser-Engines verbunden ist. Das Interface selbst ist mit einem funktionalen Programmier-Framework konstruiert, das einem strikten Model-Update-View-Zyklus folgt, um Zustandsübergänge zu verwalten und einen vorhersagbaren Datenfluss sicherzustellen. Die Software bietet eine vollständige Umgebung für lokales Aufgabenmanagement, indem alle notwendigen Web-Assets direkt in die Binärdatei eingebettet werden. Dieser Ansatz eliminiert externe Netzwerkabhängigkeiten und stellt sicher, dass das Interface bei der Ausführung sofort geladen wird.
Uses a functional programming environment to build reliable and interactive user interfaces that compile to optimized JavaScript.