<div dir="ltr"><div>While playing around with Heroku, I decided to try their new-ish ability to build and deploy apps from a Dockerfile, rather than the buildpack method which has some limitations. Also, I wanted to be able to run a recent version of Ur/web.</div><div><br></div><div>First, I created a Docker image with Ur/web built from master, with dependencies installed, and pushed it to Docker hub:</div><div><br></div><div><a href="https://hub.docker.com/r/destynova/urweb">https://hub.docker.com/r/destynova/urweb</a></div><div><br></div><div>Then I made a small app that includes a heroku.yml and a Dockerfile that extends the compiler image in Docker Hub, so pushing with "git push heroku master" triggers the build and deploy. It takes about 70 seconds for me. It's a very simplistic app with no database interaction (I configured it to use a dummy SQLite database with no content). The source is here:</div><div><br></div><div><a href="https://github.com/DestyNova/memvalid">https://github.com/DestyNova/memvalid</a></div><div><br></div><div>It's running on a free Heroku dyno and available here for the time being:</div><div><br></div><div><a href="https://memvalid.herokuapp.com/">https://memvalid.herokuapp.com/</a></div><div><br></div><div>Might be handy if you're thinking of trying Heroku or any other system that can deploy from a Docker image.</div><div><br></div><div>Oisín<br></div><div><br></div><div>PS. I also noticed while writing the app that Ur/web seems to be lacking some basic string-handling functions. To get the basic feature of the app working, I implemented a couple of them that might be good to have in the stdlib, or maybe could live as a standalone library (I don't know exactly how this is managed in Ur/web). For example:</div><div><br></div><div>fun explode (txt: string) : list char</div><div>fun tokens (txt: list char) (p: char -> bool) : list string</div></div>