How to easily edit my site remotely?

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.

1 Like

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?