<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: John R</title>
    <description>The latest articles on DEV Community by John R (@johns-dev-projects).</description>
    <link>https://dev.to/johns-dev-projects</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3199743%2F6b0401e5-5841-44f7-941c-69da1decbd67.png</url>
      <title>DEV Community: John R</title>
      <link>https://dev.to/johns-dev-projects</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/johns-dev-projects"/>
    <language>en</language>
    <item>
      <title>dev.to is now my blog :)</title>
      <dc:creator>John R</dc:creator>
      <pubDate>Sat, 07 Jun 2025 14:18:37 +0000</pubDate>
      <link>https://dev.to/johns-dev-projects/devto-is-now-my-blog--4kf0</link>
      <guid>https://dev.to/johns-dev-projects/devto-is-now-my-blog--4kf0</guid>
      <description>&lt;p&gt;&lt;strong&gt;link here:&lt;/strong&gt; &lt;a href="https://oneaday.dev/blog" rel="noopener noreferrer"&gt;https://oneaday.dev/blog&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;v0.1&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>html</category>
      <category>javascript</category>
    </item>
    <item>
      <title>100APIsOfCode : Day 3</title>
      <dc:creator>John R</dc:creator>
      <pubDate>Sat, 07 Jun 2025 11:09:57 +0000</pubDate>
      <link>https://dev.to/johns-dev-projects/100apisofcode-day-3-2k8p</link>
      <guid>https://dev.to/johns-dev-projects/100apisofcode-day-3-2k8p</guid>
      <description>&lt;p&gt;&lt;strong&gt;Day 3&lt;/strong&gt;, was way more productive than anticipated.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://oneaday.dev/one-hundred-apis" rel="noopener noreferrer"&gt;https://oneaday.dev/one-hundred-apis&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Two new API endpoints added:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Electric vehicle charge cost per mile.&lt;/code&gt; &lt;/li&gt;
&lt;li&gt;&lt;code&gt;Petrol vehicle fuel cost and cost per mile.&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;I have also updated the UI with a few quality of life additions:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;A dynamic calculation to show how many APIs exist out of the target 100.&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;A sort of home page that contains a brief description of each endpoint.&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;A better cantered UI with a max width limit&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Other stuff:&lt;/strong&gt;&lt;br&gt;
I removed the python &lt;code&gt;Milliseconds to Minutes&lt;/code&gt; calculation and replaced it with &lt;code&gt;Carbon\CarbonInterval&lt;/code&gt; as I felt the calculation was to simple to make use of python. But I will being python back for something heavy later on.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs4hrihbmjg0e20m3t0m3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs4hrihbmjg0e20m3t0m3.png" alt="Image description" width="800" height="422"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>php</category>
      <category>laravel</category>
      <category>vue</category>
    </item>
    <item>
      <title>100APIsOfCode : Day 2</title>
      <dc:creator>John R</dc:creator>
      <pubDate>Sat, 31 May 2025 10:48:14 +0000</pubDate>
      <link>https://dev.to/johns-dev-projects/100daysofcode-day-2-1flb</link>
      <guid>https://dev.to/johns-dev-projects/100daysofcode-day-2-1flb</guid>
      <description>&lt;p&gt;&lt;strong&gt;Day 2&lt;/strong&gt;, was more productive than anticipated.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://oneaday.dev/one-hundred-apis" rel="noopener noreferrer"&gt;https://oneaday.dev/one-hundred-apis&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here is the outline of what has been done:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Vue3.js components updated, adding a way to navigate the APIs as development progresses. I also added a pinia store that drives/binds selection between the dropdown via the &lt;code&gt;v-show&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;I have added a second endpoint, this one is an &lt;code&gt;Interest Repayment Calculation&lt;/code&gt; a handy little calculation to quickly get an idea of how much borrowing money costs over time. I also added in a bottom part to show the JSON response as pretty print.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;I did not use Python this time!&lt;/code&gt; I have noticed that a request that involves a python script has a slight delay. This isn't a problem for big heavy tasks, but in these early API developments, the small delay is a little annoying. So the &lt;code&gt;Interest Repayment Calculation&lt;/code&gt; is PHP only. &lt;/p&gt;

&lt;p&gt;The UI is still a little raw, but in time I will polish it.&lt;/p&gt;

</description>
      <category>php</category>
      <category>laravel</category>
      <category>vue</category>
    </item>
    <item>
      <title>Cyberpunk 2077 multiplayer / coop .. So cool some is actually giving it a shot.</title>
      <dc:creator>John R</dc:creator>
      <pubDate>Sun, 25 May 2025 17:50:52 +0000</pubDate>
      <link>https://dev.to/johns-dev-projects/cyberpunk-2077-multiplayer-coop-so-cool-some-is-actually-giving-it-a-shot-1c9o</link>
      <guid>https://dev.to/johns-dev-projects/cyberpunk-2077-multiplayer-coop-so-cool-some-is-actually-giving-it-a-shot-1c9o</guid>
      <description></description>
      <category>multiplayer</category>
      <category>coop</category>
      <category>discuss</category>
    </item>
    <item>
      <title>100APIsOfCode : Day 1</title>
      <dc:creator>John R</dc:creator>
      <pubDate>Sun, 25 May 2025 13:39:10 +0000</pubDate>
      <link>https://dev.to/johns-dev-projects/100daysofcode-day-1-3ha5</link>
      <guid>https://dev.to/johns-dev-projects/100daysofcode-day-1-3ha5</guid>
      <description>&lt;p&gt;Inspired by the &lt;code&gt;100 days of code&lt;/code&gt; I seen by &lt;a class="mentioned-user" href="https://dev.to/jobkroongit"&gt;@jobkroongit&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;So I though why not start one myself. &lt;/p&gt;

