# Terms you will come across

Repository, commit, pipeline, server, Docker, and workspace are terms you will meet constantly on the Application Platform, and each of them is explained briefly and in relation to the platform.

> Source: https://www.application-platform.com/en/docs/basics/

## Repository

A repository, or repo for short, is a folder with your code and its change history. Every building block of your project has its own repository in GitLab; locally you work in a copy.

## Git, commit, and push

Git manages the change history; a commit is a saved snapshot with a short message, and a [push]({{< relref "save-and-publish" >}}) uploads commits to GitLab. A push to `main` starts the pipeline.

## Terminal

The terminal is a window for text commands; on Windows it is called Terminal or PowerShell, in VS Code or Cursor you open it from the **Terminal** menu. You mainly need it for `ap run-local` and `ap login`.

## Server

A [server]({{< relref "servers" >}}) is a computer on the internet that serves your application; backends, web apps, and homepages need one, pure mobile apps do not. Under **Servers** you add your own server, a cloud server at Hetzner or Hostinger, or a managed server.

## Domain and DNS

A [domain]({{< relref "domain" >}}) is the readable name of your application, such as `example.com`; DNS translates it into your server's address through records at your domain provider. Under **Domains** the platform shows the required records and checks them.

## Pipeline and deployment

A [pipeline]({{< relref "what-are-pipelines" >}}) is a chain of automated steps after every push: test, calculate the version, build, and distribute. Deployment puts a build on a server, automatically on dev after every push to `main` and on prod with a click.

## AI agent

An [AI agent]({{< relref "work-with-ai-agents" >}}) such as Claude Code, Cursor, or Codex reads your code, writes changes, and runs commands. In every project it follows the rules in `AGENTS.md`, and with the agent plugin it creates, imports, and clones projects.

## Docker

Docker packages an application with everything it needs into a container. The pipeline builds a Docker image for the server from a backend or web app. Locally, `ap run-local` needs Docker Desktop for the Docker services of a backend.

## Environment variables

[Environment variables]({{< relref "environment-setup" >}}) are settings an application reads when it starts, such as the address of the backend. They live in the `env/` folder of each repository; the platform writes files with `generated` in their name, and your own values belong in `custom` files such as `env/local.custom.env`.

## Workspace

The local workspace is the folder `~/Documents/application-platform/` into which the setup app clones your projects. A [remote workspace]({{< relref "setup-your-computer" >}}) is a development machine in the cloud that you create under **Workspaces** and use via remote desktop or in the browser.

## Organization and project

An organization is the frame for your team with members, billing, servers, and connections. A project is a product within it with its own GitLab group. Administrators manage organization, projects, and access; developers work on assigned projects.

Now you can [create your first project]({{< relref "getting-started" >}}) or [bring in an existing project]({{< relref "import-existing-project" >}}).

