19 repositorios
Tools and practices for maintaining high standards in software development.
Explore 19 awesome GitHub repositories matching part of an awesome list · Code Quality. Refine with filters or upvote what's useful.
This project is a collection of engineering guidelines and best practices for writing readable and maintainable JavaScript source code. It serves as a clean code guide and refactoring manual to help developers improve the structure of their codebases. The repository provides a reference for applying SOLID principles to reduce coupling and enable extensions without modifying existing logic. It includes a naming convention standard for using explicit, searchable identifiers and a guide for asynchronous patterns to replace nested callbacks with clearer execution flows. The guidelines cover soft
Style guide for writing clean and readable JavaScript code.
p3c is a Java static analysis tool and code quality linter designed to enforce professional coding guidelines and quality standards. It utilizes a set of custom rules based on the PMD engine to scan source code for style violations, performance bottlenecks, and potential bugs. The project is distributed as an IDE linting plugin that provides real-time feedback and warnings during development. It also includes functionality for pre-commit code quality gates, allowing modified files to be scanned and blocked if they violate defined rules before being committed to version control. The analysis
Static code analysis plugin for enforcing Java development standards.
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
Language-agnostic guidelines for consistent variable naming.
RuboCop is a static code analyzer and linter for Ruby. It functions as a static analysis tool designed to detect potential bugs, identify style violations, and improve overall code quality in Ruby projects. The project provides an automated code formatter that rewrites source code to align with established community standards. It also implements a language server protocol to surface linting and formatting errors directly within text editors. Its capabilities cover automated code linting and the analysis of Ruby code style to ensure consistency across a project. These functions are driven by
Static code analyzer for Ruby.
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
Strategies for reducing mental effort when reading code.
This project is a programming satire project and a curated catalog of software anti-patterns designed to demonstrate how to write intentionally unmaintainable and fragile code. It serves as a maintainability educational resource and a study in poor design choices, using extreme examples of obfuscated logic to teach developers how to recognize and avoid technical debt. The project provides a comprehensive guide to code obfuscation, focusing on techniques to hide program logic through deceptive naming, bizarre control flows, and misleading documentation. It distinguishes itself by intentionally
Examples of intentionally poor coding practices to avoid.
SwiftFormat is a tool for the Swift language that functions as a code formatter, linter, and refactoring utility. It automatically applies consistent style rules and visual formatting to source files to ensure a uniform appearance across a project. The project differentiates itself by providing both a command-line interface for batch processing and an Xcode extension for integration directly into the development environment. It includes specialized capabilities for modernizing legacy API usage, simplifying language constructs, and inferring formatting options by analyzing an existing codebase
Formats and cleans up Swift source code.
MLeaksFinder es un framework de diagnóstico y utilidad de perfilado diseñado para la detección automática de fugas de memoria y objetos no liberados en aplicaciones iOS. Funciona como un detector de fugas de memoria y herramienta de perfilado que identifica ciclos de retención y analiza ciclos de vida de objetos tanto para código Swift como Objective-C. La herramienta identifica dependencias circulares rastreando cadenas de referencia y recorriendo grafos de objetos, comenzando desde un controlador de vista raíz. Proporciona datos de depuración precisos capturando los stacks de asignación de los objetos con fugas para rastrear el origen de la fuga de memoria. El framework incluye capacidades para el seguimiento de objetos de interfaz y detección de objetos personalizados. También proporciona mecanismos de filtrado para excluir clases específicas u objetos singleton de los informes de fugas.
Finds memory leaks during development.
FBRetainCycleDetector is a runtime memory profiling tool and analyzer for iOS applications. It identifies circular references and retain cycles within the Objective-C object graph to prevent memory leaks. The tool analyzes the live memory heap and inspects runtime metadata to discover object relationships. It identifies closed-loop reference chains, including those involving associated objects and timers, and uses custom logic to filter out known safe cycles from reports. The project covers memory management capabilities including allocation tracking by class name, runtime object graph analy
Detects retain cycles at runtime.
Quick automated code review of your changes
Automated code review for changes.
iOS project bootstrap aimed at high quality coding.
Provides a project template for high-quality coding.
Find memory issues & leaks in your iOS app without instruments
Identifies memory issues without using Instruments.
Cross-platform static analyzer and linter for Swift.
Analyzes Swift code to improve quality and style.
Commit fully-formatted Objective-C as a team without even trying.
Enforces consistent code formatting across teams.
SwiftCop is a validation library fully written in Swift and inspired by the clarity of Ruby On Rails Active Record validations.
Validates data using a syntax inspired by Rails.
Aardvark is a library that makes it dead simple to create actionable bug reports.
Creates actionable bug reports from application data.
Makes it easier to support older versions of iOS by fixing things and adding missing methods
Adds missing methods to support older iOS versions.
Meteor specific linting rules for ESLint
ESLint plugin for enforcing standards.
This book is a distillation of my thoughts on the software creation process — how code evolves, and how we can keep it correct, maintainable, and scalable by relying on thoughtful design and the compiler as a partner.
Resource for enforcing code correctness through design patterns.