Getting Started
Git Setup
Hardstand deploys directly from Git. Here is what your repository needs to look like and how to connect private repos.
Public repositories
No setup needed. Paste the HTTPS clone URL of any public repo ending in .git and Hardstand will clone it without any credentials.
https://github.com/your-username/my-project.git https://gitlab.com/your-username/my-project.git
Private repositories
Connect your GitHub or GitLab account via OAuth — Hardstand stores an access token so it can clone private repos on your behalf. You only need to do this once per provider.
- 01In the Create Project dialog, click the GitHub or GitLab button.
- 02A popup opens — authorise Hardstand to read your repositories.
- 03The picker loads your repos. Search by name and click one to select it.
- 04Your connection is saved — all future deployments use the stored token automatically.
Branch selection
Hardstand defaults to main. If your default branch is masteror anything else, update the branch field in the Create Project form before deploying. When a repo is selected via the picker the branch is set automatically from the repo's default.
Repository requirements
Framework file must be in the repo root
next.config.js, package.json, go.mod, Cargo.toml, pom.xml, manage.py, etc. — one of these is how Hardstand identifies your framework.
Lock files should be committed
package-lock.json, yarn.lock, Cargo.lock, go.sum — committing them makes builds faster and reproducible.
Do not gitignore your source files
Hardstand builds from source. Make sure source code, requirements.txt, and any config files are committed.
Build artefacts (dist/, .next/, target/) can stay gitignored
Hardstand runs the build step itself inside Docker. You do not need to commit compiled output.
Recommended .gitignore additions
These paths are safe to ignore — Hardstand never needs them in the repo:
# Build output — Hardstand builds these itself .next/ dist/ build/ target/ # Runtime secrets — use the Env Vars dashboard instead .env .env.local .env.production # OS / editor noise .DS_Store *.swp