<?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: James 'Tucker' Wray</title>
    <description>The latest articles on DEV Community by James 'Tucker' Wray (@jtwray).</description>
    <link>https://dev.to/jtwray</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%2F120251%2F42d2d8da-722b-4ba6-9217-a05178c38e8d.jpg</url>
      <title>DEV Community: James 'Tucker' Wray</title>
      <link>https://dev.to/jtwray</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jtwray"/>
    <language>en</language>
    <item>
      <title>Netlify Deployment config settings for craco react apps.</title>
      <dc:creator>James 'Tucker' Wray</dc:creator>
      <pubDate>Sun, 03 Jan 2021 21:24:35 +0000</pubDate>
      <link>https://dev.to/jtwray/netlify-deployment-config-settings-for-craco-react-apps-4ini</link>
      <guid>https://dev.to/jtwray/netlify-deployment-config-settings-for-craco-react-apps-4ini</guid>
      <description>&lt;p&gt;Recently I discovered a new build tool &lt;a href="https://github.com/gsoft-inc/craco/blob/master/packages/craco/README.md"&gt;'craco'&lt;/a&gt;.&lt;br&gt;
  [Create React App Config Override].&lt;br&gt;
 Craco allows you to customize create react app without ejecting (Adding less for those super convenient cascading stylesheets anyone?). This meant new things were possible with create react app which wouldn't previously have been possible without making some sacrifices. &lt;br&gt;
For example: &lt;br&gt;
-sacrificing future dependency update coverage &lt;br&gt;
-donating the time and energy for some serious research and custom configurations to the webpack setup/ other cogs and pulleys cra takes care of for us.&lt;/p&gt;

&lt;p&gt;From my understanding ejecting a create react app means losing all future automatic updates to your application's dependencies. The future automatic updates thing doesnt sound too terribly bad, more of a headache and a development time tax I'd prefer not to pay. Just another thing in the back of my mind taking up space. I feel like a few scripts might be written to update thwm on your own.  I mean you know the scripts exist out there already. How else are the updates pushed out to us currently. Its just taking time to find them or create your own versions.   &lt;/p&gt;

&lt;p&gt;I digress... &lt;br&gt;
Adding &lt;a href="'http://lesscss.org/tools/'"&gt;'LESS'&lt;/a&gt; to my react application sounds like a winning idea and when I bumped into this craco thing wandering through the interwebs one weekend I was all for giving it a try.&lt;/p&gt;

&lt;p&gt;As with all of my web adventures ... there were some bumpy roads ahead.&lt;/p&gt;

&lt;p&gt;While converting my Netlify Deployment from an npm create react app to a craco create react app, I ran into some hangups.&lt;br&gt;
The following writeup will hopefully shed some light on your dark situation and save you some time and build hours on the console.&lt;br&gt;
here goes...&lt;/p&gt;


&lt;h2&gt;
  
  
  key                         |
&lt;/h2&gt;

&lt;p&gt;_______________________________________________|&lt;/p&gt;
&lt;h4&gt;
  
  
  TLDR
&lt;/h4&gt;
&lt;h4&gt;
  
  
  Netlify Build Settings UI
&lt;/h4&gt;
&lt;h4&gt;
  
  
  package.json
&lt;/h4&gt;
&lt;h4&gt;
  
  
  netlify.toml
&lt;/h4&gt;
&lt;h4&gt;
  
  
  errors
&lt;/h4&gt;


&lt;h2&gt;
  
  
  TLDR                        |
&lt;/h2&gt;

&lt;p&gt;_______________________________________________|&lt;/p&gt;

&lt;p&gt;This was the solution: &lt;/p&gt;

&lt;p&gt;|-------------------|--------------------|&lt;br&gt;
| Base directory    |  ./                |&lt;br&gt;
| Build command     |  CI= npm run build |&lt;br&gt;
| Publish directory |  ./build           |&lt;br&gt;
|-------------------|--------------------|&lt;/p&gt;


&lt;h2&gt;
  
  
  Netlify UI Build Settings UI                |
&lt;/h2&gt;

&lt;p&gt;_______________________________________________|&lt;/p&gt;
&lt;h3&gt;
  
  
  My problem was in the Netlify Build Settings UI.
&lt;/h3&gt;

