/features

๐Ÿณ Extra add-in features for Devcontainers and GitHub Codespaces

Primary LanguageShellMIT LicenseMIT

devcontainer features

๐Ÿงฐ Feature addons for @devcontainers

๐Ÿ”ฅHow to generate a feature๐Ÿ”ฅ | List of features | Contributing | Dev wiki | Chat

๐Ÿ’ป Works with devcontainers
โ˜๏ธ Works with GitHub Codespaces
โš ๏ธ We only officially support [debian]-based images

๐Ÿ‘€ Don't see your feature here? Add it yourself or open an Issue!

Usage

VS Code Codespaces Devcontainers

๐Ÿ“„ Complete feature list

Just add a .devcontainer/devcontainer.json file with a features key. It's very similar to package.json's dependencies object, just with the addition of an options object.

๐Ÿ“š Make sure to inspect each feature for feature-specific options!

{
  "image": "mcr.microsoft.com/devcontainers/universal",
  "features": {
    "ghcr.io/devcontainers-contrib/features/deno:": {},
    "ghcr.io/devcontainers-contrib/features/neovim": {}
  }
}

Then, after adding your devcontainer config file, you can open it in GitHub Codespaces, or open it locally using VS Code. Be warned some features will compile things from source code and may take a while!

Development

Devcontainers JSON Bash

โž• Looking to add a new feature? Check out the contributing guide!

This project uses a devcontainer config to outline the development environment. We also provide various VS Code customizations for your coding pleasure.

To get started, create a GitHub Codespace on a copy of this repository. From there, the [dev wiki] provides information about adding features, layout, conventions, etc. When or if you want to contribute your changes back to this repository, you can follow the contributing guide. Happy coding! ๐Ÿ‘‹