Personalize your Codespace

Completed

GitHub Codespaces is a dedicated environment for you. You can configure your repositories with a dev container to define their default GitHub Codespaces environment and personalize your development experience across all of your Codespaces with dotfiles and Settings Sync.

What you can customize

There are many ways you can customize your Codespace. Let's review each one.

  • Settings Sync: You can synchronize your Visual Studio Code (VS Code) settings between the desktop application and the VS Code web client.
  • Dotfiles: You can use a dotfiles repository to specify scripts, shell preferences, and other configurations.
  • Rename a Codespace: When you create a Codespace, it's assigned an autogenerated display name. If you have multiple Codespaces, the display name helps you to differentiate between Codespaces. You can change the display name for your Codespace.
  • Change your shell: You can change your shell in a Codespace to keep the setup you're used to. When you're working in a Codespace, you can open a new terminal window with a shell of your choice, change your default shell for new terminal windows, or install a new shell. You can also use dotfiles to configure your shell.
  • Change the machine type: You can change the type of machine that's running your Codespace, so that you're using resources appropriate for the work you're doing.
  • Set the default editor: You can set your default editor for Codespaces in your personal settings page. Set your editor preference so that when you create a Codespace or open an existing Codespace, it opens to your default editor.
    • Visual Studio Code (desktop application)
    • Visual Studio Code (web client application)
    • JetBrains Gateway - for opening Codespaces in a JetBrains IDE
    • JupyterLab - the web interface for Project Jupyter
  • Set the default region: You can set your default region in the GitHub Codespaces profile settings page to personalize where your data is held.
  • Set the timeout: A Codespace will stop running after a period of inactivity. By default this period is 30 minutes, but you can specify a longer or shorter default timeout period in your personal settings on GitHub. The updated setting applies to any new Codespaces you create, or to existing Codespaces the next time you start them.
  • Configure automatic deletion: Inactive Codespaces are automatically deleted. You can choose how long your stopped Codespaces are retained, up to a maximum of 30 days.

Additional information and step-by-step instructions regarding customization are located in the Summary unit at the end of this module.

Add to your Codespace with extensions or plugins

You can add plugins and extensions within a Codespace to personalize your experience in JetBrains and VS Code.

VS Code extensions

If you work on your Codespaces in the VS Code desktop application or the web client, you can add any extensions you need from the Visual Studio Code Marketplace. Refer to Supporting Remote Development and GitHub Codespaces in the VS Code documentation for information on how extensions run in GitHub Codespaces.

If you already use VS Code, you can use Settings Sync to automatically sync extensions, settings, themes, and keyboard shortcuts between your local instance and any Codespaces you create.

JetBrains plugins

If you work on your Codespaces in a JetBrains IDE, you can add plugins from the JetBrains Marketplace.