Documentation Index
Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
Use this file to discover all available pages before exploring further.
Introduction
To develop and host on Square Cloud, it’s essential to follow a structured sequence of configurations and prerequisites. This technical guide will cover the entire process, from initial setup to production deployment.Prerequisites
- Square Cloud Account: Register through the signup page using your email.
- Active Paid Plan: Ensures dedicated resources and optimized performance for your application. Check our available plans and choose the most suitable for your needs.
Creating project
Before starting, make sure you have Node.js (>= 18.x) and npm installed on your system. If you don’t have them yet, download them from the official Node.js website.Installing the Remix CLI
To create and manage Remix applications, install the Remix CLI globally:Developing project
Now create a new Remix project with:For Square Cloud, the Node.js server option is recommended. After creation, navigate into your project and install dependencies:
http://localhost:5173/.
Basic Route Example
Remix routes are file-based. Here is a simple example of a route inapp/routes/_index.tsx:
Building project
Build the production output before uploading:Choosing a production server
To serve your remix in production you need a server. You can create your own or use existing ones.Remix serve
You can use the remix webserver to serve it. You can do this by runningremix-serve command with the dist folder.
Check the example below:
Deploying
After preparing your project files, you can now upload them to Square Cloud and host your project. To do so, create a ZIP file containing all your project files.Via dashboard
Access the Upload Page
Access the upload page and upload your project zip file.
Configure Your Environment
After uploading your zip, you will need to configure the name, main file or runtime environment and other settings for your project.
If you are uploading a web project, make sure to select “Web Publication” and set a subdomain to your project.
If you are uploading a web project, make sure to select “Web Publication” and set a subdomain to your project.
Via CLI
To use this method, you need to create a config file namedsquarecloud.app in the root directory of your project. This file will contain the necessary configuration for your project.
Learn more about: how to create the configuration file for Square Cloud.
The squarecloud.app file is a configuration file that will be used to configure your application; it will be used to define your environment.
Install the CLI
First, you need to have the CLI installed in your environment. If you don’t have it yet, run the following command in your terminal:If you already have it, we recommend updating it. To do this, run the following command in your terminal:
- Windows
- Linux, macOS, and WSL
Authenticate
Now, to authenticate and use other CLI commands, you will find your authorization key here by clicking on “Request API Key”. After obtaining your authorization key, run the following command:
Additional Resources
For more information about Remix, check the official documentation here. It includes comprehensive guides, tutorials, API references, and best practices.Troubleshooting
Custom Domain
To use a custom domain (e.g.,
mysite.com) instead of the default URL mysite.squareweb.app, you need the Standard plan or higher. The subdomain is defined by the SUBDOMAIN field in the configuration file. See: How to set up your custom domain.Minimum RAM Requirements
Minimum: 512MB RAM for simple websites/APIs. For sites with frameworks (Next.JS, React, Vue, Angular, etc.), we always recommend at least 1GB RAM. For larger applications, allocate more RAM to prevent the application from running out of memory and crashing.
Could not find this site.
Check if the subdomain/domain matches what’s configured in the SUBDOMAIN field or in the custom domain settings. If you just uploaded the site, wait up to 60 seconds for Square to enable first access.

Site took too long to respond…
Check if you correctly configured port 80 and host 0.0.0.0 in the application. We recommend using Square’s forced environment variables: PORT and HOST from the 
.env file.


