Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>staklinkNew to Visual Studio Code? Get it now.
staklink

staklink

stakwork

|
145 installs
| (0) | Free
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

staklink

VSCode extension for automating development and debugging in Codespaces.

staklink is set up for Codespaces running one or more repositories in the /workspaces directory.

processes

There are 2 ways to configure your dev processes (like your backend, frontend, db, etc)

pm2

In your .devcontainer folder, add a pm2.config.js file. This can be used to manage your dev processes using pm2.

For example:

module.exports = {
  apps: [
    {
      name: "sphinx-tribes-backend",
      script: "./sphinx-tribes",
      cwd: "/workspaces/sphinx-tribes",
      instances: 1,
      autorestart: true,
      watch: false,
      max_memory_restart: "1G",
      env: {
        RESTART: "true",
        REBUILD_COMMAND: "go build -o sphinx-tribes",
        POST_RUN_COMMAND: "./seed-dummy-data.sh",
      },
    },
    {
      name: "sphinx-tribes-frontend",
      script: "npm",
      args: "run start:codespace",
      cwd: "/workspaces/sphinx-tribes-frontend",
      instances: 1,
      autorestart: true,
      watch: false,
      max_memory_restart: "1G",
      env: {
        NODE_ENV: "development",
        INSTALL_COMMAND: "yarn install",
      },
    },
  ],
};

The above config runs the backend and the frontend. In the env section:

  • RESTART: will make the service rebuild and restart if needed (when code is updated)
  • REBUILD_COMMAND: a custom "rebuild" command
  • INSTALL_COMMAND: a custom dependency installation step
  • POST_RUN_COMMAND: arbitrary command to run after a service starts (such as seeding DB with dummy data)
  • PORT: port number, to let external workflows know which port maps to which service

docker-compose.yml

In your .devcontainer folder, add a docker-compose.yml file. This can be used to manage long-running processes that don't need to be controlled, rebuilt, or customized (like a database)

For example:

version: "3.8"

volumes:
  postgres-data:

services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    env_file:
      - .env

    volumes:
      - ../..:/workspaces:cached

    # Overrides default command so things don't shut down after the process ends.
    command: sleep infinity

  db:
    image: postgres:latest
    restart: unless-stopped
    volumes:
      - postgres-data:/var/lib/postgresql/data
    env_file:
      - .env

This config runs the dev container (app), and the backend database (db).

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft