010101

npm install means "install the packages defined in dependencies in packages.json". Those end up in node_modules folder.

npm run dev means "run the dev script defined in packages.json". Which maps to webpack --mode development --watch, which launches webpack. Webpack automatically reads the webpack.config.js file, which imports a default configuration for Flarum from the flarum-webpack-config dependency.

    clarkwinkelmann Cool. Ok. Every little bit I hear from you and others is helping. I guess when you do a yarn command in your tutorials you are doing something a little different. Or, just another way to do something.

    I've discovered Google Cloud Shell and maybe I'm getting my hopes up, but with Google Cloud Shell, I might be able to get close or 100% to being able to develop Flarum extensions on my Chromebook.

    https://console.cloud.google.com/cloudshell

      010101 Class 'ClarkWinkelmann\Poke\Extenders\ForumAttributes' not found

      In vendor/composer/autoload_static.php, find the array prefixDirsPsr4, and add:

          'ClarkWinkelmann\\Poke\\' =>
          array (
              0 => __DIR__ . '/..' . '/clarkwinkelmann/flarum-ext-poke/src',
          ),

      010101 I did see that in the extend file the forum/admin JavaScript was pointing to a dist folder which doesn't exist

      Yes, I did encounter that issue too. So, I ended up moving admin.js and forum.js into a /dist folder 🤪

      So finally, have you installed the extension successfully? 😅

      As I said in the video, javascript dist files were not included in git due to the extension being a demo. So you have to run yarn install and yarn build (or dev) before you can use it 😉

        clarkwinkelmann Arhhh.. sorry for not taking full attention in the class 😅

        EDIT: Yassssss!!! I manage to install it on my Flarum finally 😄 😄 😄 It works like a charm 🤟

        010101 I guess when you do a yarn command in your tutorials you are doing something a little different.

        It has the same effect. npm is the original package manager for Node.js that was born about 10 years ago. The company maintains the npmjs.com website, the npm public registry and the npm terminal utility that is usually bundled with Node.js.

        The npm history is quite bumpy, and there was a period where very little improvements were made to the npm CLI. One of the main problems was that it was veeery slow to install packages (still faster than composer though). It also had some other annoying bugs and weird behaviours.

        So some alternatives were born, the most popular being yarn by Facebook. yarn still uses the npm public registry (it actually mirrors it on Facebook's servers) but provides a different terminal utility that does similar things, presumably better. It was a common opinion that it was true (and a fact wrt performance), at the time, but today npm is much better than it was and has catched up on many aspects, so as far as I'm concerned there aren't many reasons to prefer yarn over npm today. I found npm to be actually faster than yarn in my limited testing.

        In short, I would suggest to stick with npm unless you have a real reason for not using it. There's a lot more documentation and resources about npm than yarn on the web.

          jvloo I think I should just stick to npm?

          I think it's easier unless you have particular needs or something to complain about npm

          6 days later
          7 days later

          Join me live in 2 hours at 20:30 CET / 18:40 UTC

          We will be adding new features to the Linguist extension.

            Thanks to the live viewers for joining! Things didn't go as smoothly as I expected and I'm more tired than I anticipated, so I'm ending this stream early. If you really want to rewatch it the unlisted video is here, but I didn't achieve much in that hour, and hit some issues I'm too tired to troubleshoot this evening 🥱

            Maybe I'll do another stream this weekend to compensate. I'll need another idea though, the features I wanted to add to Linguist require more thinking before I get back to them.

              6 days later

              Woop I forgot to post an update here before my usual stream time.

              This week and next week's stream won't take place on Thursdays. I'm hoping to do it Saturday or Sunday night instead. I'll schedule the stream on YouTube and post about it here when I know which day works best.

              I'll come back to Thursdays afterwards.

              9 days later

              I had some issues the last few weeks but I'm back. Next stream tonight, 20:30 CET / 18:30 UTC.

              And I should be able to resume streaming on Thursdays next week.

              5 days later