Functional-Light JavaScript is an educational resource and published book that teaches pragmatic functional programming principles applied to JavaScript. The repository serves as the source material for a complete, published first edition book available for free online, with paid editions available through Leanpub, Manning, and Amazon. The project is maintained by Kyle Simpson and classified by GitGenius across multiple functional programming domains including pure functions, composition, immutability, data transformation, and higher-order functions.
The book takes a deliberately scoped approach to functional programming, focusing on what the author calls "Functional-Light Programming" rather than attempting comprehensive coverage of formal FP theory. The core philosophy rejects heavy academic terminology in favor of practical application, explicitly avoiding jargon like "monoid in the category of endofunctors" that alienates practitioners. The author positions this as a rigorous, detailed treatment that assumes solid JavaScript foundation knowledge, with "Light" referring to limited scope rather than beginner-friendliness. The book goes deeper into each topic than typical FP-JavaScript resources while remaining accessible to working developers.
The repository contains eleven chapters covering foundational concepts: Why Functional Programming, The Nature of Functions, Managing Function Inputs, Composing Functions, Reducing Side Effects, Value Immutability, Closure vs Object, Recursion, List Operations, Functional Async, and Putting It All Together. Two appendices address Transducing and The Humble Monad, with a third appendix surveying FP libraries. A foreword by Brian Lonsdorf provides additional context for the material.
GitGenius activity tracking shows the repository receives contributions from multiple parties, with getify as the primary maintainer. Editorial issues represent the most active label category tracked across fourteen monitored items. Response latency metrics indicate a median of 76,267 hours and mean of 65,601 hours for issue and pull request handling. The repository maintains connections with major projects including Microsoft's VSCode and TypeScript implementations, as well as the Rust language repository, suggesting influence across different programming communities.
Beyond the book itself, the repository documents the author's professional training offerings. Kyle Simpson teaches in-person workshops under the same name in both public and private corporate formats. He also provides on-demand video training through Frontend Masters, including a Functional-Light JavaScript v2 course, with additional courses available on PluralSight. The repository includes contribution guidelines and operates under Creative Commons Attribution-NonCommercial-NoDerivs 4.0 licensing, with copyright held by Kyle Simpson from 2016-2018.