diff --git a/README.md b/README.md index 0839ddf..bd7849c 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ This repo is the content for a two day workshop focused on introducing you to th ## Who is this workshop for -This workshop starts as a very high level introduction to the core principles of the web: HTML, CSS and JavaScript. This section is targeted at new and experienced developers alike. The second day dives into more complex topics such as Typescript and state management within an application. The examples should be accessible to anyone, but you will get more out of the day if you have some foundational experience in programing or web technologies. +This workshop starts as a very high level introduction to the core principles of the web: HTML, CSS and JavaScript. This section is targeted at new and experienced developers alike. The second day dives into more complex topics such as TypeScript and state management within an application. The examples should be accessible to anyone, but you will get more out of the day if you have some foundational experience in programing or web technologies. ## Web Workshop Setup @@ -17,7 +17,8 @@ This workshop starts as a very high level introduction to the core principles of - Current version of [Node/NPM](https://nodejs.org/en/) - Install [Git](https://git-scm.com/downloads) - [VSCode Editor](https://code.visualstudio.com) -- Up to date browser with dev tools (some demos will be shown using Chrome) +- Up to date browser with React Developer Tools +- React Developer Tools: [Chrome](https://chrome.google.com/webstore/detail/react-developer-tools/fmkadmapgofadopljbjfkapdkoienihi?hl=en) or [Firefox](https://addons.mozilla.org/en-US/firefox/addon/react-devtools/) ### Getting Set Up @@ -25,11 +26,11 @@ This workshop starts as a very high level introduction to the core principles of $ git clone https://github.com/Microsoft/frontend-bootcamp.git $ cd frontend-bootcamp $ npm install - + // For Day 1, Steps 1-3 - $ npm run static + $ npm run static // For the rest of the steps - $ npm start + $ npm start ``` ## Table Of Contents @@ -48,13 +49,13 @@ This workshop starts as a very high level introduction to the core principles of - [Exercise](step1-03/exercise) 4. [React Introduction](step1-04) - [Demo](step1-04/demo) -5. [Thinking in React: Building a Static Page](step1-05) +5. [Building a Static Page](step1-05) - [Demo](step1-05/demo) - [Exercise](step1-05/exercise) -6. [Thinking in React: State Driven UI](step1-06) +6. [State Driven UI](step1-06) - [Demo](step1-06/demo) - [Exercise](step1-06/exercise) -7. [Thinking in React: UI Driven State](step1-07) +7. [Types & UI Driven State](step1-07) - [Demo](step1-07/demo) - [Exercise](step1-07/exercise) @@ -62,7 +63,7 @@ This workshop starts as a very high level introduction to the core principles of Demo and Exercises are combined -1. [Introduction to Typescript](step2-01) +1. [Introduction to TypeScript](step2-01) 2. [UI Fabric Component Library](step2-02) 3. [Theming and Styling](step2-03) 4. [Testing with Jest](step2-04) @@ -78,6 +79,13 @@ Demo and Exercises are combined - [React Docs](https://reactjs.org/docs/getting-started.html) - [Thinking in React](https://reactjs.org/docs/thinking-in-react.html) +### Follow the Authors! + +If you are interested in JavaScript, TypeScript, React, Redux, Design Systems, follow us on Twitter: + +- [@kenneth_chau](https://twitter.com/kenneth_chau) +- [@micahgodbolt](https://twitter.com/micahgodbolt) + # Contributing This project welcomes contributions and suggestions. Most contributions require you to agree to a diff --git a/assets/scripts.js b/assets/scripts.js new file mode 100644 index 0000000..1c3cfda --- /dev/null +++ b/assets/scripts.js @@ -0,0 +1,11 @@ +// prettier-ignore +var appInsights=window.appInsights||function(a){ + function b(a){c[a]=function(){var b=arguments;c.queue.push(function(){c[a].apply(c,b)})}}var c={config:a},d=document,e=window;setTimeout(function(){var b=d.createElement("script");b.src=a.url||"https://az416426.vo.msecnd.net/scripts/a/ai.0.js",d.getElementsByTagName("script")[0].parentNode.appendChild(b)});try{c.cookie=d.cookie}catch(a){}c.queue=[];for(var f=["Event","Exception","Metric","PageView","Trace","Dependency"];f.length;)b("track"+f.pop());if(b("setAuthenticatedUserContext"),b("clearAuthenticatedUserContext"),b("startTrackEvent"),b("stopTrackEvent"),b("startTrackPage"),b("stopTrackPage"),b("flush"),!a.disableExceptionTracking){f="onerror",b("_"+f);var g=e[f];e[f]=function(a,b,d,e,h){var i=g&&g(a,b,d,e,h);return!0!==i&&c["_"+f](a,b,d,e,h),i}}return c +}({ + instrumentationKey: "6ad37ae0-c4ab-4739-925c-1e2773c31f17" +}); + +// prettier-ignore +if (window.location.hostname !== 'localhost') { + window.appInsights=appInsights,appInsights.queue&&0===appInsights.queue.length&&appInsights.trackPageView(null, null, {urlReferrer: document.referrer}); +} diff --git a/assets/shared.css b/assets/shared.css index fa268f0..bc0d60a 100644 --- a/assets/shared.css +++ b/assets/shared.css @@ -67,10 +67,10 @@ h1 a { content: counter(steps); position: absolute; left: -20px; - bottom: -20px; + bottom: -3px; font-size: 220px; line-height: 188px; - color: #f3f2f1; + color: #eaeaea; z-index: 1; } diff --git a/azure-pipelines.pr.yml b/azure-pipelines.pr.yml new file mode 100644 index 0000000..a66cc30 --- /dev/null +++ b/azure-pipelines.pr.yml @@ -0,0 +1,20 @@ +# Node.js +# Build a general Node.js project with npm. +# Add steps that analyze code, save build artifacts, deploy, and more: +# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript + +trigger: none + +pool: + vmImage: 'Ubuntu-16.04' + +steps: + - task: NodeTool@0 + inputs: + versionSpec: '10.x' + displayName: 'Install Node.js' + + - script: | + npm install + npm run build + displayName: 'npm install, build' diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 0000000..d7a7af6 --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,33 @@ +# Node.js +# Build a general Node.js project with npm. +# Add steps that analyze code, save build artifacts, deploy, and more: +# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript + +pr: none + +trigger: + - master + +pool: + vmImage: 'Ubuntu-16.04' + +steps: + - task: NodeTool@0 + inputs: + versionSpec: '10.x' + displayName: 'Install Node.js' + + - script: | + git config user.email "kchau@microsoft.com" + git config user.name "Ken Chau" + git remote set-url origin https://kenotron:$(git.pat)@github.com/Microsoft/frontend-bootcamp.git + git checkout master + git pull + npm install + git checkout -b build_$(Build.BuildId) + npm run build + git add . + git commit -m "adding docs" + git subtree split --prefix docs -b temp_$(Build.BuildId) + git push origin temp_$(Build.BuildId):refs/heads/gh-pages --force + displayName: 'npm install, build and push docs to gh-pages' diff --git a/index.html b/index.html index 534e454..8400b40 100644 --- a/index.html +++ b/index.html @@ -4,16 +4,7 @@ - +