A slideshow for teaching backend developers (or anyone with some programming experience) about frontend development.
This project is a clone of reveal.js (because that's how it's supposed to be used).
- JS
- type coercion
- scope (
const
,let
) - functions (regular and arrow, closures)
- readability
- context (
this
) - prototypal inheritance and classes
- asynchrony (event loop, callbacks, promises, async/await)
- ecosystem and tooling (package managers, bundlers, FE frameworks, libraries, data layers, testing, caniuse.com, other tools)
- Web APIs
- DOM (Document, Element, Event,
document.cookie
) - Fetch
- Storage (
localStorage
,sessionStorage
) - Web workers
- WebSockets?
- DOM (Document, Element, Event,
- iterators and generators?
- proxies?
- functional programming
- Styling
- HTML5 (semantic tags (,
, - CSS (
- selectors (also pseudo elements/selectors and universal/child/adjacent selectors)
- specificity
- units
- colors
- text?
- box model
- floating and positioning
- flexbox
- @ rules
- responsiveness
- transitions/animations
- grid
- best practices (BEM, ITCSS)
- SASS
- SVG (currentColor, SVG.js)
- Shadow DOM
- HTML5 (semantic tags (,
- Typescript
- new types (interface, tuple, enum)
- type assertions
- union / intersection types
- generics
- RxJS
- differences with promises
- concepts
- values and events
- subjects
- hot/cold observables
- Angular
- concepts (components, services, modules, routing)
- components (inputs/outputs, lifecycle hooks, templates)
- reactive forms
- development (cli, testing with spectator and jest)
- React
- Vue
- Redux
- NX
- Node.js
- Slide about me
- Add favicon?
- Migrate to latest version of reveal.js or migrate to eagle.js?