&lt;p&gt;I was incorrectly using  UI= craco build for my build script. Netlify's build-bot didn't recognize the craco dependency. It does however recognize yarn or npm.&lt;br&gt;
The final correct build step configuration was to just stick with 'npm run build' and have that call 'craco build', "underneath the hood".&lt;/p&gt;
&lt;h4&gt;
  
  
  Invalid Configuration:
&lt;/h4&gt;

&lt;p&gt;|-------------------|--------------------|&lt;br&gt;
| Base directory    |  ./                |&lt;br&gt;
| Build command     |  CI= craco build   | &lt;br&gt;
| Publish directory |  ./build           |&lt;br&gt;
|-------------------|--------------------|&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; isnt recognized by the build-bot&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
  
  
  Valid Configuration:
&lt;/h4&gt;

&lt;p&gt;|-------------------|--------------------|&lt;br&gt;
| Base directory    |  ./                |&lt;br&gt;
| Build command     |  CI= npm run build |&lt;br&gt;
| Publish directory |  ./build           |&lt;br&gt;
|-------------------|--------------------|&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;but  is recognized&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  package.json scripts                |
&lt;/h2&gt;

&lt;p&gt;_______________________________________________|&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;simply replace all "react-scripts" with "craco" at least the start, build, &amp;amp; test scripts&lt;/li&gt;
&lt;li&gt;"react-scripts start" would become "craco start"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;e.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"scripts": {

     "start": "craco start",
     "build": "craco build", 
     "start:proxy": "REACT_APP_PROXY=true craco start",
     "test": "craco test --env=jest-environment-jsdom-sixteen",
     "eject": "react-scripts eject",
     "prettier": "prettier --write \"**/*.+(js|jsx|json|css|md)\"",
     "coverage": "npm test -- --coverage --watchAll=false",
     "lint": "eslint 'src/**/*.{js,jsx}' --fix",
     "format": "prettier --write 'src/**/*.{js,jsx,css,scss}'",
     "storybook": "start-storybook",
     "deploy-storybook": "storybook-to-ghpages"
   }, 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  netlify.toml to allow react router redirects|
&lt;/h2&gt;

&lt;p&gt;_______________________________________________|&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[[redirects]]
  from = "/*"
  to = "/index.html"
  status = 200
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  errors from Netlify Build Logs              |
&lt;/h2&gt;

&lt;p&gt;_______________________________________________|&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
11:27:54 AM: $ CI=craco build
11:27:54 AM: bash: build: command not found
11:27:54 AM: ​
11:27:54 AM: ────────────────────────────────────────────────────────────────
11:27:54 AM:   "build.command" failed                                        
11:27:54 AM: ────────────────────────────────────────────────────────────────
11:27:54 AM: ​
11:27:54 AM:   Error message
11:27:54 AM:   Command failed with exit code 127: CI=craco build
11:27:54 AM: ​
11:27:54 AM:   Error location
11:27:54 AM:   In Build command from Netlify app:
11:27:54 AM:   CI=craco build
11:27:54 AM: ​
11:27:54 AM:   Resolved config
11:27:54 AM:   build:
11:27:54 AM:     command: CI=craco build
11:27:54 AM:     commandOrigin: ui
11:27:54 AM:     environment:
11:27:54 AM:       - REACT_APP_CLIENT_ID
11:27:54 AM:       - REACT_APP_GOOGLE_API
11:27:54 AM:       - REACT_APP_HEREAPI
11:27:54 AM:       - REACT_APP_MAPBOX_TOKEN
11:27:54 AM:       - REACT_APP_PS_ID
11:27:54 AM:       - SKIP_PREFLIGHT_CHECK
11:27:54 AM:   redirects:
11:27:55 AM:     - from: /*
      status: 200
      to: /index.html
Caching artifacts

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
7:32:03 PM: ────────────────────────────────────────────────────────────────
7:32:03 PM:   1. Build command from Netlify app                             
7:32:03 PM: ────────────────────────────────────────────────────────────────
7:32:03 PM: ​
7:32:03 PM: $ craco build
7:32:05 PM: Creating an optimized production build...
7:33:26 PM: Failed to compile.
7:33:26 PM: 
7:33:26 PM: src/redux/reducers/rootReducer.js
7:33:26 PM:   Line 28:37:  Missing semicolon  semi
7:33:26 PM:   Line 36:38:  Missing semicolon  semi
7:33:26 PM: src/route_views/discover/searchlistings/listings/ListingCard.js
7:33:26 PM:   Line 48:73:  Missing semicolon  semi
7:33:26 PM: src/route_views/discover/searchlistings/listings/SingleListingView.js
7:33:26 PM:   Line 3:72:   Missing semicolon  semi
7:33:26 PM:   Line 7:53:   Missing semicolon  semi
7:33:26 PM:   Line 8:25:   Missing semicolon  semi
7:33:26 PM:   Line 9:22:   Missing semicolon  semi
7:33:26 PM:   Line 11:33:  Missing semicolon  semi
7:33:26 PM: src/route_views/discover/suggested_listings/SuggestedListings.js
7:33:26 PM:   Line 38:23:  Missing semicolon  semi
7:33:26 PM: src/utils/CalendarRangePicker.js
7:33:26 PM:   Line 15:3:   Missing semicolon  semi
7:33:26 PM:   Line 16:91:  Missing semicolon  semi
7:33:26 PM:   Line 20:27:  Missing semicolon  semi
7:33:26 PM: Search for the keywords to learn more about each error.
7:33:26 PM: ​
7:33:26 PM: ────────────────────────────────────────────────────────────────
7:33:26 PM:   "build.command" failed                                        
7:33:26 PM: ────────────────────────────────────────────────────────────────
7:33:26 PM: ​
7:33:26 PM:   Error message
7:33:26 PM:   Command failed with exit code 1: craco build
7:33:26 PM: ​
7:33:26 PM:   Error location
7:33:26 PM:   In Build command from Netlify app:
7:33:26 PM:   craco build
7:33:26 PM: ​
7:33:26 PM:   Resolved config
7:33:26 PM:   build:
7:33:26 PM:     command: craco build
7:33:26 PM:     commandOrigin: ui
7:33:26 PM:     environment:
7:33:26 PM:       - REACT_APP_CLIENT_ID
7:33:26 PM:       - REACT_APP_GOOGLE_API
7:33:26 PM:       - REACT_APP_HEREAPI
7:33:26 PM:       - REACT_APP_MAPBOX_TOKEN
7:33:26 PM:       - REACT_APP_PS_ID
7:33:26 PM:   redirects:
7:33:26 PM:     - from: /*
      status: 200
      to: /index.html
Caching artifacts

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>react</category>
      <category>netlify</category>
      <category>npm</category>
      <category>css</category>
    </item>
    <item>
      <title>Setting Dynamic Variables/Properties in Javascript</title>
      <dc:creator>James 'Tucker' Wray</dc:creator>
      <pubDate>Mon, 14 Sep 2020 01:51:52 +0000</pubDate>
      <link>https://dev.to/jtwray/setting-dynamic-variables-properties-in-javascript-437g</link>
      <guid>https://dev.to/jtwray/setting-dynamic-variables-properties-in-javascript-437g</guid>
      <description>&lt;p&gt;I became overwhelmed while trying to learn redux, because not only was I learning Redux-- I was also learning higher level concepts of JavaScript intertwined with the Redux module.&lt;/p&gt;

&lt;p&gt;Topics included:&lt;/p&gt;

&lt;p&gt;how to verbalize a definition for what state really even meant without using the word 'state'&lt;br&gt;
how state differed from props, the concept of immutability&lt;br&gt;
why you would want to maintain immutability when working with state&lt;br&gt;
how to maintain immutability when working with state&lt;br&gt;
how to use switch-cases or to use the spread operator of ESNext&lt;br&gt;
why you would want to 'rewind state'&lt;br&gt;
Lets not forget the topic of today's blog: how to select object properties dynamically such as when setting action payloads to the values of a state slice in Redux Reducers.&lt;/p&gt;

&lt;p&gt;This technique saved me a lot of time when creating reusable forms with functions for storing and updating state including handler functions such as a change-handlers or submit-handlers. I found the dynamic bracket notation useful many times when I was using a spread operator to duplicate or make a copy of an object or array&lt;br&gt;
This is a shorthand and I didn't understand how simple it was for the longest time.&lt;/p&gt;

&lt;p&gt;I found the following snippet on a Google Search. It cleared things up for me in the flash of another light-bulb moment.&lt;br&gt;
You can also set dynamic properties with the bracket syntax:&lt;/p&gt;

&lt;p&gt;var property="test";&lt;br&gt;
var obj={&lt;br&gt;
 [property]=1;&lt;br&gt;
};&lt;/p&gt;

&lt;p&gt;console.log(obj.test);//1&lt;br&gt;
It does the same as:&lt;/p&gt;

&lt;p&gt;var property="test";&lt;br&gt;
var obj={};&lt;br&gt;
obj[property]=1;&lt;br&gt;
Naming conventions and variable name choices are essential for developers to understand and efficiently work with your codebase. I am torn between assessing the var name choices here as muddy and obscure or expertly declarative.&lt;/p&gt;

&lt;p&gt;First we have a string assigned to the var 'property' followed by a JavaScript object {} assigned to the var 'obj'. Our JS object 'obj' contains a single key:value pair or object \n named 'property'.&lt;/p&gt;

&lt;p&gt;where the objects sole property is actually assigned to be called by the variable " property ".&lt;/p&gt;

&lt;p&gt;What we are creating here is actually the ability to create numerous key value pairs on the object "obj".&lt;/p&gt;

&lt;p&gt;by reassigning the value of our var "property", we are able to create a new key:value pair on "obj".&lt;/p&gt;

&lt;p&gt;var property="propertyNumber2"&lt;br&gt;
print(obj)&lt;br&gt;
yields {"test":1,"propertyNumber2":1}&lt;/p&gt;

&lt;p&gt;example retrieved and reshared from &lt;a href="https://riptutorial.com/javascript/example/2321/dynamic---variable-property-names#"&gt;https://riptutorial.com/javascript/example/2321/dynamic---variable-property-names#&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>immutability</category>
      <category>vanillajs</category>
      <category>todayisearched</category>
    </item>
    <item>
      <title>How to Edit Styles with Chrome Inspector..And take them with you when you're done 🥃 🎈🧨✨🎉🎊</title>
      <dc:creator>James 'Tucker' Wray</dc:creator>
      <pubDate>Mon, 14 Sep 2020 01:44:08 +0000</pubDate>
      <link>https://dev.to/jtwray/how-to-edit-styles-with-chrome-inspector-and-take-them-with-you-when-you-re-done-43ga</link>
      <guid>https://dev.to/jtwray/how-to-edit-styles-with-chrome-inspector-and-take-them-with-you-when-you-re-done-43ga</guid>
      <description>&lt;p&gt;Today I learned how to Use Chrome Editor Like webpack or the hot-reloading feature and to export new styles from chrome inspector.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;open the inspector with right click &amp;gt;inspect or &lt;br&gt;
[ctrl] + [shift] + [i]&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;select elements tab &lt;br&gt;
(its in the top row of the inspector menu next to console&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KNKhC_ZT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/dwn91q6zl8nlsi2uj7gf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KNKhC_ZT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/dwn91q6zl8nlsi2uj7gf.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
-click the left square with arrow in it in top left corner of inspector panel&lt;br&gt;
or&lt;br&gt;
[ctrl]+[shift]+[c]&lt;/p&gt;

&lt;p&gt;hover over the elements of your html tree structure or hover over the actual page itself&lt;/p&gt;

&lt;p&gt;see things highlighting blue or brown and green ?&lt;br&gt;
the brown and green are padding and margin &lt;br&gt;
the blue is the html element your are now interacting with&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;click the element you need to style&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;### in the styles pane&lt;/p&gt;

&lt;p&gt;if there is a current selector imported from your projects stylesheet for this element, it will appear here with the current styles&lt;/p&gt;

&lt;p&gt;if there is not a selector present in your imported stylesheet for this element&lt;/p&gt;

&lt;p&gt;a new selector for elements of that type will appear for you to add styles&lt;/p&gt;

&lt;p&gt;you may use that one or create your own&lt;br&gt;
to create your own click the plus sign in the top right&lt;/p&gt;

&lt;p&gt;or doubleclick into the selector name to input the selector specificity you would like to use for your new style rules&lt;/p&gt;

&lt;p&gt;now&lt;/p&gt;

&lt;p&gt;you're editing an element in the inspector tool.&lt;/p&gt;

&lt;p&gt;sweet.&lt;/p&gt;

&lt;p&gt;how do you get your new styles out when you are finished.&lt;/p&gt;

&lt;p&gt;if you hit refresh or close the window they are gone.&lt;/p&gt;

&lt;p&gt;you could copy paste the new styles into a text.file like notepad as you go.&lt;br&gt;
just dont get carried away and forget one.&lt;/p&gt;

&lt;p&gt;It'll be really hard to differentiate:&lt;/p&gt;

&lt;p&gt;😵 what was there already 😵 ? &lt;br&gt;
🆕 what you added new &lt;br&gt;
❌what you removed&lt;br&gt;&lt;br&gt;
🔨 and what you just tweaked or changed a little bit&lt;br&gt;
  Or will it...&lt;/p&gt;

&lt;p&gt;see that plus you clicked to create your own new specific selector..?&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DrUlw0Te--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/rkgf98wp8o76pzjodz0s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DrUlw0Te--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/rkgf98wp8o76pzjodz0s.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;hover it until the helper text pops up saying&lt;br&gt;
--'new style rule'&lt;/p&gt;

&lt;p&gt;when that pops up&lt;br&gt;
hold down the left click on the plus sign&lt;/p&gt;

&lt;p&gt;--a dropdown option appears wit hat least two options&lt;br&gt;
--inspector-stylesheet&lt;/p&gt;

&lt;p&gt;&amp;amp;&lt;br&gt;
-- a reference to your projects css file&lt;/p&gt;

&lt;p&gt;which ever one you select will create a new selector and empty style rule for you to edit in that sheet&lt;/p&gt;

&lt;p&gt;pretty cool&lt;/p&gt;

&lt;p&gt;now down in that new selector you created with the plus button&lt;/p&gt;

&lt;p&gt;notice on the right edge there is a filename:number&lt;/p&gt;

&lt;p&gt;clicking that will pull up the stylesheet this selector and ruleset is being added to allowing you to directly edit delete or copy any or all of it.&lt;/p&gt;

&lt;p&gt;now you can take your new inspector styleswith you all at once at the end&lt;/p&gt;

&lt;p&gt;SO go ahead and get carried away again&lt;br&gt;
it okay now!&lt;/p&gt;

&lt;p&gt;the fun is back in development!!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>todayilearned</category>
      <category>css</category>
      <category>html</category>
    </item>
    <item>
      <title> Deploy React Repo from Github with CodeSandBox.io &amp; Netlify integration. </title>
      <dc:creator>James 'Tucker' Wray</dc:creator>
      <pubDate>Mon, 14 Sep 2020 01:37:21 +0000</pubDate>
      <link>https://dev.to/jtwray/deploy-react-repo-from-github-with-codesandbox-io-netlify-integration-1lpf</link>
      <guid>https://dev.to/jtwray/deploy-react-repo-from-github-with-codesandbox-io-netlify-integration-1lpf</guid>
      <description>&lt;p&gt;tldr: This write-up elaborates on two related processes I use several times a week. &lt;br&gt;
spinning up images and deploying them&lt;/p&gt;

&lt;p&gt;-one&lt;br&gt;
You can create images of several projects at once using the urls from the github repos&lt;br&gt;
 I use this technique to review my students projects 8 at a time to save time &amp;amp; space on my personal machine and avoid cloning down and installing dependencies of each project 1 at a time.&lt;/p&gt;

&lt;p&gt;-two&lt;br&gt;
 There is a sweet netlify/vercel integration with codesandbox that lets you streamline a CI/CD setup at the literal click of a button  the step by step for both processes is below. &lt;/p&gt;

&lt;p&gt;I like to code. Going to a fully remoteCode School I have gained a lot of exposure to CodeSandBox, Github, and React--especially create react app. &lt;/p&gt;

&lt;p&gt;I have gained a fondness for using CodeSandBox as my development environment.&lt;br&gt;
I have access to a terminal. I can fork my project right there and have it spin up a clone to try out new features. I have access to node package manager and a staging environment.  I can drag and drop in images to have them accessible in the project. Its so cool.&lt;br&gt;
I love it already.&lt;/p&gt;

&lt;p&gt;Then I figured out I could deploy my creations to netlify and Vercel(Zeit now).&lt;br&gt;
Niiiice.&lt;/p&gt;

&lt;p&gt;Im really loving it.&lt;/p&gt;

&lt;p&gt;When starting a create React App, you inadvertently end up with a project nested inside of a named directory. When developing on a local machine that's very Useful. It helps you to keep you projects separate and identifiable in the terminal.The problem arises with the root of you project being nested inside the directory.&lt;br&gt;
 When you push your project to Github You have to drill down one directory to see &lt;br&gt;
-your index.html &lt;br&gt;
-your package.json etc &lt;br&gt;
-the files that a build step is going to look for.  I first noticed this when I attempted to deploy my hard earned projects to a live site so that I can show them on my portfolio. When deploying to Netlify Gh-Pages or Vercel/Zeit you have to give the build server directions to your root.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One -Level -Down. This causes so many errors and You end up having to wait 2 minutes everytime for the project to spin up | ⚡🌩 fail 🌩⚡ | and try again. 🔁🔁🔁 &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I become a Team Lead at the code school. I now have a team of 8 programmers slightly junior to me creating projects 5 days a week after lecture. These projects need my review and feedback the same day by 5pm! 3 hours 8 projects.&lt;br&gt;
 Options. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;li&gt;clone them all down&lt;/li&gt;
&lt;li&gt;spin up the project on a local host&lt;/li&gt;
&lt;li&gt;open a VSCODE instance in the half screen beside and line by line it checking for whatever features I dont see on the local host browser. &lt;/li&gt;
&lt;li&gt;hope the dependencies match my local setup.
HA! right!&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;2.&lt;br&gt;
Look through the code line by line on github and assume it works because the code'looks right with no obvious bugs'-- not good enough for the pros not good enough for me.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Pick up a Neural Link a la Elon Musk and try number two but this time my neural cortex actual runs the code somewhere in my left lobe? &lt;br&gt;
Not this year.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;the option I have gone with for 8 month now ... 🥁 💦 &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Enter Codesandbox. and their import Project from Github feature. &lt;br&gt;
🥰😍😻💖 be still my hearts&lt;/p&gt;

&lt;p&gt;Lets get the actual process &lt;/p&gt;

&lt;p&gt;1&lt;br&gt;
Find your repo at github&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;choose the correct branch &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;meaning the one you want to deploy&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;2 choose the correct level aka folder&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Drill down to the Package.json

&lt;ul&gt;
&lt;li&gt;If you dont see it on the top screen &lt;/li&gt;
&lt;li&gt;click into the folder Create React App named after you project. That'll take you inside and on the next page you should see everything the same but the folder structure.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;You're one(1) folder in. &lt;/li&gt;
&lt;li&gt;Locate package.json 
-that's the level you want to deploy as root.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;3 &lt;br&gt;
From here you want to copy the URL from the address bar exactly as it is&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;don't change it by clicking on anything else. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;4&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;in a new tab go to your codeSandbox dashboard -- &lt;a href="https://codesandbox.io/dashboard/recent"&gt;https://codesandbox.io/dashboard/recent&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(4 1/2 - you might have to log in 😭 🔐 😂)&lt;/p&gt;

&lt;p&gt;5&lt;br&gt;
Click create Project &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the top box Center of Page&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;6&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;in the box modal that pops up 

&lt;ul&gt;
&lt;li&gt;choose the bottom option
--on the left sidebar --
"import Project"&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;7&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Paste your URL into the input blank and hit "Generate Sandbox"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;7a&lt;br&gt;
If you have permission to link to this repo you'll see Codesandbox's loading animation.&lt;/p&gt;

&lt;p&gt;7b&lt;br&gt;
It cant be private unless &lt;br&gt;
-its yours &lt;br&gt;
and &lt;br&gt;
-you've linked github to your Codesandbox account&lt;/p&gt;

&lt;p&gt;7c aka 'try again you copied the url incorrectly'&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you get 
-an all black screen 
-with the error message 
-you might go back to your github repo and make sure --you copied the URL correctly
and 
--that you had navigated to the level where package.json can be found.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When your sandbox spins up it will be in a safe mode so &lt;br&gt;
8 &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;hit fork sandbox in the top right corner&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;from here you can locate the familiar &lt;br&gt;
Github OctoCat on the left menu bar&lt;br&gt;
~click her smile~&lt;br&gt;
..(Octocat is a her, right?)&lt;br&gt;
9&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;click their smile&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;9a&lt;br&gt;
youll see more familiarity such as options &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;to link to a repo&lt;/li&gt;
&lt;li&gt;create  a new repo&lt;/li&gt;
&lt;li&gt;create a pull request&lt;/li&gt;
&lt;li&gt;create a commit message.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;you can deploy here but I usually wait until I have something worth while before doing any type of Continuous Deployment even if it is ridiculously simple with CodeSandBox and Netlify's integration.&lt;/p&gt;

&lt;p&gt;When you get to that point that you feel the need to share this work of art with the rest of the world wide web...&lt;/p&gt;

&lt;p&gt;10&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;in the "Left Menubar of Power" 
(the only left menubar)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;find the ardently labeled Rocket Ship 👩🏻‍🚀👨🏻‍🚀🚀&lt;br&gt;
We are Launching Code bebe!   🤘🏻👩🏻‍🎤🤘🏻 🤘🏻👨🏻‍🎤🤘🏻&lt;/p&gt;

&lt;p&gt;11&lt;br&gt;
--select Vercel or Netlify &lt;br&gt;
hopefully you have a free account with one of the two &lt;br&gt;
11a&lt;br&gt;
-- if not its the standard verify with google etc.&lt;/p&gt;

&lt;p&gt;11 &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;So select Netlify.
12&lt;/li&gt;
&lt;li&gt;Select Deploy App.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;give it a few seconds&lt;br&gt;
13&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;and you will see a new option appear 
-- to view the build progress. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This will show you the console rolling down command line responses as your app is built at rocket speed(see what I did there? I told you we were launching rockets bebe 🎸 ) &lt;/p&gt;

&lt;p&gt;13b&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;At the end of the rocket rollout aka when the build process logs stop..
If you dont see something about

&lt;ul&gt;
&lt;li&gt;"failure!!!" or &lt;/li&gt;
&lt;li&gt;"exit code 132" &lt;/li&gt;
&lt;li&gt;"--failed deploy"&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;13c&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;you should see a message with 
-- deploy successful
-- followed by a button and a link
-- to "view demo"
Check it out!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;14&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;This is the testing grounds 
-- Look for any bugs
-- this is what your page will look like to the world and Netlify is kind enough to give you a practice round before the big show.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;15&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you like what you see
-- go back to code sandbox &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;16&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;in the "Lefthand Menu of Power"
find the button that says " CLAIM " &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;16b&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;click it 
and you should see a screen with
--" merge codesandbox deploys to Netlify Dashboard"
I have to go through this screen almost everytime. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;16c&lt;br&gt;
 --Click accept.&lt;br&gt;
 occasionally You will have to verify your google account by pushing the picture of your google icon one more time.&lt;/p&gt;

&lt;p&gt;17&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now on to the Netlify Dashboard 
-- so you can pick a more accurate Domain Name. 
-- That's a technical term for the webpage address.  🕸+📃&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;17b&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click on Domain options in the middlescreen navigation bar.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;17c&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In center screen
-- there is a button for domain options/settings.
-- select that 
-- a dropdown on the right has the option
-- to edit settings or edit domain settings.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By clicking this you will gain access to a input field and be able to pick the website name that brings you the most joy. 😂 🎈 🎉&lt;/p&gt;

&lt;p&gt;Its free too. 🆓&lt;/p&gt;

&lt;p&gt;18 Last Button@@!@!!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hit save and you are done my beautiful friend on the internets!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We deployed 👇🏻 click by click 👆🏻 from a 🥪⌛⏳ CodeSandbox. 🏁🙊🐱‍👤 &lt;/p&gt;

&lt;p&gt;Never 🙅🏻‍♂️ once spun up a single character of code on our local machine. 💻 &lt;br&gt;
We 🚫 Didnt ❌ clog up 🚯 anything with another 2 million bytes of node_modules. &lt;br&gt;
It all happened on some far away planet 🌍 in a virtual machine 🤖 on a beautiful little technology called CodeSandBox. &lt;/p&gt;

&lt;p&gt;Thankyou Codesandbox. 👨🏻‍💻 🙏🏻🙏🏻🙏🏻 👩🏻‍💻&lt;/p&gt;

&lt;p&gt;Take a Bow!&lt;/p&gt;

</description>
      <category>react</category>
      <category>netlify</category>
      <category>codesandbox</category>
      <category>deploy</category>
    </item>
    <item>
      <title>My Why - My Original Problem - My Bounty</title>
      <dc:creator>James 'Tucker' Wray</dc:creator>
      <pubDate>Mon, 15 Jun 2020 20:45:37 +0000</pubDate>
      <link>https://dev.to/jtwray/my-why-my-original-problem-my-bounty-ipo</link>
      <guid>https://dev.to/jtwray/my-why-my-original-problem-my-bounty-ipo</guid>
      <description>&lt;p&gt;My Why, My Original Problem, My Bounty&lt;/p&gt;

&lt;h2&gt;
  
  
  My Why
&lt;/h2&gt;

&lt;p&gt;I'm learning code to free myself of progress blockers like time, location, and monetary constraints. I want to be free to travel the world promoting renewable energy and a renewed vision of earthly stewardship. I want to share with impoverished peoples of the world that they too can have options and can make a difference in their local world and in the larger world as well. I fully believe that if freed from the shackles of purely surviving and offered the liberties and leisure of choice a person will make educated and hugely helpful decisions to lift up themselves and their communities. &lt;/p&gt;

&lt;p&gt;I plan to take modern technology to the places that could use it most. The idea is to help people trade in the pick axes of the cobalt mines for a laptops and AI controlled machines. I believe that like me, many of the people in the world want to make better choices when it comes to recycling, emissions, carbon footprints, sustainable living, eating cleaner to just brush the surface. But, we are confounded by our circumstance of simply surviving. We don't yet own the liberties or leisure of choice in many, if any, of these areas.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Original Problem
&lt;/h2&gt;

&lt;p&gt;In September of 2018, I pursued a problem's solution; The over-the-air signal to my mothers homestead was too weak to be picked up by the government provided boxes; even with boosters and amplifiers it struggled to display 2 channels without a blizzard of interference atop the broadcasts.  I found that all hope was not yet lost as she did have a monthly subscription to high-speed internet. There was an application that you could use to stream the same free networks through a WI-FI connection on your cell phone and cast right onto your television screen. We bought the dongle for the television and setup the app on her phone. In no time she was in business!&lt;/p&gt;

&lt;h1&gt;
  
  
  🌤 All was well! 🌤
&lt;/h1&gt;

&lt;h1&gt;
  
  
  -------🌩🚨⚡ Until it wasn't. ⚡🚨🌩
&lt;/h1&gt;

&lt;p&gt;A month later the app's author lost interest and it went down. It stopped working. I quickly found another version by another author and patched up the pipeline restoring the service. History has a way of repeating itself; and here, Father time was no different. At a loss for our inability to find a permanent solution, I decided it was time &lt;em&gt;I&lt;/em&gt; became the author of the application, because surely, &lt;em&gt;I&lt;/em&gt; wouldn't become disinterested and let my sole subscriber (Mom 💛) down. &lt;/p&gt;

&lt;p&gt;Two years &amp;amp; 9 &lt;em&gt;short&lt;/em&gt; months later --I have my final review tomorrow for my team project in the Labs Unit of Lambda School. Next, I undertake 2 months of Computer science algorithms and the original language I picked up for mom's streaming app, Python. Then its off to the races and taking on the career of my dreams.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Bounty
&lt;/h2&gt;

&lt;h3&gt;
  
  
  I pursued a problem's solution;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;that which I perceived to be on the other side of the 'learn to code wall'&lt;/li&gt;
&lt;li&gt;without understanding the great beauty that IS the wall.&lt;/li&gt;
&lt;li&gt;That wall represents the journey and the growth it yields to those gritty enough to stay the course.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  I found much more than the answer to that problem.
&lt;/h3&gt;

&lt;p&gt;I found software as a way to solve any problem.&lt;br&gt;
 I found code to be a unifying entity.&lt;br&gt;
In my experience it brings people together and heightens their abilities.&lt;br&gt;
They leave smarter and happier for the social interaction if not solely the personal growth.&lt;/p&gt;

&lt;p&gt;I found more problems and many more solutions.&lt;br&gt;
I found a new way of thinking,of living.&lt;br&gt;
I found a community of like minded growth oriented humans.&lt;br&gt;
I found some perceived trolls, who inside were actually scared, cornered or injured and also just more humans.&lt;br&gt;
I found compassion by the ton.&lt;br&gt;
I found acceptance and inclusion.&lt;br&gt;
I found both physically and psychologically safe learning environments.&lt;br&gt;
I found excellence of many magnitudes.&lt;br&gt;
I found beauty.&lt;br&gt;
I found strong willed humans.&lt;br&gt;
I found &lt;del&gt;in&lt;/del&gt; surmountable odds.&lt;br&gt;
I found sobriety! 3 years and 4 months today. My drug of choice is knowledge!&lt;br&gt;
I found peace of mind.&lt;br&gt;
I found purpose.&lt;br&gt;
I found a desire to help others and to grow every day.&lt;br&gt;
I found satisfaction.&lt;br&gt;
I found a leveling ground where anybody can be somebody.&lt;br&gt;
I found opensource that meant sometimes the good stuff Was free.&lt;br&gt;
I found team work and collaboration in ways I never thought to dream up.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
