О рабочих областях в Firebase Studio

Firebase Studio предоставляет облачную среду разработки для совместной работы, которая упрощает процесс создания приложений благодаря широкому набору фреймворков и библиотек .

After you set up a Firebase Studio workspace, you can access and share a fully-functional, flexible development environment: Firebase Studio workspaces are accessible from any device and provide integrated tools to streamline you and your team's development process.

Создайте рабочее пространство

В Firebase Studio рабочая область — это среда разработки, содержащая все необходимое для создания вашего приложения. Она включает в себя ваш код, редактор кода (с плагинами, подходящими для вашего проекта) и наборы инструментов, поддерживающие разработку приложений. Это похоже на создание нового проекта в вашей локальной среде разработки на рабочем столе, за исключением того, что у вас есть целый компьютер и операционная система, предварительно настроенные и предназначенные исключительно для создания вашего приложения, работающего в вашем браузере в облаке и доступного из любого места.

Firebase Studio workspaces are optimized to contain a single codebase, so you can keep the environments and system-level dependencies of different applications isolated from each other. You can create multiple workspaces to use with different applications and frameworks.

Чтобы создать новое рабочее пространство:

Дублирование рабочего пространства

Duplicating a Firebase Studio workspace creates a copy of your project that contains everything within the home/user directory. This is useful when you want to experiment with a project without affecting the original, or when you want to use an existing project as a starting point for a new one.

Для создания дубликата рабочего пространства:

  1. На главной странице Firebase Studio щелкните меню рядом с рабочей областью, которую хотите скопировать, > Дублировать .
  2. Enter the name of your new workspace and click Duplicate . The new workspace is created and added to your list of workspaces. ß Note: Duplicating larger workspaces can take several minutes. If your new workspace doesn't load, wait 5 minutes, then refresh the page.

  3. (Optional) If the original workspace has a linked Firebase project, consider creating a separate Firebase project for your new workspace. This prevents your new workspace from making changes to the Firebase project linked to your original workspace. To create a Firebase project:

    1. Откройте новое рабочее пространство и попросите Gemini создать для вас проект Firebase.
    2. Обновите все файлы, которые ссылаются на проект Firebase, например .env или .firebaserc .

Настройте рабочее пространство

Firebase Studio uses Nix to define the environment configuration for each workspace. Nix is a purely functional package manager and assigns unique identifiers to each dependency, which ultimately means your environment can contain multiple versions of the same dependency, seamlessly. It is also reproducible and declarative. In the context of Firebase Studio , this means you can share your Nix configuration file across workspaces to load the same environment configuration. Learn more about Nix + Firebase Studio .

Создайте или отредактируйте файл .idx/dev.nix

Конфигурация среды определяется в файле .idx/dev.nix в вашем репозитории кода. Этот файл определяет все компоненты, которые необходимо добавить в ваше рабочее пространство, включая:

Пример файла .idx/dev.nix , демонстрирующего базовую конфигурацию рабочей среды, позволяющую просматривать предварительный просмотр приложений в Firebase Studio , приведен в следующем примере:

{ pkgs, ... }: {

  # Which nixpkgs channel to use.
  channel = "stable-23.11"; # or "unstable"

  # Use https://search.nixos.org/packages to find packages
  packages = [
    pkgs.nodejs_20
  ];

  # Sets environment variables in the workspace
  env = {
    SOME_ENV_VAR = "hello";
  };

  # Search for the extensions you want on https://open-vsx.org/ and use "publisher.id"
  idx.extensions = [
    "angular.ng-template"
  ];

  # Enable previews and customize configuration
  idx.previews = {
    enable = true;
    previews = {
      web = {
        command = [
          "npm"
          "run"
          "start"
          "--"
          "--port"
          "$PORT"
          "--host"
          "0.0.0.0"
          "--disable-host-check"
        ];
        manager = "web";
        # Optionally, specify a directory that contains your web app
        # cwd = "app/client";
      };
    };
  };
}

Применить новую конфигурацию

Any time you add or update the dev.nix configuration file, Firebase Studio shows a prompt in the bottom-right corner to Rebuild the environment . The time it takes to rebuild the environment depends on the number of packages your configuration needs.

Сбои сборки в среде отладки

Поскольку конфигурационные файлы представляют собой машиночитаемый код, в них могут содержаться ошибки. В этом случае сборка среды может завершиться неудачей, и она не запустится. Firebase Studio отображает возможность запуска среды восстановления . Эта рабочая область не включает в себя никакие из определенных вами конфигураций и просто запускает базовый Code OSS . Это дает вам возможность исправить ошибки в вашем конфигурационном файле dev.nix и пересобрать среду.

Следующие шаги