{% load static %} <!DOCTYPE html5> <meta charset="utf-8"/> <head> <script type="text/javascript" src="{% static 'js/instascan.min.js' %}"></script> </head> <body> <video id="preview" autoplay style="width: 500px; height: 500px; border: 1px solid green;"></video> <script type="text/javascript"> let scanner = new Instascan.Scanner({ video: document.getElementById('preview') }); scanner.addListener('scan', function (content) { // This should ensure we start with the lca base domain! window.location.href = content; }); function startCamera(cameras) { scanner.start(cameras[0]); } function errorCamera(error) { console.error(e); } Instascan.Camera.getCameras().then(startCamera).catch(errorCamera); </script> </body>