• Ruby ecosystem के लिए एक सरल लेकिन powerful वेब फ्रेमवर्क, जो low abstraction और low-ceremony पर आधारित है, और controller या REST resource concept हटाकर page/form/single-action केंद्रित संरचना प्रदान करता है
  • Server-rendered HTML, सीधे JS/CSS लिखने की सुविधा, OpenTelemetry integration, Sequel और OptionParser जैसे modern Ruby tools पहले से ही उपलब्ध हैं, जिससे install और development केवल कुछ मिनटों में हो जाता है
  • Class-based architecture, वास्तविक type-based session, form और parameter management, dynamic method/hash के उपयोग को कम करके clean code और auto-documentation को लक्ष्य बनाता है
  • Modern web platform का अधिकतम उपयोग: server-side और client-side validation का एकीकरण, BrutJS (Web Components), esbuild से CSS bundling और hashing, मजबूत security policy तथा DB design की मज़बूत बुनियाद
  • YAML को न्यूनतम रखना, Ruby/Hash-based config और स्पष्ट नामकरण व role separation के साथ, बिना किसी अनावश्यक abstraction/pattern को थोपे Ruby और browser टेक्नोलॉजी का आनंद लेना इसका उद्देश्य है

Brut फ्रेमवर्क की मुख्य विशेषताएँ

पूरी तरह नया स्ट्रक्चर – controller के बिना page-centric approach

  • controller, REST resource और route action के बजाय class-based pages, forms और single-action handlers का उपयोग
  • HTML सीधे server-side बनाई जाती है, जबकि JS/CSS आप अपनी जरूरत के हिसाब से लिख सकते हैं
  • उदाहरण: समय दिखाने वाला पेज सीधे TimePage < AppPage से define किया जाता है

आधुनिक वेब प्लेटफॉर्म का सक्रिय उपयोग

  • server-side और client-side validation को combine करने वाला form UX
  • BrutJS (web component library) से HTML की progressive enhancement
  • esbuild के साथ CSS bundling और hashing, बिना PostCSS या SASS के सरल हैंडलिंग

development productivity और बेसिक्स बिल्ट-इन

  • OpenTelemetry-based instrumentation, Sequel-based data access, OptionParser-based command-line automation
  • बेसिक security policy, DB columns/foreign-key defaults/indexes, हमेशा timezone-aware समय, आसान localization (I18n)
  • RSpec testing, Faker/FactoryBot से data generation, Phlex से HTML निर्माण

YAML हटाकर स्पष्ट config structure

  • I18n Ruby Hash-based, dynamic config dotenv से manage (YAML का लगभग इस्तेमाल नहीं)
  • सिर्फ docker-compose में ही YAML exception

अनावश्यक abstraction या pattern को नहीं थोपा जाता

  • naming और structure स्पष्ट (उदा. WidgetsPage को /widgets route से access करना)
  • data layer (DB::Widget) और domain layer (Widget) को पूरी तरह अलग रखा जा सकता है
  • controller concept नहीं है, आप किसी भी तरीके से business logic implement कर सकते हैं
  • complex functional patterns, monad, Proc आदि को force नहीं किया जाता

development experience और flexibility

  • RSpec आदि modern Ruby ecosystem tools डिफ़ॉल्ट रूप से मौजूद हैं
  • Phlex (HTML), Faker/FactoryBot, Sequel, OpenTelemetry जैसी प्रमुख libraries का active उपयोग
  • repeat होने वाले boilerplate/config/decision overhead से हटकर, Ruby और browser टेक्नोलॉजी के “मज़ा” पर फोकस

Brut क्यों?

  • Rails जैसे existing frameworks की repetitive setup, लगातार architecture/design debates और अनावश्यक flexibility के बजाय code का मज़ा खोजने पर फोकस
  • जल्द से जल्द build करके development और deployment का मज़ा लेने वाला Ruby-based web app framework के रूप में productivity और clarity पर केंद्रित दृष्टिकोण

शुरुआत और आगे की roadmap

  • Brut official Docker image, command-based fast app generation और execution support
  • ADRs.cloud जैसे real-world sample apps उपलब्ध
  • 1.0 version और official roadmap के लगातार अपडेट की योजना

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.