<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>stafford williams</title>
    <description>clip-navigator dev</description>
    <link>https://staffordwilliams.com/dev/</link>
    <pubDate>Sun, 01 Nov 2026 10:13:19 GMT</pubDate>
    <lastBuildDate>Sun, 01 Nov 2026 10:13:19 GMT</lastBuildDate>
    <generator>Astro</generator>
    <item>
      <title>clip-navigator: Update to vite</title>
      <description>&lt;p&gt;&amp;lt;h2 id=&amp;quot;v4-0&amp;quot;&amp;gt;&amp;lt;time datetime=&amp;quot;2023-01-19&amp;quot;&amp;gt;Jan 19&amp;lt;/time&amp;gt; Update to vite &amp;lt;span&amp;gt;v4.0&amp;lt;/span&amp;gt;&amp;lt;/h2&amp;gt;&lt;/p&gt;&lt;p&gt;Upon updating the json payload for Bubble Bubble that ships with &lt;a href=&quot;https://github.com/staff0rd/clip-navigator&quot;&gt;clip-navigator&lt;/a&gt; I discovered two problems:&lt;/p&gt;&lt;p&gt;- The json is bundled with the build - The build doesn&apos;t work with node 18&lt;/p&gt;&lt;p&gt;Considering a &lt;code&gt;package-lock.json&lt;/code&gt; drop and re-install didn&apos;t work, an upgrade dependencies was in order. This included:&lt;/p&gt;&lt;p&gt;- CRA v4 🤢 -&amp;gt; vite v4 - React v17 -&amp;gt; React v18 - Material UI v4 &amp;gt; mui v5&lt;/p&gt;&lt;p&gt;mui doesn&apos;t support &lt;code&gt;makeStyles&lt;/code&gt; any more however &lt;a href=&quot;https://www.tss-react.dev/&quot;&gt;tss-react&lt;/a&gt; is very similar and quite simple to migrate with &lt;a href=&quot;https://mui.com/material-ui/migration/migrating-from-jss/#2-use-tss-react&quot;&gt;the associated Codemod&lt;/a&gt;.&lt;/p&gt;</description>
      <pubDate>Thu, 19 Jan 2023 00:00:00 GMT</pubDate>
      <link>https://staffordwilliams.com/dev/clip-navigator/2023-w03/</link>
      <guid isPermaLink="true">https://staffordwilliams.com/dev/clip-navigator/2023-w03/</guid>
      <category>clip-navigator</category>
    </item>
    <item>
      <title>clip-navigator: vzPlayer support, mobile support</title>
      <description>&lt;p&gt;&amp;lt;h2 id=&amp;quot;v2-0&amp;quot;&amp;gt;&amp;lt;time datetime=&amp;quot;2021-03-09&amp;quot;&amp;gt;Mar 9&amp;lt;/time&amp;gt; vzPlayer Support &amp;lt;span&amp;gt;v2.0&amp;lt;/span&amp;gt;&amp;lt;/h2&amp;gt;&lt;/p&gt;&lt;p&gt;Clip Navigator now supports the Vzaar video player, which is what most of the videos submitted to &lt;a href=&quot;https://www.twingalaxies.com/game/bubble-bobble/mame/points-1-player-only/&quot;&gt;Twin Galaxies&lt;/a&gt; use. There was no readily available npm package for the vzaar player so I had to instead write a wrapper around around &lt;a href=&quot;https://developer.vzaar.com/docs/player-api&quot;&gt;their javascript API&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;The data schema is updated to support a &lt;code&gt;type&lt;/code&gt; of either YouTube or Vzaar and the player will automatically switch based on the &lt;code&gt;type&lt;/code&gt; of the currently selected video.&lt;/p&gt;&lt;p&gt;Support for Twin Galaxies videos means I&apos;ll be able to include a lot more videos in the &lt;a href=&quot;/bubble-bobble#videos&quot;&gt;bubble bobble comparison&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&amp;lt;h2 id=&amp;quot;v3-0&amp;quot;&amp;gt;&amp;lt;time datetime=&amp;quot;2021-03-11&amp;quot;&amp;gt;Mar 11&amp;lt;/time&amp;gt; Mobile support &amp;lt;span&amp;gt;v3.0&amp;lt;/span&amp;gt;&amp;lt;/h2&amp;gt;&lt;/p&gt;&lt;p&gt;Getting clip navigator to not look like garbage on mobile required &lt;a href=&quot;https://css-tricks.com/fluid-width-video/&quot;&gt;wrapping the video iframes using this technique&lt;/a&gt; and switching out the iframe that embeds the react app into &lt;a href=&quot;/bubble-bobble#videos&quot;&gt;the blog&lt;/a&gt; with the script and link tags generated by create-react-app.&lt;/p&gt;&lt;p&gt;Embedding the clip-navigator directly into the page required parsing the index.html that is built by create-react-app, querying for all links and scripts, and outputting them to a new file called out.html. I do this in &lt;a href=&quot;https://github.com/staff0rd/clip-navigator/blob/main/src/package.js&quot;&gt;package.js&lt;/a&gt; and then move the file to my jekyll &lt;code&gt;_includes&lt;/code&gt; folder for generation when the blog deploys.&lt;/p&gt;&lt;p&gt;Finally, I moved the clip tools into their own drop-down menu and changed the hotkeys, hence the major version bump. Still some work to have mobile auto-play.&lt;/p&gt;</description>
      <pubDate>Thu, 11 Mar 2021 00:00:00 GMT</pubDate>
      <link>https://staffordwilliams.com/dev/clip-navigator/2021-w10/</link>
      <guid isPermaLink="true">https://staffordwilliams.com/dev/clip-navigator/2021-w10/</guid>
      <category>clip-navigator</category>
    </item>
    <item>
      <title>clip-navigator: Export &amp; Hot Keys</title>
      <description>&lt;p&gt;&amp;lt;h2 id=&amp;quot;v1-1&amp;quot;&amp;gt;&amp;lt;time datetime=&amp;quot;2021-03-07&amp;quot;&amp;gt;Mar 7&amp;lt;/time&amp;gt; Export &amp;amp;amp; Hot Keys &amp;lt;span&amp;gt;v1.1&amp;lt;/span&amp;gt;&amp;lt;/h2&amp;gt;&lt;/p&gt;&lt;p&gt;I&apos;ve implemented &lt;a href=&quot;https://github.com/staff0rd/clip-navigator/issues/1&quot;&gt;JSON export&lt;/a&gt; which makes building the data Clip Navigator needs easier - an export button now exists to copy the JSON payload directly to the clipboard, rather than snooping around in browser storage to find it.&lt;/p&gt;&lt;p&gt;Clicking buttons also felt a bit slow when creating and removing clips, so I&apos;ve added some more keyboard shortcuts to speed this process up:&lt;/p&gt;&lt;p&gt;- Z - New clip at current location - X - Delete last clip - Left Arrow - Scrub -5sec - Right Arrow - Scrub +5 sec&lt;/p&gt;</description>
      <pubDate>Sun, 07 Mar 2021 00:00:00 GMT</pubDate>
      <link>https://staffordwilliams.com/dev/clip-navigator/2021-w09/</link>
      <guid isPermaLink="true">https://staffordwilliams.com/dev/clip-navigator/2021-w09/</guid>
      <category>clip-navigator</category>
    </item>
  </channel>
</rss>
