EchoNext is a lightweight, fast and scalable async web framework for Python
Project description
EchoNext
EchoNext is a lightweight, fast and scalable web framework for Python
Explore the docs »
Comparison with Alternatives
.
Why Choose pyEchoNext
·
Key Features
·
Getting Started
·
Basic Usage
·
Specification
·
Documentation
·
License
EchoNext is a lightweight, fast and scalable web framework for Python
Welcome to EchoNext, where innovation meets simplicity! Are you tired of the sluggishness of traditional web frameworks? Want a solution that keeps pace with your ambitious apps? Look no further. EchoNext is your agile companion in the world of web development!
Imagine a lightweight framework that empowers you to create modern web applications with lightning speed and flexibility. With EchoNext, you're not just coding; you're building a masterpiece!
🚀 Getting Started
pyEchoNext is available on PyPI. Simply install the package into your project environment with PIP:
pip install pyechonext
Once installed, you can start using the library in your Python projects. Check out the documentation for detailed usage examples and API reference.
Advanced app with flask-like and django-like routes
Index page and book
from pyechonext.app import ApplicationType, EchoNext
from pyechonext.views import View
from pyechonext.urls import url_patterns
echonext = EchoNext(url_patterns, __name__, application_type=ApplicationType.HTML)
@echonext.route_page("/book")
class BooksResource(View):
def get(self, request, response, **kwargs):
return f"Books Page: {request.query_params}"
def post(self, request, response, **kwargs):
return "Endpoint to create a book"
Simple app with database
In this example we are using SQLSymphony ORM (our other project, a fast and simple ORM for python)
from pyechonext.app import ApplicationType, EchoNext
from sqlsymphony_orm.datatypes.fields import IntegerField, RealField, TextField
from sqlsymphony_orm.models.session_models import SessionModel
from sqlsymphony_orm.models.session_models import SQLiteSession
from sqlsymphony_orm.queries import QueryBuilder
echonext = EchoNext(__name__, application_type=ApplicationType.HTML)
session = SQLiteSession("echonext.db")
class User(SessionModel):
__tablename__ = "Users"
id = IntegerField(primary_key=True)
name = TextField(null=False)
cash = RealField(null=False, default=0.0)
def __repr__(self):
return f"<User {self.pk}>"
@echonext.route_page("/")
def home(request, response):
user = User(name='John', cash=100.0)
session.add(user)
session.commit()
response.body = "Hello from the HOME page"
@echonext.route_page("/users")
def about(request, response):
users = session.get_all_by_model(User)
response.body = f"Users: {[f'{user.name}: {user.cash}$' for user in users]}"
💬 Support
If you encounter any issues or have questions about pyEchoNext, please:
- Check the documentation for answers
- Open an issue on GitHub
- Reach out to the project maintainers via the mailing list
🤝 Contributing
We welcome contributions from the community! If you'd like to help improve pyEchoNext, please check out the contributing guidelines to get started.
🔮 Roadmap
Our future goals for pyEchoNext include:
- 📚 Improve middlewares
- 🚀 Add async support
- ✅ Improve logging
- 🌍 Improve auth
- 🌐 More stability and scalablity
License
Distributed under the GNU LGPL 2.1 License. See LICENSE for more information.
EchoNext is a lightweight, fast and scalable web framework for Python Copyright (C) 2024 Alexeev Bronislav (C) 2024
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pyechonext-0.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fda58f5d0af177c502dd90ee82bf8406a3bd5d2f128581a1855d00daf55814db |
|
MD5 | c42c7adb8dceb8b95de63176f65982d6 |
|
BLAKE2b-256 | 3b8ecd0ce126aaecbe58f9d5cfad2d12d18e5fa2810be2ed993daa225fddfb2d |