Skip to main content

Utility for load static in AioHttp web framework from Webpack with help of webpack-bundle-tracker JS plugin.

Project description

Utility for load static in AioHttp web framework from Webpack with help of webpack-bundle-tracker JS plugin.

Also this can be used with VueJS.

Usage:

settings.py:

    STATIC_URL = '/static/'
    STATIC_PATH = './static/'
    WEBPACK_MANIFEST_PATH = './frontend/webpack_manifest.json'

main.py:

    from aiohttp import web
    import aiohttp_jinja2
    import jinja2
    from aiohttp_webpack import WebpackManifest
    from settings import *


    @aiohttp_jinja2.template('index.html')
    async def index(request):
        context = {
            'webpack': webpack_manifest.get_links(),
        }

        return context


    if __name__ == '__main__':
        loop = asyncio.get_event_loop()

        app = web.Application()
        aiohttp_jinja2.setup(app, loader=jinja2.FileSystemLoader('./templates'))

        webpack_manifest = WebpackManifest(WEBPACK_MANIFEST_PATH, STATIC_URL, STATIC_PATH)

        app.add_routes([
            web.get('/', index),
            web.get('/static/{path:.*}', webpack_manifest.handle_static),
        ])

        web.run_app(app)

index.html:

    <html>
      <head>
        <meta charset="utf-8">
        <link rel="stylesheet" href="/static/index.css"> {# here you can use non webpack static too #}
        {{ webpack.css | safe }}
      </head>
      <body>
        <div id="app"></div> {# if you use VueJS #}
        {{ webpack.js | safe }}
      </body>
    </html>

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

aiohttp-webpack-0.0.4.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aiohttp_webpack-0.0.4-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file aiohttp-webpack-0.0.4.tar.gz.

File metadata

  • Download URL: aiohttp-webpack-0.0.4.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.2

File hashes

Hashes for aiohttp-webpack-0.0.4.tar.gz
Algorithm Hash digest
SHA256 9987ded4a3ef36c6dd859b4c75aad073d154727bf9c5461f7a350153cb41d3ed
MD5 6ed706346641a5fbe14e1e1b34ed9b7c
BLAKE2b-256 683c418d030cb62335959e5237d9f76e69cfb752b21d081b0484fe78db7271ff

See more details on using hashes here.

File details

Details for the file aiohttp_webpack-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: aiohttp_webpack-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 3.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.2

File hashes

Hashes for aiohttp_webpack-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 79d68fdbae18089078c90e22a5f5380d7f489a406894eb0fc39dfae0f44154a9
MD5 d6339744cffba78b199ef6293a032598
BLAKE2b-256 2c6429127ff7da5ae90f3bf7b27effb0a7838f3b3450bacc189b16ffcf80bd7c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page