30 open-source projects similar to ryanmcdermott/clean-code-javascript, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Clean Code Javascript alternative.
This project is a PHP clean code guide and software architecture reference. It provides a set of standards, naming conventions, and design patterns intended to improve the long-term maintainability and readability of PHP codebases. The guide emphasizes a structured approach to refactoring and system design, focusing on the application of SOLID principles to reduce coupling and increase extensibility. It advocates for object-oriented design through the use of composition over inheritance, the use of final classes to prevent unexpected overrides, and the implementation of strict type declaratio
This project is a set of software engineering standards and architectural patterns for writing maintainable and refactorable TypeScript code. It provides a comprehensive guide for implementing clean code principles, focusing on the application of SOLID design and structural patterns to build decoupled systems. The framework prioritizes composition over inheritance and utilizes dependency inversion to reduce system coupling. It establishes standards for strict static typing and the use of read-only modifiers to ensure type safety and eliminate runtime errors. The guidance covers a broad range
This project is a comprehensive educational series designed to provide a deep technical understanding of the JavaScript programming language. It functions as a multi-volume curriculum that guides developers through the core mechanisms, execution models, and underlying specifications that define how the language operates at a fundamental level. The curriculum distinguishes itself by focusing on the internal architecture of the language rather than surface-level syntax. It provides rigorous analysis of complex topics such as lexical scope, closure-based state encapsulation, prototype-based inhe
This project provides a comprehensive set of coding standards and style guidelines for JavaScript development. It covers fundamental language syntax, formatting conventions, and best practices for managing variables, functions, objects, and modern language features. The documentation serves as a reference for maintaining consistent code quality across projects. In addition to general language standards, the guide includes specific conventions for building and organizing user interface components. These guidelines address structural patterns, component lifecycle management, and stylistic rules
This project is a comprehensive guide to architectural standards and coding patterns for developing maintainable applications within the Laravel framework. It focuses on clean code standards, applying the single responsibility and DRY principles to ensure codebase predictability and consistency. The guide emphasizes decoupling components by moving business logic into service layers and shifting input validation into dedicated request classes to keep controllers lean. It advocates for the use of a service container and dependency injection to reduce class coupling and improve testability. The
This project is a code naming convention guide and programming style guide. It provides a language-agnostic set of rules for naming variables and functions to improve the readability and cohesiveness of a codebase. The guide implements a variable naming framework that organizes identifiers using abstract, high-context, and low-context patterns. It also defines a specific function naming pattern based on a prefix-action-context system to communicate the operational domain and intended results of a function. The system covers broader standards for code readability optimization, including the u
This project is a Python clean code guide and refactoring resource. It provides a collection of software craftsmanship principles and examples designed to improve the readability and maintainability of Python source code. The resource focuses on optimizing variable naming to remove mental mapping and breaking functions into single-purpose units. It provides guidelines for reducing code duplication and organizing logic to ensure components remain easy to extend and maintain. The content covers software architecture and design quality, including the implementation of SOLID principles and indus
Clean-Code-Notes is a clean code study guide and a collection of detailed notes based on professional software development standards. It serves as documentation for coding standards and a reference for writing maintainable source code. The project provides technical summaries for object oriented design and software design patterns. It includes guidelines for organizing classes and interfaces to reduce coupling, isolating implementation details, and implementing architectural patterns such as dependency injection and interface abstraction. The resource also functions as an implementation guid
This project provides a comprehensive collection of best practices, architectural patterns, and coding standards for the .NET ecosystem. It serves as a guide for developers to improve the readability, maintainability, and testability of C# applications by applying established software engineering principles. The repository focuses on enforcing consistent code style and structure through automated configuration rules. It emphasizes the use of SOLID design principles to create modular, loosely coupled components, alongside structured exception management to ensure diagnostic information is pres
This project is a collection of software engineering principles and architectural design patterns designed to minimize the mental effort required to understand and maintain source code. It serves as a guide for implementing clean code methodologies and architectural simplification to reduce the overall cognitive load on developers. The framework emphasizes aligning module boundaries and ubiquitous language with business stakeholders to prevent architectural ripple effects. It advocates for balancing service granularity to avoid the overhead of distributed monoliths and suggests favoring objec
This project is a comprehensive guide and set of engineering standards for writing readable, maintainable, and scalable JavaScript code. It provides a framework for software architecture, refactoring patterns, and clean coding practices designed to improve codebase health and longevity. The guide emphasizes the application of SOLID principles and architectural strategies such as dependency inversion and the separation of concerns. It focuses on transforming complex conditional logic through polymorphism and refactoring, while promoting a transition from imperative loops to declarative functio
This project provides a collection of coding standard specifications, style guides, and configuration assets used to define automated rules for static code analysis in Ruby. It serves as a centralized set of RuboCop configurations and static analysis rules to ensure consistent syntax and idiomatic usage across a codebase. The project establishes a comprehensive Ruby style guide that defines naming conventions, indentation, and structural requirements. It utilizes a pluggable linting engine to enforce these standards through a defined set of patterns and constraints. The capability surface co
This project is a comprehensive technical interview preparation resource and computer science interview guide. It serves as an educational reference for developers to study core software engineering fundamentals and common coding patterns required for employment screenings. The repository provides detailed guides and references covering data structures and algorithms, networking and security, operating systems, and web development. It specifically focuses on the implementation and complexity analysis of sorting, searching, and graph algorithms. The material encompasses a wide breadth of comp
Functional-Light-JS is a JavaScript functional programming library designed to implement functional patterns within JavaScript applications. It serves as a toolkit for declarative data processing, immutable data management, and the construction of complex logic through higher-order functions. The library focuses on a pragmatic implementation of functional programming, providing utilities for curried argument application and function composition. It emphasizes the use of pure functions to calculate state updates and manage application data without side effects. The project covers broad capabi
This project is a comprehensive educational repository designed to help developers master the core mechanics, runtime behaviors, and browser-native capabilities of the JavaScript language. It provides a structured knowledge base that covers fundamental language features, such as prototype-based inheritance and event-loop-based concurrency, alongside advanced topics like JIT-compiled execution and memory management. The repository distinguishes itself by offering deep-dive technical guides that bridge the gap between abstract language concepts and practical browser implementation. It features
React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional data flow.
Developer Roadmap is a community-driven platform that provides structured, graph-based learning paths for software engineering. It serves as a comprehensive knowledge repository where technical domains are organized into visual sequences to guide professional skill acquisition and career growth. The project distinguishes itself through a collaborative ecosystem that enables users to contribute roadmaps, curate industry best practices, and maintain professional profiles. It integrates diagnostic assessment frameworks to evaluate technical proficiency, helping developers identify knowledge gaps
The CppCoreGuidelines is a comprehensive software engineering standard that provides a curated framework of coding conventions and design principles for C++. It serves as an authoritative guide for writing safe, efficient, and maintainable code by establishing high-level architectural patterns and organizational principles for large-scale projects. The guidelines emphasize the use of a strong, static type system to ensure memory safety and enforce consistent resource management patterns. The project distinguishes itself by promoting the zero-overhead abstraction principle, ensuring that high-
This project is a curated collection of guidelines and technical resources designed to improve C++ code safety, maintainability, and performance. It provides a comprehensive set of coding standards and best practices for establishing consistent naming, formatting, and structural patterns across C++ codebases. The guide offers specific technical advice on performance optimization, including methods for minimizing object copying, optimizing memory allocation, and reducing compilation cycles. It also provides a directory of tooling recommendations for implementing static analysis, fuzz testing,
This project is a collection of Swift coding standards and static analysis rules designed to ensure consistency across Swift projects. It provides a defined set of naming conventions and structural guidelines to maintain a shared style for teams. The repository centers on a SwiftLint configuration used to automate the detection and correction of style violations in source code. This configuration enables automated style enforcement, ensuring that code adheres to organizational standards without requiring manual review. The guidelines cover the standardization of code formatting, naming, and
This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
Inflector is a linguistic data processing library designed to handle string transformations and grammatical inflection within PHP applications. It provides a centralized engine for converting words between singular and plural forms and standardizing text formats to ensure consistency across dynamic content and codebase naming conventions. The library distinguishes itself through a rule-based inflection engine that utilizes regular expression pattern matching to apply grammatical logic. Developers can extend this functionality using a configurable registry, which allows for the injection or ov
Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best practices. It functions as a code quality auditor and Javadoc validation tool, checking source code against configurable rulesets to ensure structural and stylistic consistency. The project allows for the creation of custom linting rules by extending a core API to inspect the abstract syntax tree. It further enables specialized validation through the use of XPath expressions to query the syntax tree for specific code patterns and violations. Capability areas include the enforcement
This project is an ESLint plugin and static analysis tool designed to enforce best practices, prevent bugs, and maintain code quality in React projects. It functions as a specialized JSX linter that analyzes the syntax and structure of components to detect anti-patterns and API misuse. The plugin distinguishes itself by providing deep analysis of React-specific patterns, such as detecting state race conditions, preventing nested component definitions, and identifying unstable references that cause unnecessary re-renders. It also includes security hardening rules to identify vulnerabilities li
This project is a comprehensive reference guide and technical documentation for the features, syntax updates, and APIs introduced in ECMAScript 6. It serves as a language specification and overview for modern JavaScript development. The guide covers a wide range of language enhancements, including the implementation of classes and prototype-based inheritance, the use of arrow functions for lexical scope binding, and the introduction of block-scoped variables. It details the module system for organizing independent code components via import and export statements. The documentation extends to
This project provides a comprehensive set of standardized design patterns, naming conventions, and environment configurations for Objective-C development. It establishes a consistent framework for API design, memory management, and project organization to ensure codebases remain readable and maintainable across teams. The guide defines specific standards for namespace isolation using class prefixes and a structured system for naming assets. It outlines architectural patterns for delegate protocols and error handling mechanisms intended to improve type safety and clarity. Coverage extends to
This project is a JavaScript style guide and Node.js coding standard designed to ensure the creation of consistent, maintainable, and readable code. It serves as a comprehensive reference for naming conventions, formatting, and architectural patterns. The project provides a linting configuration template that allows for the automatic enforcement of these standards. This includes predefined linting presets and a base of rules used to perform logic checks and automatic formatting across a codebase. The guidelines cover a broad range of standardization capabilities, including code and file form
Spec is a comprehensive set of frontend coding standard specifications and project architecture guides. It provides a framework for organizing directory structures, module dependencies, and package layouts to create scalable and predictable codebases. The project defines rigorous governance standards for React components, including specific naming conventions and structural patterns for props. It also establishes a JSON API data specification to ensure predictable communication between system components through standardized exchange formats and HTTP response structures. The specification cov