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 هو إطار عمل تشخيصي وأداة تحليل مصممة للكشف التلقائي عن تسريبات الذاكرة والكائنات غير المحررة في تطبيقات iOS. يعمل ككاشف لتسريبات الذاكرة وأداة تحليل تحدد دورات الاحتفاظ (Retain cycles) وتحلل دورات حياة الكائنات لكل من كود Swift وObjective-C. تحدد الأداة التبعيات الدائرية عن طريق تتبع سلاسل المراجع واجتياز رسوم بيانية للكائنات، بدءاً من وحدة تحكم العرض الجذرية. توفر بيانات تصحيح دقيقة عن طريق التقاط مكدسات تخصيص الكائنات المسربة لتتبع أصل تسريب الذاكرة. يتضمن إطار العمل قدرات لتتبع كائنات الواجهة واكتشاف الكائنات المخصصة. كما يوفر آليات تصفية لاستبعاد فئات معينة أو كائنات مفردة (Singletons) من تقارير التسريب.
Finds memory leaks during development.
FBRetainCycleDetector هي أداة لتوصيف الذاكرة في وقت التشغيل ومحلل لتطبيقات iOS. تحدد المراجع الدائرية ودورات الاحتفاظ (retain cycles) داخل مخطط كائنات Objective-C لمنع تسرب الذاكرة. تحلل الأداة كومة الذاكرة الحية وتفحص بيانات وقت التشغيل لاكتشاف علاقات الكائنات. تحدد سلاسل المراجع ذات الحلقة المغلقة، بما في ذلك تلك التي تتضمن كائنات مرتبطة ومؤقتات، وتستخدم منطقاً مخصصاً لاستبعاد الدورات المعروفة بأنها آمنة من التقارير. يغطي المشروع قدرات إدارة الذاكرة بما في ذلك تتبع التخصيص حسب اسم الفئة، وتحليل مخطط كائنات وقت التشغيل، واجتياز الكومة لرسم خرائط الاتصال بين الكائنات.
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.