blob: 05e84495a801c7ca7c86750cac9491f30985ceb7 (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 | from flask import Flask, make_response, render_template, request
from jinja2 import select_autoescape
import repos
app = Flask(__name__)
app.jinja_options['autoescape'] = select_autoescape(default=True)
@app.route('/')
def hello_world():
    return '<a href="/badge/nushell.svg?crates-io=nu">sample badge for Rust</a>'
@app.route('/badge/<package>.svg')
def badge(package: str):
    args = request.args
    versions = repos.get_versions(package, args)
    newest_version = max(versions.values())
    rendered = render_template('badge.svg.jinja', versions=versions, newest_version=newest_version)
    response = make_response(rendered)
    response.headers['Content-Type'] = 'image/svg+xml'
    return response
if __name__ == '__main__':
    app.run()
 |