- Python के साथ प्रोडक्ट को तेज़ी से बनाने के लिए डिज़ाइन किया गया वेब framework (Django का fork)
- एक single command से लोकल development शुरू किया जा सकता है, और dashboard तथा feature flags आदि के जरिए production में ले जाया जा सकता है
- starter kit को clone करके जल्दी शुरुआत करें
- यह core
plain package और वैकल्पिक रूप से install किए जा सकने वाले official extension packages से मिलकर बना है
plain package की विशेषताएँ
- URL patterns को Python view functions से जोड़ना
- HTTP requests और responses को handle करना
- Jinja templates का उपयोग करके HTML rendering
- user input को handle करने के लिए Form
- command-line interface (CLI) प्रदान करना
- CSS, JS, images आदि static assets serve कर सकता है
- Middleware के ज़रिए app functionality को expand करना
- official और third-party packages को आसानी से integrate करना
- app चलाने से पहले preflight check system प्रदान करना
first-party packages के माध्यम से विस्तार योग्य सुविधाएँ
- plain.models: Postgres, MySQL, SQLite में data store करने के लिए ORM प्रदान करता है
- plain.cache: मौजूदा database के साथ काम करने वाला caching solution
- plain.email: पूरे app में email configuration और sending functionality प्रदान करता है
- plain.sessions: database-आधारित sessions को read और write कर सकता है
- plain.worker: मौजूदा database को support करने वाला background jobs solution
- plain.api: class-based view architecture का उपयोग करके JSON API बना सकता है
authentication से संबंधित
- plain.auth: users जोड़ने, request authentication और view restrictions के लिए foundation प्रदान करता है
- plain.oauth: modern social login और API access को support करने वाला flexible OAuth solution
- plain.passwords: पारंपरिक password-based login को support करता है
- plain.loginlink: password के बिना login के लिए one-time login links प्रदान करता है
- plain.passkeys: passwordless login functionality जल्द उपलब्ध होगी
admin
- plain.admin: पूरी तरह customizable admin dashboard प्रदान करता है
- plain.flags: database-आधारित feature flags के ज़रिए user-specific content control कर सकता है
- plain.support: third-party services के बिना customer support प्रदान करता है
- plain.redirection: 404 monitoring और database में redirections manage करता है
- plain.pageviews: users क्या देख रहे हैं, यह समझने और बेहतर support देने में मदद करता है
development
- plain.dev: एक single command से local development environment शुरू किया जा सकता है
- plain.pytest: लोकप्रिय Python testing library के साथ tests लिख और चला सकता है
- plain.code: default settings के साथ Python code formatting और linting कर सकता है
- plain.tunnel: webhook integration के लिए local app को internet पर expose कर सकता है
frontend
- plain.tailwind: लोकप्रिय CSS framework के साथ first-class integration प्रदान करता है
- plain.htmx: मौजूदा tools का उपयोग करके modern user experience बना सकता है
- plain.elements: app templates में reusable components के लिए नया paradigm प्रदान करता है
- plain.pages: HTML और Markdown का उपयोग करके file-based routing प्रदान करता है
- plain.esbuild: JavaScript compilation के लिए streamlined build process प्रदान करता है
- plain.vendor: CDN पर निर्भर हुए बिना JavaScript और CSS assets को download करके self-host कर सकता है
1 टिप्पणियां
Hacker News राय
बहुत से लोगों को शायद यह पता न हो कि Django Rest Framework का bug tracker private कर दिया गया है और वह नए maintainer की तलाश में है
Django के fork को लेकर मिली-जुली भावनाएँ हैं
Django की ताकत उसका ORM और ecosystem/idioms हैं
Django की कुछ कमियाँ हैं
Django के प्रति नकारात्मक भावनाएँ देखकर हैरानी हुई
Django से Supabase/Firebase पर स्विच किया
यह बात पसंद नहीं कि settings में class को refer करने वाली string होती है
Plain के docs देखे
पता नहीं Plain सफल होगा या नहीं, लेकिन fork के कारण समझ में आते हैं