{"id":28554920,"url":"https://github.com/sazardev/brutal_ui","last_synced_at":"2025-07-02T15:31:09.454Z","repository":{"id":287039205,"uuid":"963404089","full_name":"sazardev/brutal_ui","owner":"sazardev","description":"Brutal UI is a Design System for Flutter, inspired by Brutalist Design principles. It aims to provide a set of components that are simple, functional, and visually striking. The design system is built with Flutter, making it easy to integrate into your Flutter applications.","archived":false,"fork":false,"pushed_at":"2025-04-29T16:42:19.000Z","size":412,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-10T05:07:43.608Z","etag":null,"topics":["brutalism","brutalism-webdesign","brutalist","dart","flutter","frontend","system-design","ui"],"latest_commit_sha":null,"homepage":"","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sazardev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-09T16:20:47.000Z","updated_at":"2025-04-29T18:34:35.000Z","dependencies_parsed_at":"2025-04-29T03:16:48.381Z","dependency_job_id":null,"html_url":"https://github.com/sazardev/brutal_ui","commit_stats":null,"previous_names":["cerberusprogrammer/brutal_ui","sazardev/brutal_ui"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sazardev/brutal_ui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sazardev%2Fbrutal_ui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sazardev%2Fbrutal_ui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sazardev%2Fbrutal_ui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sazardev%2Fbrutal_ui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sazardev","download_url":"https://codeload.github.com/sazardev/brutal_ui/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sazardev%2Fbrutal_ui/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263165722,"owners_count":23423997,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["brutalism","brutalism-webdesign","brutalist","dart","flutter","frontend","system-design","ui"],"created_at":"2025-06-10T05:07:18.064Z","updated_at":"2025-07-02T15:31:09.027Z","avatar_url":"https://github.com/sazardev.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BRUTAL UI\n\n```\n██████  ██████  ██    ██ ████████  █████  ██          ██    ██ ██ \n██   ██ ██   ██ ██    ██    ██    ██   ██ ██          ██    ██ ██ \n██████  ██████  ██    ██    ██    ███████ ██          ██    ██ ██ \n██   ██ ██   ██ ██    ██    ██    ██   ██ ██          ██    ██    \n██████  ██   ██  ██████     ██    ██   ██ ███████      ██████  ██ \n```\n\n## DESIGN DOESN'T HAVE TO BE PRETTY. IT HAS TO BE BRUTAL.\n\n**BRUTAL UI** is a Flutter design system that embraces the raw, honest, and uncompromising principles of Brutalist design. No rounded corners. No subtle drop shadows. No gentle gradients. Just pure, unapologetic interfaces that make a statement.\n\n![Version](https://img.shields.io/badge/version-0.0.1-red)\n![Flutter](https://img.shields.io/badge/flutter-3.7.2+-blue)\n![Status](https://img.shields.io/badge/status-AGGRESSIVE_DEVELOPMENT-black)\n\n---\n\n## WHY GO BRUTAL?\n\nBecause we're tired of the same boring, cookie-cutter interfaces. In a world where every app looks the same, **BRUTAL UI** helps you create digital experiences that:\n\n- **STAND OUT** - Break free from generic design patterns\n- **PROVOKE** - Challenge users' expectations \n- **EXPRESS** - Show personality through unapologetic aesthetic choices\n- **RESIST OBSOLESCENCE** - Reject transient design trends for raw functionality\n\n---\n\n## FEATURES THAT PUNCH YOU IN THE FACE\n\n- 🔥 **MULTIPLE BRUTAL THEMES**: Cyberpunk, Neon, Vaporwave, Retro, Construction, Minimal\n- 🔥 **VISUAL EFFECTS**: Glitch, Broken, Jagged, Pixel, Distorted\n- 🔥 **RESPONSIVE**: Adapts to any screen size with breakpoint awareness\n- 🔥 **30+ BRUTAL COMPONENTS**: Everything you need to build an interface that screams\n- 🔥 **AGGRESSIVE TYPOGRAPHY**: Bold text treatments that command attention\n- 🔥 **ZERO MATERIAL DEPENDENCIES**: We don't need no stinking Material Design\n\n---\n\n## INSTALLATION\n\n```bash\n# Don't ask for permission. Just do it.\nflutter pub add brutal_ui\n```\n\nAdd this to your pubspec.yaml:\n\n```yaml\ndependencies:\n  brutal_ui: ^0.0.1 # Latest version might be different. WHO CARES?\n```\n\n---\n\n## CORE COMPONENTS\n\n### TEXT THAT SCREAMS\n\n```dart\n// Normal (boring) text\nBrutalText(\"Your interface is forgettable\");\n\n// Text that DEMANDS attention\nBrutalText.heading1(\"YOUR INTERFACE IS NOW BRUTAL\", isGlitched: true);\n\n// Styles: display, heading1, heading2, heading3, body, caption, mono\n// Variants: marked, glitch, loud, redacted, subtle\n```\n\n### BUTTONS THAT ASSAULT YOUR SENSES\n\n```dart\nBrutalButton(\n  text: \"CLICK OR DIE\",\n  onPressed: () =\u003e print(\"BRUTALITY\"),\n);\n\n// Variants: primary, secondary, destructive, broken, minimal\nBrutalButton.broken(\n  text: \"SYSTEM ERROR\",\n  onPressed: () {},\n  isGlitched: true,\n);\n```\n\n### CARDS THAT REFUSE CONFORMITY\n\n```dart\nBrutalCard(\n  title: \"RAW DESIGN\",\n  subtitle: \"No compromise\",\n  child: BrutalText(\"Interfaces that make a statement\"),\n);\n\nBrutalCard.glitch(\n  title: \"SYSTEM FAILURE\",\n  child: BrutalText(\"Embrace the chaos\", isGlitched: true),\n);\n```\n\n---\n\n## THEMES THAT REJECT SUBTLETY\n\nBRUTAL UI comes with multiple themes that each express a different flavor of digital brutalism:\n\n- **CYBERPUNK**: Neon yellows and blues against dark backgrounds\n- **VAPORWAVE**: Nostalgic digital aesthetics with vibrant purples\n- **MINIMAL**: Raw black and white, unadorned and honest\n- **RETRO**: 8-bit inspired interfaces with pixel effects\n- **CONSTRUCTION**: Industrial yellow and black warning aesthetics\n- **DEFAULT**: Raw brutalist basics for the digital age\n\n```dart\nBrutalApp(\n  theme: BrutalTheme.cyberpunkTheme, // Choose your weapon\n  child: MyBrutalApp(),\n);\n```\n\n---\n\n## LAYOUT SYSTEM THAT BREAKS RULES\n\nOur layout components don't just organize content - they actively participate in the aesthetic:\n\n```dart\n// Columns that refuse to behave\nBrutalColumn(\n  isJagged: true, // Elements are deliberately misaligned\n  isGlitched: true, // Visual noise and distortion\n  children: [\n    BrutalText(\"DISORDER\"),\n    BrutalText(\"IS\"),\n    BrutalText(\"HONEST\"),\n  ],\n);\n\n// Responsive brutality\nBrutalResponsiveBuilder(\n  builder: (context, screenType) {\n    return screenType == BrutalScreenType.mobile\n      ? BrutalText(\"SMALL BUT ANGRY\")\n      : BrutalText(\"BIG AND FURIOUS\");\n  },\n);\n\n// Adaptive panels that know their place\nBrutalAdaptivePanel(\n  child: YourContent(),\n  isBroken: true, // Slight rotation and distortion\n);\n```\n\n---\n\n## BRUTAL PHILOSOPHY\n\nBrutalism in architecture values honesty of materials, exposure of structure, and rejection of decorative elements. BRUTAL UI applies these principles to digital interfaces:\n\n1. **HONESTY**: We don't hide our interface elements behind subtle effects\n2. **EXPOSURE**: Structure is visible and celebrated, not concealed \n3. **FUNCTION**: Every element serves a purpose, nothing is merely decorative\n4. **RAW MATERIALS**: Digital interfaces have their own \"raw materials\" - pixels, vectors, fonts\n5. **CONTRAST**: Bold contrasts in color, form, and scale create visual tension\n\n---\n\n## ROADMAP TO MORE BRUTALITY\n\nBRUTAL UI is still in aggressive development. Future plans include:\n\n- **ANIMATION SYSTEM**: Brutalist motion design principles \n- **CHARTS \u0026 DATA**: Data visualization with a brutal aesthetic\n- **CODE GENERATOR**: Generate brutalist layouts from simple descriptions\n- **MORE THEMES**: Industrial, Constructivist, Digital Trash aesthetic\n- **WEB SHOWCASE**: Interactive demo site for all components\n- **BRUTALIST ICON SET**: Custom iconography with brutal aesthetics\n\n---\n\n## WHO IS THIS FOR?\n\n- Designers who are tired of the same clean, soulless interfaces\n- Developers building apps for counterculture audiences\n- Projects that need to stand out in a sea of sameness\n- Anyone who appreciates the honesty of brutalist aesthetics\n- YOU, if you're brave enough\n\n---\n\n## CONTRIBUTE TO THE BRUTALITY\n\nBRUTAL UI wants your contributions, but only if they're BRUTAL. Here's how:\n\n1. Fork the repo\n2. Create your brutal feature branch\n3. Commit your raw, honest changes\n4. Push to your branch\n5. Open a Pull Request (we'll crush it with constructive feedback)\n\n---\n\n## LICENSE\n\n**WE DON'T CARE WHAT YOU DO WITH THIS CODE**\n\n(But legally speaking, it's under MIT License)\n\n---\n\n```\nBRUTAL UI - FOR WHEN YOUR INTERFACE \nNEEDS TO MAKE A STATEMENT, NOT FRIENDS.\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsazardev%2Fbrutal_ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsazardev%2Fbrutal_ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsazardev%2Fbrutal_ui/lists"}