Socket
Socket
Sign inDemoInstall

TwigWeb

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

TwigWeb

Twig is a frontend and backend web framework utilizing the python socket module to serve http requests.


Maintainers
1

Twig 0.5.0

Twig is a backend web framework for python utilizing the socket module to handle http requests and serve responses.

To install use the following command:

py -m pip install TwigWeb

Changelog


0.5.0

  • Fixed dynamic router.

  • Implemented URL query parameters.

  • Implemented Headers class to separate parts of incoming request for the developer.


0.4.0

  • Added dynamic route parameters.

  • Improved route handling with Route class


0.3.0

  • Added static paths and folders functions.

  • Added element class.

  • Added component classes.


0.2.0

  • Added set_all_routes function

  • Fixed inconsistent request handling

  • Improved documentation


Example

This example does not show all of the functionality of Twig. There is documentation currently being worked on.

from src.TwigWeb.backend.routehandler.route import Route, RouteParameter, RouteParamType
from src.TwigWeb.backend import Server
from src.TwigWeb.backend.response import Response

app = Server("", debug=True, open_root=False)

@app.route("")
def index(headers):
    #this is the index of the app
    return Response("test", ContentType.html)

@app.route("form")
def form(headers):
    #this form redirects to page/2
    return Response("""<form action="/page/2">
<label for="fname">First name:</label><br>
<input type="text" id="fname" name="fname" value="John"><br>
<label for="lname">Last name:</label><br>
<input type="text" id="lname" name="lname" value="Doe"><br><br>
<input type="submit" value="Submit">
</form>""")

@app.route("page/[num]")
def index(headers, num):
    # Headers.URL is a dictionary containing all url query parameters/variables.
    # num a dynamic route.
    return Response(f"num: {num} and {headers.URL}", ContentType.html)

@app.route("page")
def index(headers):
    return Response(f"page", ContentType.html)

app.run()

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc