19 个仓库
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 is a diagnostic framework and profiling utility designed for the automatic detection of memory leaks and unfreed objects in iOS applications. It functions as a memory leak detector and profiling tool that identifies retain cycles and analyzes object lifecycles for both Swift and Objective-C code. The tool identifies circular dependencies by tracing reference chains and traversing object graphs, starting from a root view controller. It provides precise debugging data by capturing the allocation stacks of leaked objects to trace the origin of the memory leak. The framework include
Finds memory leaks during development.
FBRetainCycleDetector 是一款用于 iOS 应用的运行时内存分析工具和分析器。它识别 Objective-C 对象图中的循环引用和保留环(retain cycles),以防止内存泄漏。 该工具分析实时内存堆并检查运行时元数据以发现对象关系。它识别闭环引用链,包括涉及关联对象和计时器的引用链,并使用自定义逻辑从报告中过滤掉已知的安全循环。 该项目涵盖了内存管理功能,包括按类名进行的分配跟踪、运行时对象图分析以及遍历堆以映射对象之间的连接性。
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.