João Freitas

Your magic wand to demo Flutter apps!


Ukoreh is a web tool that allows Flutter developers to deploy their projects as web applications, using only their GitHub repository link. The deployment process is pretty straight-forward:

  1. Firstly, the repository is cloned and project dependencies are installed.
  2. Secondly, we build the project targeting the web platform: flutter build web
  3. Thirdly, we copy build/web folder to a GitHub repo root directory and then serve the files as a static website, using GitHub Pages.

All of these steps are executed by a GitHub actions workflow that is triggered once the developer requests a deploy on the web tool. Here’s a swimlane diagram that summarizes the deployment pipeline:

a swimlane diagram describing the steps that take place in each part of the system until the app is deployed

A swimlane diagram describing the steps that take place in each part of the system until the app is deployed


The tool is a joint effort between me and my partner (Rute Santos), being developed between May and July for GitHub + DEV 2023 Hackathon.

We used Svelte + SvelteKit for the tool frontend (codenamed gecgecgecgecgec). To trigger the GitHub action as well as fetching the needed workflow live data, a Cloudflare Worker was deployed (fold). The action workflow is written mostly in bash, inlined directly in the action .yaml file, as well as custom action in TypeScript to fetch the Flutter version that the project requires (actions).


#projects #flutter #svelte #web #cicd #deploy #github actions