&lt;p&gt;I am going to create 100 API endpoints that preform some form of useful logic. &lt;/p&gt;

&lt;p&gt;Weapons of choice, &lt;code&gt;Laravel&lt;/code&gt; + &lt;code&gt;vue3&lt;/code&gt; &amp;amp; &lt;code&gt;Python&lt;/code&gt;. Not sure if I need a DB yet, but if I do it will be PostgreSQL. I will also use &lt;code&gt;tailwind&lt;/code&gt; to speed up the front-end side of things. &lt;/p&gt;

&lt;p&gt;I will not set the GIT repo as public, but I will highlight code/technique/architecture/info that I find interesting and possibly valuable to others. I will base a good few of the endpoints on things that I tend to need in my every day development work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1 -- Setup and Deployment&lt;/strong&gt;&lt;br&gt;
I will be using VS Code, Postman and Git Desktop as my main dev/deployment tools with GitHub and CI actions, CI actions helps with deployment as it runs tests before push/branch merge. For live I will use Laravel Forge and a Digital Ocean droplet (so that I can install python). This will give a place for myself and others to view and interact with each endpoints I create. Aim to get all this setup in the first half of the 6 hours.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2 -- Create a test endpoint for Boilerplate/Setup&lt;/strong&gt;&lt;br&gt;
I created a quick little &lt;code&gt;Milliseconds to Minutes&lt;/code&gt; conversion. I find myself seeing Milliseconds form time to time, for example the output of &lt;code&gt;MySQL EXPLAIN ANALYZE&lt;/code&gt; and it can handy to be to quickly convert it.&lt;/p&gt;

&lt;p&gt;Most of the stuff done here so far, is boilerplate setup, but I did use of the python package &lt;code&gt;pint UnitRegistry&lt;/code&gt;. I also used the PHP doodle I did as the PHP/Python - link at bottom.&lt;/p&gt;

&lt;p&gt;So here it is the live &lt;code&gt;Milliseconds to Minutes Converter&lt;/code&gt;:&lt;br&gt;
&lt;a href="https://oneaday.dev/one-hundred-apis" rel="noopener noreferrer"&gt;https://oneaday.dev/one-hundred-apis&lt;/a&gt;&lt;br&gt;
*link changed as of the UI update.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Notes:&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
I got hold of this &lt;code&gt;oneaday.dev&lt;/code&gt; domain that I thought was fitting.&lt;br&gt;
later I will subdomain so more use, for example: &lt;br&gt;
&lt;code&gt;johns.oneaday.dev&lt;/code&gt; &lt;br&gt;
:)&lt;/p&gt;

&lt;p&gt;I did not know that &lt;code&gt;.dev&lt;/code&gt; domains have to be SSL or they will not resolve to the &lt;code&gt;A record&lt;/code&gt; =&amp;gt; &lt;code&gt;server IP address&lt;/code&gt;. Was scratching my head on that one for about 15mins.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Other:&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://dev.to/johns-dev-projects/laravelphp-doodle-to-run-native-python-3k3j"&gt;laravelphp-doodle-to-run-native-python&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>laravel</category>
      <category>python</category>
    </item>
    <item>
      <title>Laravel Cloud, no python, annoying. Goto Stick with FORGE and a DS.</title>
      <dc:creator>John R</dc:creator>
      <pubDate>Sat, 24 May 2025 04:59:31 +0000</pubDate>
      <link>https://dev.to/johns-dev-projects/laravel-cloud-no-python-annoying-goto-stick-with-forge-and-a-ds-5759</link>
      <guid>https://dev.to/johns-dev-projects/laravel-cloud-no-python-annoying-goto-stick-with-forge-and-a-ds-5759</guid>
      <description></description>
      <category>laravel</category>
      <category>php</category>
      <category>cloudcomputing</category>
      <category>devops</category>
    </item>
    <item>
      <title>Laravel/PHP doodle to run native python.</title>
      <dc:creator>John R</dc:creator>
      <pubDate>Fri, 23 May 2025 12:29:11 +0000</pubDate>
      <link>https://dev.to/johns-dev-projects/laravelphp-doodle-to-run-native-python-3k3j</link>
      <guid>https://dev.to/johns-dev-projects/laravelphp-doodle-to-run-native-python-3k3j</guid>
      <description>&lt;p&gt;A little Laravel/PHP service doodle to run native python scripts.&lt;br&gt;
Been increasingly using python with Laravel over the past two years.&lt;/p&gt;

&lt;p&gt;Code can be seen here:&lt;br&gt;
&lt;a href="https://gist.github.com/johns-tools/827d499f0980e1ec02ed3bf9c51a8226" rel="noopener noreferrer"&gt;https://gist.github.com/johns-tools/827d499f0980e1ec02ed3bf9c51a8226&lt;/a&gt;&lt;/p&gt;

</description>
      <category>laravel</category>
      <category>php</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
