All Projects β†’ mike-works β†’ Vscode Fundamentals

mike-works / Vscode Fundamentals

Licence: bsd-3-clause
πŸ‘¨β€πŸ« Mike's Visual Studio Code Course

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to Vscode Fundamentals

Vscode Docthis
JSDoc generator extension for Visual Studio Code.
Stars: ✭ 284 (+62.29%)
Mutual labels:  jsdoc, visual-studio-code
Python-Course
🐍 This is the most complete course in Python, completely practical and all the lessons are explained with examples, so that they can be easily understood. 🍫
Stars: ✭ 18 (-89.71%)
Mutual labels:  course, visual-studio-code
Live Share
Real-time collaborative development from the comfort of your favorite tools
Stars: ✭ 1,920 (+997.14%)
Mutual labels:  visual-studio-code
Vscode Theme Onedark
VSCode Theme based on Atom's One Dark theme
Stars: ✭ 165 (-5.71%)
Mutual labels:  visual-studio-code
Jsdoc
An API documentation generator for JavaScript.
Stars: ✭ 12,555 (+7074.29%)
Mutual labels:  jsdoc
Vue Getting Started
This project is seen in demos including the Pluralsight course "Vue: Getting Started" to help represent a fundamental app written with Vue. The heroes and villains theme is used throughout the app.
Stars: ✭ 149 (-14.86%)
Mutual labels:  course
Dslsofmath
Domain Specific Languages of Mathematics
Stars: ✭ 159 (-9.14%)
Mutual labels:  course
Mongodb For Python Developers
MongoDB for Python developers course handouts from Talk Python Training
Stars: ✭ 141 (-19.43%)
Mutual labels:  course
Lunatech Scala 2 To Scala3 Course
Lunatech course - "Moving forward from Scala 2 to Scala 3"
Stars: ✭ 174 (-0.57%)
Mutual labels:  course
Sfml Vscode Boilerplate
A cross-platform SFML 2.5.1 & C++17 build environment for Visual Studio Code
Stars: ✭ 156 (-10.86%)
Mutual labels:  visual-studio-code
Vscode Remote Release
Visual Studio Code Remote Development: Open any folder in WSL, in a Docker container, or on a remote machine using SSH and take advantage of VS Code's full feature set.
Stars: ✭ 2,256 (+1189.14%)
Mutual labels:  visual-studio-code
Awesome Web You Should Know
🌎awesome web you should know
Stars: ✭ 154 (-12%)
Mutual labels:  course
Vscode Dev Containers
A repository of development container definitions for the VS Code Remote - Containers extension and GitHub Codespaces
Stars: ✭ 2,715 (+1451.43%)
Mutual labels:  visual-studio-code
Curso blockchain
Indtroductory course to cryptocurrencies and applications of Blockchain technologies.
Stars: ✭ 161 (-8%)
Mutual labels:  course
Electron React Typescript Webpack Boilerplate
Pre-configured boilerplate for Electron + React + TypeScript + Webpack
Stars: ✭ 146 (-16.57%)
Mutual labels:  visual-studio-code
Pythonvscode
This extension is now maintained in the Microsoft fork.
Stars: ✭ 2,013 (+1050.29%)
Mutual labels:  visual-studio-code
Processing Vscode
A Visual Studio Code extension for the programming language Processing
Stars: ✭ 141 (-19.43%)
Mutual labels:  visual-studio-code
Natural Language Processing Specialization
This repo contains my coursework, assignments, and Slides for Natural Language Processing Specialization by deeplearning.ai on Coursera
Stars: ✭ 151 (-13.71%)
Mutual labels:  course
Aura Theme
πŸ’…β€A beautiful dark theme for your favorite apps.
Stars: ✭ 159 (-9.14%)
Mutual labels:  visual-studio-code
Html Css Class Completion
🍫 Visual Studio Code extension that provides CSS class name completion for the HTML class attribute based on the CSS files in your workspace
Stars: ✭ 174 (-0.57%)
Mutual labels:  visual-studio-code

This is the example project used for the Mike Works Visual Studio Code course.

Course outline and slides

About This Workshop

Visual Studio Code is a modern, lightweight and full-featured code editor, built from the ground up to suit the needs of web developers, and JavaScript developers in particular. In this course, we'll dive deep into using, customizing and extending it.

What will we do?

We’ll begin by taking a look at how we can get this fantastic tool to do as much heavy lifting for us as possible. Recent improvements have perfected the ability to attach directly to browsers and Node.js for a truly excellent debugging experience.

If you spend all day looking at and manipulating code, you may as well have your settings exactly the way you want them. We’ll go deep into customizations that’ll affect embedded feedback from static code analysis, the look and feel of the editor and study a few of the best and most useful extensions.

Because VS Code is built with web technology, it’s easy for JavaScript and TypeScript developers to customize and extend. We’ll build two extensions of our own, unlocking extra productivity when working on common tasks.

