Big Fun Cloud early access

Getting Started with Big Fun Cloud

Big Fun Cloud has everything needed to make and host exciting web apps. In this guide, we'll make and deploy a Python Flask app with just 3 clicks, and extend it using Big Fun Cloud's powerful IDE.

Often I get ideas for making apps, but I'm put off by the big pain of setting things up. Configuring my IDE, setting up Docker images, choosing a cloud provider, updating and securing the VM, installing a database: a never-ending list of choices and dollars spent. With Big Fun Cloud, I can focus on building, and the tedious details are all taken care of.

All I have to do to create a new app: log in with GitHub, pick a name, and choose a template.

When I click Get started, Big Fun Cloud will create a new GitHub repository with all the code I need to get started. Then I'm immediately brought to the Big Fun Cloud IDE. In the IDE, I can write my program's code, push it to GitHub, deploy the app, see logs, and much more. When the IDE opens for the first time, a hot-reloading dev server is immediately available on the right, and the project is deployed to production automatically:

After a few seconds, the production deploy completes, and my app is live and running on the web! In the IDE, the Open button links to https://excellent-example.bigfuncloud.com/, the app's first home on the web.

Each app runs in a secure microVM, isolated from all other applications, similar to the platform used by AWS Lambda. The VM only runs when the app is used, so there's no need to worry about paying for a 24/7 server. Creating a small, new app will not be expensive. Despite this, the VM loads in less than 1 second, so you never have to wait.

My app is ready to go and so am I! Time to build a new feature. The template I chose includes Flask, a simple web framework for Python. On the left side of the screen, I can see all the files generated. When I click main.py, I see the code, and I can edit it with full support from the IDE. I'm writing a new handler to generate a random number to tell me how much to pay for a Bitcoin:

While writing the code, I get full syntax highlighting, the editor tells me when I make a typo, and it helps me remember function names. Behind the scenes, Big Fun Cloud uses the same text editor as VS Code, and connects to the same language servers used by most modern code editors.

Once I'm done editing, I press ⌘ + S (Windows and Linux: Control + S) to save my file. After browsing to my new URL (/random) in the pane on the right, I can instantly see changes:

Finally, I press the Deploy Prod button to deploy my changes to the live production website. Behind the scenes, this creates and uploads a Docker image to the Big Fun Cloud backend. The new image will be used the next time I open the production site.

If I want to, I can completely customize the build process in bigfuncloud/deploy.sh and the Dockerfile. For example, I can add custom Debian packages and third-party programs--anything that can run on a Linux box. Nothing here is specifically tied to Big Fun Cloud: I could clone the repository to my laptop, run the build script, and deploy the app to my previously favorite cloud hosting provider.

While the build is running, I can see progress in the Last Deploy tab at the bottom of the screen. After the build completes in just a few seconds, my changes are live:

By default, my app is only visible to me: private and hidden to anyone else on the web. If someone had the link, they would be asked to log in to use the app. For private apps, no one can see my data. For public apps, I don't have to worry about people seeing them unfinished.

Now that the app is ready and I want to share it with friends, I can make it public through by editing the configuration in bigfuncloud.json. I set private to false, press Deploy Prod, and my app is immediately open to the public:

After I'm finished making changes, I can commit and push to the main GitHub branch through the IDE Shell. I can use the same Git flows I'm used to on my laptop.

Big Fun Cloud has many more features to support building great apps:

  • Full-fledged PostgreSQL database for every app to store your data
  • Cron jobs to automatically run code on a set schedule
  • Full root shell access to each of the VMs running the app
  • Detailed logging to see what your app is doing and who is accessing it
  • Support for many programming languages besides Python

Thanks for using Big Fun Cloud. If you run into problems or have questions or wishes, please let us know. We can't wait to see what you'll build.