Skip to content

Subhodip1307/Just_Light_Development

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Just Light Development (JLD)

Just Light Development (JLD) is a custom asynchronous Python web framework built on ASGI, designed to be lightweight and efficient. It leverages the power of Jinja2 for templating and Uvicorn for high-performance ASGI server execution. With support for both function-based and class-based views, JLD provides a simple yet robust platform for developing modern web applications.


🚀 Features

  • Asynchronous Request Handling: Built on the ASGI standard for scalable, high-performance web applications.
  • Routing: Dynamic routing with support for GET and POST methods.
  • Template Rendering: Built-in integration with Jinja2 for dynamic HTML rendering.
  • Function-Based and Class-Based Views: Flexibility to define views in the style you prefer.
  • Lightweight and Fast: Designed to be minimal yet powerful, running on Uvicorn.

⚠️ EXPERIMENTAL PROJECT – NOT FOR PRODUCTION USE

This repository is an experimental / research project created for learning, testing ideas, and proof-of-concept work.

❗ Important Notice

  • This project is NOT production-ready
  • Security, stability, performance, and backward compatibility are NOT guaranteed
  • There may be critical bugs, incomplete features, or unsafe defaults

🚫 Do NOT use this project:

  • In production environments
  • In systems requiring high availability or security guarantees

✅ Intended Use

  • Learning and experimentation
  • Prototyping
  • Personal or educational projects
  • Research and exploration

Status: Experimental
Maintenance: Best-effort
Stability: Unstable

📚 Table of Contents


📦 Installation

You can install the framework directly from GitHub using pip:

pip3 install git+https://github.com/Subhodip1307/Just_Light_Development

🛠 Usage

Routing

Define your routes using the @app.route() decorator. Specify the HTTP methods you want to support:

from jld import Template
from jld import app as APP
render = Template()
app=APP()
@app.route("/submit", methods=["POST"])
async def submit(request):
    name = request.POST.get("name", "Anonymous")
    return render.render("result.html", {"name": name})

Template Rendering

Use Jinja2 to render dynamic HTML templates:

from jld import Template
from jld import app as APP
render = Template()
app=APP()
@app.route("/submit", methods=["POST"])
async def submit(request):
    name = request.POST.get("name", "Anonymous")
    return render.render("result.html", {"name": name})

🌟 Features in Detail

  1. Dynamic Routing:

    • Easily map URLs to Python functions or methods.
    • Supports multiple HTTP methods (GET, POST, etc.).
  2. Request Handling:

    • Access GET and POST data through the Request object.
    • Parse headers, query strings, and request bodies effortlessly.
  3. Template Rendering with Jinja2:

    • Use the Template class to render HTML with dynamic data.
    • Example:
      render.render("template.html", {"key": "value"})
  4. ASGI Compatibility:

    • Fully compatible with ASGI servers like Uvicorn, ensuring high performance and scalability.
  5. Class-Based Views:

    • Define reusable, modular views using classes (future scope).

🤝 Contributing

We welcome contributions! If you'd like to improve this framework, feel free to:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/your-feature-name
  3. Commit your changes:
    git commit -m "Add your message here"
  4. Push to the branch:
    git push origin feature/your-feature-name
  5. Open a pull request.

📜 License

This project is licensed under the MIT License. See the LICENSE file for details.


🙌 Acknowledgments

  • Jinja2: For its powerful templating capabilities.
  • Uvicorn: For providing a lightning-fast ASGI server.
  • Python: The language that makes it all possible.

Thank you for using Just Light Development! 🌟

About

It is a micro web framework for Python.It's designed for rapid prototyping and building lightweight web applications with minimal overhead.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages