trekhleb/state-of-the-art-shitcode

💩State-of-the-art shitcode principles your project should follow to call it a proper shitcode

View on GitHub ↗Jump to charts ↓Open shareable report →

Summary Information

Updated 41 minutes ago
Added to GitGenius on September 10th, 2026
Created on January 27th, 2020
Open Issues & Pull Requests: 50 (+0)
GitHub issues: Enabled
Number of forks: 333
Total Stargazers: 6,200 (+0)
Total Subscribers: 51 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 133.1 days
Mean response time: 231.6 days
90th percentile: 408.2 days
Tracked items: 11

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 8
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 735 days
Stale 30+ days: 7
Stale 90+ days: 6

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

State-of-the-Art Shitcode is a satirical style guide that catalogs anti-patterns and poor coding practices presented as principles to follow.

The project documents deliberately bad coding practices through humorous examples, covering areas such as obfuscated variable naming, inconsistent code style, missing comments, silent error handling, excessive use of global variables, deeply nested code structures, and avoidance of testing and linting. Each principle is illustrated with code examples marked as "Good" to demonstrate the anti-pattern. The guide serves as an inverted reference—by showing what not to do, it implicitly teaches sound software engineering practices.

This repository functions as an educational tool and conversation starter rather than a framework or library to adopt. It suits developers seeking to understand code quality principles through negative examples, teams looking for a humorous way to discuss coding standards, or anyone wanting to recognize and avoid common pitfalls in their own projects. The guide is language-agnostic in its principles, though examples are primarily in JavaScript. It has been translated into multiple languages, making it accessible to international audiences.

The project maintains a straightforward collection of documented anti-patterns with illustrative code samples. Development activity centers on documenting additional poor practices and maintaining translations across languages. The repository serves as a reference document rather than an actively evolving codebase with frequent feature additions or architectural changes.