How to easily edit my site remotely?

AI-generated summary

In a discussion titled “How to easily edit my site remotely?” under the Dev category, 45thj5ej seeks a more efficient workflow for editing a custom Discourse theme hosted on GitHub, as manually pushing changes and updating via the Admin panel is tedious. bryce recommends using the Discourse Theme CLI, which can watch a local directory and auto-apply changes. 45thj5ej confirms setup success but asks whether PowerShell must remain open for monitoring and if a Docker container could automate this on Windows. They also inquire where to add the suggested gem 'wdm', '>= 0.1.0' if Gem.win_platform? line to avoid polling. After exploring directories, they locate a Gemfile and discourse_theme.gemspec in the installed gem folder, questioning which file should be edited. The gemspec file appears to list dependencies but doesn’t accept direct gem additions — the correct place to add the wdm gem is likely the Gemfile in the local theme project directory (not the gem’s internal files), though this isn’t explicitly confirmed in the thread. The user’s deeper need is for a seamless, automated local-to-live theme editing experience without manual deployment steps.

So, mostly asking about themes here. When I made a custom local theme, I simply went in and changed CSS/HTML and clicked save. Well, now I host my custom theme on GitHub, but it is beyond annoying for any tiny little change I want to make, I have to make the change, push it to GitHub, then update my theme in Admin panel just to see the tiniest changes I’m making. Is there any easier way?

Check out the Discourse Theme CLI. It lets you ‘watch’ a directory for changes and automatically apply them.

Ok, I ran all the commands and my PowerShell is telling me:

» Watching for changes in C:/Users/User/Documents/SiteStuff/discourse-air-theme...
  Please add the following to your Gemfile to avoid polling for changes:
    gem 'wdm', '>= 0.1.0' if Gem.win_platform?

So I guess I did it, right? So, my main question now is: Do I have to keep PowerShell open for it to monitor those changes? If so, can I somehow make a Docker container for this to run in on my Windows PC? Also, where even is my gem file so I can add that gem 'wdm', '>= 0.1.0' if Gem.win_platform? line to it?

Ok, so I found some Gemspec source files at:
C:\Users\User.local\share\gem\specs\index.rubygems.org%443\quick\Marshal.4.8
But when I open them in Notepad or Visual Studio Code, they’re foreign characters (gibberish). Maybe these aren’t the right files?

EDIT: Ok, found some more here:
C:\Ruby33-x64\lib\ruby\gems\3.3.0\gems\discourse_theme-2.1.0
I do see a Gemfile that says:

# frozen_string_literal: true
source "https://rubygems.org"

git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }

# Specify your gem's dependencies in discourse_theme.gemspec
gemspec

Do I put it here somewhere? There’s also a “discourse_theme.gemspec” file that isn’t gibberish, that has this in it:

# frozen_string_literal: true

lib = File.expand_path("../lib", __FILE__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require "discourse_theme/version"

Gem::Specification.new do |spec|
  spec.name = "discourse_theme"
  spec.version = DiscourseTheme::VERSION
  spec.authors = ["Sam Saffron"]
  spec.email = ["sam.saffron@gmail.com"]

  spec.summary = "CLI helper for creating Discourse themes"
  spec.description = "CLI helper for creating Discourse themes"
  spec.homepage = "https://github.com/discourse/discourse_theme"
  spec.license = "MIT"

  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }

  spec.bindir = "bin"
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
  spec.require_paths = ["lib"]

  spec.required_ruby_version = ">= 3.0.0"

  spec.add_runtime_dependency "minitar", "~> 0.6"
  spec.add_runtime_dependency "listen", "~> 3.1"
  spec.add_runtime_dependency "multipart-post", "~> 2.0"
  spec.add_runtime_dependency "tty-prompt", "~> 0.18"
  spec.add_runtime_dependency "rubyzip", "~> 2.3"
  spec.add_runtime_dependency "selenium-webdriver", "> 4.11"

  spec.add_development_dependency "bundler"
  spec.add_development_dependency "rake"
  spec.add_development_dependency "minitest"
  spec.add_development_dependency "guard"
  spec.add_development_dependency "guard-minitest"
  spec.add_development_dependency "webmock"
  spec.add_development_dependency "rubocop-discourse", "~> 3.6.0"
  spec.add_development_dependency "m"
  spec.add_development_dependency "syntax_tree"
  spec.add_development_dependency "mocha"
end

Is it this? I just need to know where to put gem 'wdm', '>= 0.1.0' if Gem.win_platform?