Quickstart 🚀

Structure takes the tedium out of deploying websites and web applications, and makes it easy to get back to what's important: building your product. With Structure, deploying your project to the cloud is as simple as running `structure deploy --app hello-world`. There's no need to manage and configure servers, write build scripts, set up load-balancers, generate SSL certificates, or deal with rigid deployment pipelines.

Overview

Currently, Structure supports 3 types of web applications: Python (with Flask), Javascript (with Node), and static websites (standard HTML/CSS/JS). We're actively working on new stacks, too, including Docker. We encourage you to read the specific Quickstart guide for the language you're interested in.

Getting Started

If you're new to Structure, we recommend creating an account and creating an app through the website first. You can do this by clicking New App. Here, you'll be able to name your new app, choose a technology (Python, JS, or static), and choose a plan. Let's create a Flask app called `hello-world`. Once you click "Create", you'll be taken to your app's Dashboard, where you can see its running status, URL, and other useful information. Note that your app has its own live URL that you can visit, so check that link out! You may wonder how the app is running, since you haven't deployed code yet. When you create an app on Structure, we create a few starter code files to get your app up and running. You can then edit them, or replace them entirely with your own files. Again, refer to your language's specific Quickstart guide to learn more about project requirements. At this point, feel free to poke around your app's overview. You can make code changes via the editor, see live analytics and logs, create a hosted database, and more. These are all set up automatically.

Making Changes

Structure has a command-line interface (CLI) that makes it easy to deploy code. First, click here to set up the CLI on your computer. Once you've installed the CLI and logged in via structure login, you're ready to deploy a new app! Let's create a simple static website and deploy it. On your local computer, create a folder called `my-website`, and create an `index.html` file in it. Add some content, too.
mkdir my-website
cd my-website
touch index.html
echo '<h1>This is a great website!</h1>' > index.html
Now, we can deploy this website by running:
$ structure deploy --app my-website --type static
Here, we told Structure to deploy this project folder to the my-website app, and specified it was a static website. Structure created the my-website app on the fly, because it didn't exist before. To see the website's status and URL, run:
$ structure list
Your website is up and running! It's load-balanced, secured with SSL, gathering logs, and being monitored by Structure – all automatically.