Frontend Workshop from HTML/CSS/JS to TypeScript/React/Redux
Перейти к файлу
Micah Godbolt 55cd2cffe8 style tweak 2019-02-26 10:09:17 -08:00
.vscode adding some comments about devtool hook up 2019-02-16 17:06:30 -08:00
assets style tweak 2019-02-26 10:09:17 -08:00
markdownReadme/src make smaller highlight.js bundle 2019-02-23 08:26:07 -08:00
playground clean up step 2-2 2019-02-15 13:49:22 -08:00
server [Server] Send HTTP response after processing request. 2019-02-25 12:12:11 -08:00
step1-01 Update README.md 2019-02-25 23:10:45 -08:00
step1-02 fixed step 3 bug 2019-02-26 08:57:32 -08:00
step1-03 Update README.md 2019-02-26 09:11:39 -08:00
step1-04 Fix typos 2019-02-26 13:49:38 +08:00
step1-05 add live-server 2019-02-25 14:18:47 -08:00
step1-06 Fix typos 2019-02-26 13:49:38 +08:00
step1-07 Fix typo 2019-02-26 13:54:57 +08:00
step2-01 Fix typos 2019-02-26 13:49:38 +08:00
step2-02 adding tracking for day 2 tracking goodness 2019-02-25 16:54:28 -08:00
step2-03 Merge branch 'master' of github.com:Microsoft/frontend-bootcamp 2019-02-25 17:08:56 -08:00
step2-04 Fix typos 2019-02-26 13:49:38 +08:00
step2-05 adding tracking for day 2 tracking goodness 2019-02-25 16:54:28 -08:00
step2-06 adding tracking for day 2 tracking goodness 2019-02-25 16:54:28 -08:00
step2-07 adding tracking for day 2 tracking goodness 2019-02-25 16:54:28 -08:00
step2-08 adding tracking for day 2 tracking goodness 2019-02-25 16:54:28 -08:00
step2-09 adding tracking for day 2 tracking goodness 2019-02-25 16:54:28 -08:00
.gitignore checking in docs for github.io page 2019-02-19 23:41:11 -08:00
README.md adding a info to get in touch / follow authors 2019-02-26 08:51:58 -08:00
azure-pipelines.pr.yml getting rid of some typo 2019-02-25 21:54:48 -08:00
azure-pipelines.yml revert 2019-02-25 21:51:33 -08:00
index.html style tweak 2019-02-26 10:09:17 -08:00
jest.config.js adding enzyme test 2019-02-24 14:02:44 -08:00
jest.setup.js adding enzyme test 2019-02-24 14:02:44 -08:00
package-lock.json add live-server 2019-02-25 14:18:47 -08:00
package.json adding ghpage deploy 2019-02-25 17:05:00 -08:00
prettier.config.js adding some redux steps 2019-02-16 17:00:47 -08:00
tsconfig.json fixing the tsconfig to exclude docs/ dir 2019-02-20 11:13:16 -08:00
webpack.config.js add readme.md for steps in day1 2019-02-24 20:03:18 -08:00

README.md

Frontend Bootcamp / Days in the Web

🚨🚨 This project is still a WIP. Issues and PRs are welcome for typos or inaccuracies. 🚨🚨

Purpose of this workshop

This repo is the content for a two day workshop focused on introducing you to the fundamentals of web development. By the end of these two days you will have better understanding of how we write and deliver features on the web. You will also get some hands on experience using everything from HTML, CSS and JavaScript to React, Redux and UI Fabric as we build a working application together.

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.

Web Workshop Setup

Computer Setup

  • Current version of Node/NPM
  • Install Git
  • VSCode Editor
  • Up to date browser with dev tools (some demos will be shown using Chrome)

Getting Set Up

  $ git clone https://github.com/Microsoft/frontend-bootcamp.git
  $ cd frontend-bootcamp
  $ npm install

  // For Day 1, Steps 1-3
  $ npm run static
  // For the rest of the steps
  $ npm start

Table Of Contents

Day One

  1. Introduction to HTML, CSS and JavaScript
  2. Writing a Todo App: HTML and CSS
  3. Writing a Todo App: JavaScript
  4. React Introduction
  5. Thinking in React: Building a Static Page
  6. Thinking in React: State Driven UI
  7. Thinking in React: UI Driven State

Day Two

Demo and Exercises are combined

  1. Introduction to TypeScript
  2. UI Fabric Component Library
  3. Theming and Styling
  4. Testing with Jest
  5. Redux: Reducers
  6. Redux: Dispatching Actions and Examining State
  7. Redux: Stores and Dispatch
  8. Redux: Combining Reducers
  9. Redux: Thunk Middleware

Additional Resources

Follow the Authors!

If you are interested in JavaScript, TypeScript, React, Redux, Design Systems, follow us on Twitter:

@kenneth_chau @micahgodbolt

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Legal Notices

Microsoft and any contributors grant you a license to the Microsoft documentation and other content in this repository under the Creative Commons Attribution 4.0 International Public License, see the LICENSE file, and grant you a license to any code in the repository under the MIT License, see the LICENSE-CODE file.

Microsoft, Windows, Microsoft Azure and/or other Microsoft products and services referenced in the documentation may be either trademarks or registered trademarks of Microsoft in the United States and/or other countries. The licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks. Microsoft's general trademark guidelines can be found at http://go.microsoft.com/fwlink/?LinkID=254653.

Privacy information can be found at https://privacy.microsoft.com/en-us/

Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel or otherwise.