By coding along with this two day (split into four half-days) workshop, you will:

  • Get hands on experience with debugging in a variety of scenarios
  • Learn how to use launch configurations to execute programs run shell scripts
  • Unlock extra productivity by consolidating your terminal, debugger and editor into one tool
  • Learn about deep customization options that make a REAL difference in how you get your work done
  • Get a tour of plugins so powerful, after using them you’ll wonder how you ever lived without them!
  • Build your own β€œcode snippet” extension And more…

Setup

Please make sure you have the following software installed before arriving at the workshop or beginning the course.

General Packages

Please make sure you have the following general software installed

Required Library Version Range Notes
βœ” Node.js >= 8.0 nvm is highly recommended for managing multiple node versions on a single machine
βœ” Visual Studio Code >= 1.14 We'll be using several specific features of the VS Code editor. We can't force you to use it, but you'll miss out if you don't!
βœ” Yarn >= 0.24 An alternative to npm (if you are using nvm: brew install yarn --without-node, else use brew install yarn)
βœ” SQLite >= 3 An embedded relational database (hint: brew install sqlite3)

VS Code Extensions

Additionally, to take advantage of syntax hilighting, static code analysis and other editor features, you'll want to install the latest version of the following VS Code extensions

Required Extension Notes
βœ” sass-indented Syntax highlighting and code completion support for Sass stylesheets
βœ” eslint Static code analysis for JavaScript and JSX files
βœ” jest Syntax highlighting for Jest snapshot testing and in-editor test pass/fail statuses
βœ” Debugger for Chrome Allows us to attach to Chrome for debugging
vscode-icons Better file and folder icons
rest-client An in-editor REST client, so we can experiment with our API effortlessly

Global Node.js Packages

Make sure you have these npm packages installed globally. This can be done by running

npm install -g <package-name>
Required Library Version Range
βœ” babel-eslint ^7.0.0
βœ” eslint ^4.0.0
βœ” eslint-plugin-babel ^4.0.0
βœ” eslint-plugin-react ^7.1.0

Project setup

First, clone this project from Github

git clone https://github.com/mike-works/vscode-fundamentals vscode
cd vscode

Finally, while in the top-level folder of this project, download the and install this project's dependencies by running

yarn

To start the app, run

npm start

and you should see something on http://localhost:3000

Troubleshooting

What if I have an older version of Node.js?

You may run into problems during the workshop! An easy way to deal with this is to...

  • install nvm by running
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash

or Wget:

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash
  • then restart your terminal
  • then run
nvm install stable
nvm use stable
nvm alias default stable

What if I get an error like Please install sqlite3 package manually?

If you use OS X, it can be installed with homebew

brew install sqlite3

Windows and Linux users, please install the appropriate official release.

Files and Folders

This is a free-standing client/server system, including

  • A database
  • A REST API
  • A single-page-app web client
 Project
 β”‚
 β”œβ”€ client/            πŸ“± React web client
 β”‚  β”œβ”€ components/     πŸ“Š React components
 β”‚  β”‚  β”‚
 β”‚  β”‚  β”œβ”€ my-thing/index.jsx        Component implementation
 β”‚  β”‚  β”œβ”€ my-thing/index.test.js    Component tests
 β”‚  β”‚  └─ my-thing/styles.scss      Component styles
 β”‚  β”‚
 β”‚  β”œβ”€ routes/         πŸ” Top-level React components, each corresponding to a "page" in our app
 β”‚  β”œβ”€ sass/           πŸ’… Global Sass stylesheets
 β”‚  β”œβ”€ app.jsx         🎁 React "App" component  
 β”‚  β”œβ”€ index.js        🎬 Web client entry point
 β”‚  └─ index.ejs       πŸ“„ Template for web client index.html
 β”‚
 β”œβ”€ db/                πŸ’Ύ SQLite databases
 β”œβ”€ dist/              πŸ“¦ Web client development/production builds
 β”œβ”€ server/            πŸ›’ Node.js API to support the web client
 β”œβ”€ webpack/           βš™οΈ Build configuration
 └─ .vapid.json        πŸ” VAPID private and public keys

What are the pieces?

License

While the general license for this project is the BSD 3-clause, the exercises themselves are proprietary and are licensed on a per-individual basis, usually as a result of purchasing a ticket to a public workshop, or being a participant in a private training.

Here are some guidelines for things that are OK and NOT OK, based on our understanding of how these licenses work:

OK

  • Using everything in this project other than the exercises (or accompanying tests) to build a project used for your own free or commercial training material
  • Copying code from build scripts, configuration files, tests and development harnesses that are not part of the exercises specifically, for your own projects
  • As an owner of an individual license, using code from tests, exercises, or exercise solutions for your own non-training-related project.

NOT OK (without express written consent)

  • Using this project, or any subset of exercises contained within this project to run your own workshops
  • Writing a book that uses the code for these exercises
  • Recording a screencast that contains one or more of this project's exercises

Copyright

Β© 2018 Mike Works, Inc., All Rights Reserved

This material may not be used for workshops, training, or any other form of instructing or teaching developers, without express written consent
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].