Software Development


Source code management

Fast and scalable Git hosting and streamlined source code management.

Source code management
  • Host, mirror, and import Git repositories.
  • Keep your main branch green with quality gates, push restrictions, protected branches, Safe Merge, and CI/CD integration.
  • Browse and edit the code, trace the commit history of every build, and compare revisions.
  • Enjoy seamless integration with JetBrains IDEs.

Learn more about source code management.


Code review

Integrate code reviews seamlessly into your development pipeline.

Code reviews
  • Review code from JetBrains IDEs, the Space UI, and on mobile.
  • Use CI/CD server build status as quality gate criteria for merge requests.
  • Catch conflicts before actually merging branches using Safe Merge.
  • Automatically assign the right reviewer based on code ownership or file activity.
  • React only when needed with a clear turn-based review model.
  • Send your comments in batches, and accept suggestions in a single click.

Learn more about code reviews.


Integration with JetBrains IDEs

Connect your favorite JetBrains IDE to a Space organization to get access to your repositories, code reviews, merge requests, Automation (CI builds), and packages. Experience the power of built-in Space code reviews right from the IDE, or enjoy even more powerful code reviews from the Space UI.

Space integration is bundled in IntelliJ IDEA starting from 2021.1, in PyCharm starting from 2021.2, and all JetBrains IDEs starting from version 2022.2.

With Space IDE integration you can:

  • Clone Space Git project repositories right from your IDE.
  • Create and perform code reviews with merge requests and discuss code snippets with your teammates from your IDE.
  • Assign and mention team members, and see the related branches in code reviews.
  • View and add reactions in code review chats: quickly react with a Eyes emoji, or react to a long-awaited change with a Party parrot dancing.
  • Easily edit Space Automation scripts in IntelliJ IDEA with code highlighting and automatic code completion.
  • Track an automation job’s progress in the Git log.

Cloud dev environments

Start coding in your IDE in seconds with prebuilt snapshots

Overcome the limits of local machines and slow laptops by keeping your source code safe and secure on a remote machine, with JetBrains’ remote development workflow.

Spin up a preconfigured Space cloud dev environment, connect to your JetBrains IDE, and start coding in seconds. No more waiting for building projects, downloading dependencies, or indexing IDEs.

Standardize your environments by installing all of the tools and libraries required by your project and reproduce them at any time to simplify onboarding. Newcomers can start developing almost instantly instead of wasting hours preparing their local machines.

Learn more about Space dev environments.


Automation

Modern and intuitive ways to organize your continuous delivery pipelines along with a solution for a broad spectrum of automation tasks.

Automate anything

Continuous Integration and Continuous Delivery (CI/CD)

Simple yet powerful CI/CD out of the box: on-the-fly test reporting, parallel execution, local reproducibility (planned), with coverage for major technical stacks like Gradle and Docker.

Continuous Integration and Continuous Delivery

Deployments

Deployments let you track the delivery of source code changes to a deployment environment, such as a production or staging server, an application store, and others. Deployments can be used with any CI/CD tool of your choice, including Space Automation, JetBrains TeamCity, GitHub Actions, and others.

Commit status API

Configuration as code

Automation in Space is configured using scripts. The Automation UI in Space is used to visualize script results: logs, tests, and artifacts. Space uses a Kotlin-based DSL as its scripting language, with plans to support YAML in the future.

Integrate with other Space modules

In an Automation script, you have access to the Space HTTP API client. This lets you work with any other Space module: send messages to Chats, create articles, access team directory, and much more.

Space Cloud run environments

  • Docker containers running in the Space Сloud infrastructure.
  • Docker containers running on self-hosted machines.
  • Self-hosted machines on Linux, Windows, and macOS.
  • Virtual machines in the Space Cloud infrastructure on Linux.
  • Virtual machines in the Space Cloud infrastructure on Windows and macOS. planned

Space On-Premises run environments

  • Docker containers running in a Kubernetes cluster.
  • Docker containers running on self-hosted machines.
  • Self-hosted machines on Linux, Windows, and macOS.

Integrate with external tools

Get access to an assortment of APIs that connect to external tools and services, including:

  • api.docker: to build and publish Docker images.
  • api.gradle: to build and report tests using Gradle.

In the future, we plan to extend this list to include .NET, npm, Maven, Bazel, and others.

Integration with TeamCity

Space integration with TeamCity, a powerful continuous integration and test reporting tool, allows you to do the following:

  • Publish build statuses in Space
  • Authenticate in TeamCity with a Space account
  • Create projects, build configurations, and VCS roots from a Space repository

Package management

Create and use package repositories in your CI/CD pipelines or from your local machine. Share packages and files between products using Container, Maven, NuGet, Python, Composer, Dart, Rust, npm, and File repositories.

Package management

Apps distribution

Use container registries to distribute your apps as container images, and use them during deployment.

Package dependencies

Use a local repository to store and consume packages privately and mirror repository to mirror an upstream repository, like Maven Central, to keep the required package dependencies as long as you need them.

Powerful search

Find and view package details to understand how it was produced.

Package vulnerability analysis planned

Configure Space to check packages against common vulnerability issues automatically. These checks can be especially helpful before publishing a package to production.

Automatic repository cleanup

Reduce the size of your repository by configuring the auto-deletion of packages you no longer need. Set your conditions to save essential packages from deletion.