Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resolves: Add GitHub Codespaces configuration #1051

Open
wants to merge 137 commits into
base: master
Choose a base branch
from

Conversation

aleks-ivanov
Copy link
Contributor

  • ready-to-start GitHub Codespaces configuration with all necessary tooling

  • in addition, it provides basic tools for:

    • JS development
    • GitHub support
    • overall more pleasant VS Code experience

The configuration consists of:

  • "settings": - a list of VS Code settings to be applied automatically after the Codespace container is created (.editorconfig overrides these)

    • "workbench.colorTheme": "Default Dark+" - sets the theme of the VS Code workbench to the Default Dark+ theme
    • "terminal.integrated.defaultProfile.linux": "pwsh" - sets the default VS Code terminal to PowerShell Core
  • extensions: - a list of VS Code extensions that are automatically installed after the Codespace container is created

    • "coenraads.bracket-pair-colorizer" - sets different colors for each nested pair of brackets
    • "vscode-icons-team.vscode-icons" - provides a huge set of icons for the VS Code explorer
    • "editorconfig.editorconfig" - attempts to override user/workspace settings with those in the .editorconfig
    • "eamodio.gitlens" - provides git information directly inside the code
    • "cschleiden.vscode-github-actions" and "redhat.vscode-yaml" - provide YAML and GitHub Actions support
    • "bierner.markdown-preview-github-styles" and "ban.spellright" - provide assistance with writing Markdown documentation
    • "dbaeumer.vscode-eslint" - most popular linter for JS
    • "ms-vscode.vscode-typescript-next" - JS and TS intellisense support
    • "ecmel.vscode-html-css" - HTML id and class attribute completion
  • "postCreateCommand" - is a string of commands separated by && that execute after the container has been built and the source code has been cloned

  • "build" - declares the Docker configuration that the container would use to run.

  • Dockerfile:

    • "mcr.microsoft.com/vscode/devcontainers/base:0.202.1-alpine3.14" - the Codespace container runs from the fastest and most minimal Linux distro Alpine 3.14 image (0.202.1 is the latest image tagged version)
    • Additional installed tools:
      • nodejs
      • npm

This GitHub Codespace configuration can also be used locally with the Remote - Containers extension for VS Code. It automatically creates and runs a Docker container based on the devcontainer.json configuration inside the repo, so anyone could work on the project from any computer, without the need to install anything other than VS Code and Docker.

Resolves #1050

aleks-ivanov and others added 30 commits August 16, 2021 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add GitHub Codespaces configuration
1 participant