Plain is a Python web framework focused on simplicity and productivity for building web applications and APIs. It embraces a "batteries-included" approach, offering built-in features like routing, templating, database access (using SQLite by default), form handling, and security measures against common vulnerabilities. Designed for a straightforward developer experience, Plain emphasizes minimal configuration and intuitive APIs, promoting rapid development and easy maintenance. It aims to provide a lightweight yet powerful foundation for projects ranging from small utilities to larger web products.
Manifest is a single-file Python library aiming to simplify backend development for small projects. It leverages Python's decorators to define API endpoints within a single file, handling routing, request parsing, and response formatting. This minimalist approach reduces boilerplate and promotes rapid prototyping, ideal for quickly building APIs, webhooks, or small services. Manifest supports various HTTP methods, data validation, and middleware for customization, while striving for ease of use and minimal dependencies.
HN commenters generally express interest in Manifest's simplicity and ease of use for small projects. Several praise the single-file approach and minimal setup. Some discuss potential use cases like rapid prototyping, personal projects, and teaching. Concerns are raised about scalability and suitability for complex applications. A few users compare it to similar tools like Flask and Sinatra, questioning its advantages. Some debate the merits of its integrated templating and routing. The author actively engages in the comments, addressing questions and clarifying the project's scope. Several commenters express appreciation for the "batteries-included" approach, though acknowledge the potential limitations.
Goravel is a Go web framework heavily inspired by Laravel's elegant syntax and developer-friendly features. It aims to provide a similar experience for Go developers, offering functionalities like routing, middleware, database ORM (using GORM), validation, templating, caching, and queuing. The goal is to boost developer productivity by offering a structured and familiar environment for building robust web applications in Go, leveraging Laravel's conventions and principles.
Hacker News users discuss Goravel, a Go framework inspired by Laravel. Several commenters question the need for such a framework, arguing that Go's simplicity and built-in features make a Laravel-like structure unnecessary and potentially cumbersome. They express skepticism that Goravel offers significant advantages over using standard Go libraries and approaches. Some question the performance implications of mimicking Laravel's architecture in Go. Others express interest in exploring Goravel for personal projects or as a learning experience, acknowledging that it might be suitable for specific use cases. A few users suggest that drawing inspiration from other frameworks can be beneficial, but the overall sentiment leans towards skepticism about Goravel's value proposition in the Go ecosystem.
Robyn is a Python web framework designed for speed and simplicity, leveraging Rust's performance under the hood. It aims to provide an asynchronous, scalable solution for building web applications and APIs with a minimal learning curve. Features include automatic code reloading, type hints, and a built-in router. Robyn promotes a straightforward approach to web development, allowing developers to focus on application logic rather than complex configurations. It draws inspiration from other frameworks like Node.js's Express and aims to offer a competitive alternative in the Python ecosystem.
Hacker News users discussed Robyn's performance, ease of use, and niche appeal. Some praised its speed, asynchronous nature, and the novelty of a Python framework leveraging Rust. Others questioned the practical benefits over existing frameworks like Flask or FastAPI, especially for simpler projects. Several commenters expressed interest in learning more about the Rust integration and its impact on performance. The "Batman-inspired" branding was met with mixed reactions, some finding it playful while others deemed it unprofessional. Overall, the discussion revolved around Robyn's potential and whether it offers a compelling advantage over established alternatives. A few users highlighted potential deployment challenges due to the Rust component.
This project introduces a C-based web framework designed for dynamic module loading and hot reloading. Leveraging a custom module format and a simple HTTP server, it allows developers to modify and reload C code without restarting the server, facilitating rapid development and experimentation. The framework compiles and links modules on-the-fly, managing dependencies and updating the running server seamlessly. While currently limited in features, it aims to offer a performant and flexible foundation for building web applications directly in C.
Hacker News users discussed the practicality and novelty of a C web framework with hot reloading. Some questioned the real-world use cases and performance benefits compared to existing solutions, suggesting the project serves more as an interesting experiment than a production-ready tool. Others expressed interest in the technical implementation, particularly the hot reloading aspect, and appreciated the author's effort in exploring this concept. Several users pointed out potential issues like memory leaks and the challenges of safely reloading C code in a web server environment. The overall sentiment leans towards acknowledging the project's technical ingenuity while remaining skeptical about its broad applicability.
Summary of Comments ( 129 )
https://news.ycombinator.com/item?id=43512589
HN commenters generally expressed interest in Plain, praising its simplicity and focus on serving HTML. Several appreciated the "batteries included" approach for common tasks like forms and authentication, contrasting it favorably with Django's complexity. Some questioned the performance implications of generating HTML with Python, and others desired more details on the templating language. A few commenters noted the similarity to other Python frameworks like Flask or Pyramid, prompting discussion about Plain's unique selling points and potential niche. There was also some skepticism about the project's longevity given the prevalence of existing frameworks. However, the overall sentiment was positive, with many looking forward to trying it out.
The Hacker News thread for "Plain – a web framework for building products with Python" contains a moderate number of comments, generally expressing interest and skepticism about the framework. Several recurring themes emerge from the discussion.
A number of commenters question the need for another Python web framework, given the existing mature options like Django, Flask, and Pyramid. They express doubt that Plain offers enough compelling advantages to justify switching or adopting it for new projects. Some wonder about its long-term viability and community support compared to established frameworks.
Several commenters appreciate Plain's focus on simplicity and minimalism. They find the "no magic" approach appealing and see potential for easier understanding and debugging. The emphasis on HTML over templating languages resonates with some who prefer a more direct approach to web development.
Performance is a topic of discussion, with some commenters inquiring about benchmarks and comparisons to other frameworks. There's a general acknowledgment that a simple framework could be faster, but skepticism about whether Plain actually achieves significant performance gains.
Some comments focus on specific features or limitations of Plain. For instance, the lack of an ORM is mentioned both as a positive (allowing for greater flexibility in database interactions) and a negative (requiring more boilerplate code). The reliance on function decorators for routing and other functionality is also discussed, with mixed opinions on its clarity and usability.
Several commenters express a desire to see more real-world examples and use cases of Plain to better evaluate its practicality. They are curious about how it scales and handles complex applications.
There is some discussion around the developer experience and the learning curve associated with Plain. While some appreciate its simplicity, others wonder if it might be too barebones for larger projects or teams.
Overall, the comments reflect a cautious but curious attitude towards Plain. While acknowledging its potential benefits, many commenters remain unconvinced that it offers a substantial improvement over existing solutions. The discussion highlights the importance of community adoption, performance benchmarks, and real-world examples in establishing the viability of a new web framework.