from flask import Flask, make_response, render_template from jinja2 import select_autoescape import repos app = Flask(__name__) app.jinja_options['autoescape'] = select_autoescape(default=True) @app.route('/') def hello_world(): return 'sample badge for Rust' @app.route('/badge/.svg') def badge(package: str): versions = repos.get_versions(package) newest_version = max(v for family in versions.values() for v in family.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()