Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mikebild/introduction-nodejs

Introduction to NodeJS
https://github.com/mikebild/introduction-nodejs

async ecma expressjs introduction javascript monorepo nodejs quality spread-operator web-architecture workshop workspace yarn

Last synced: 16 days ago
JSON representation

Introduction to NodeJS

Awesome Lists containing this project

README

        

# Introduction to NodeJS

## Basics

- [Introduction](1-introduction.md)
- [Setup and Basics](2-setup-basics.md)
- [Buffers](9-buffers.md)
- [File System](11-file-system.md)
- [Error-Handling](12-errors-and-globals.md)
- [Globals](12-errors-and-globals.md)
- [Utils](13-utilities.md)
- [Scaling NodeJS-Apps](17-scaling-applications.md)

## Runtime and Environment

- [Web Server](3-first-application.md)
- [REPL](4-repl.md)
- [NPM & Yarn](5-npm-yarn.md)
- [Global vs. Local](5-npm-yarn.md#global-vs-local)
- [`package.json`](5-npm-yarn.md#package.json)
- [Update versions](5-npm-yarn.md#update-versions)
- [Yarn](5-npm-yarn.md#yarn)
- [Upgrade versions](5-npm-yarn.md#upgrade)
- [Workspaces and Monorepo](5-npm-yarn.md#workspaces-and-monorepo)
- [Event-Loop](7-event-loop.md)
- [Quality Tools](19-quality-tools.md)
- [Nodemon](19-quality-tools.md#nodemon)
- [ESLint](19-quality-tools.md#es-lint)
- [Process Manager and Supervisor](19-quality-tools.md#process-manager-and-supervisor)
- [Node-Inspector as Debugger](19-quality-tools.md#node-inspector)
- [Debug as logging tool](19-quality-tools.md#debug-as-logging-tool)
- [Code Style with Prettier](19-quality-tools.md#code-style-with-prettier)

## Web Development

- [HTTP](3-first-application.md)
- [Web Architectures](14-web-architecture.md)
- [Server Side Rendering & Universal JavaScript](14-web-architecture.md)
- [XML/JSON RPC](14-web-architecture.md)
- [RESTful API](14-web-architecture.md)
- [ExpressJS](15-expressjs.md)
- [Basics](15-expressjs.md#setup)
- [Environment & Practices](15-expressjs.md#environment-and-practices)
- [Middleware](15-expressjs.md#middleware)
- [Render Views with Templates](15-expressjs.md#render-views-with-templates)
- [EJS](15-expressjs.md#ejs)
- [Routes](15-expressjs.md#routes)
- [Error Handling](15-expressjs.md#error-handling)
- [Web-Sockets](15-expressjs.md#socketio)
- [RESTful / Hypermedia](15-expressjs.md)
- [Web-Events / Web-Hooks](15-expressjs.md)

## Testing

- [Test Pyramid](16-testing.md#test-pyramid)
- [Test Types](16-testing.md#test-types)
- [Arrange-Act-Assert](16-testing.md#arrange-act-assert)
- [Mocha](16-testing.md#mocha)
- [Assert](16-testing.md#asserts)
- [Negative Tests](16-testing.md#negative-tests)
- [Async](16-testing.md#async-tests)
- [Integration Tests](16-testing.md#integration-tests)

## Deployment

- [NodeJS Production / Deploment](24-deployment)
- [Introduction to Docker](https://github.com/mikebild/introduction-docker)
- [Introduction to Kubernetes](https://github.com/mikebild/introduction-kubernetes)
- [Docker & Kubernetes Tools](./tools.md)
- [AWS Node-Lambda](https://www.npmjs.com/package/node-lambda)
- [Now](https://now.sh)
- [Netlify](https://www.netlify.com/)

## Async Pattern

- [Callbacks](6-callbacks.md)
- [EventEmitter](8-event-emitter.md)
- [Streams](10-streams.md)
- [Promises](18-async-promises.md)
- [RxJs](22-rxjs.md)

## ECMA

- [ECMA with Babel](21-ECMA.md)
- [Block-Scope](21-ECMA.md#block-scope)
- [Template Strings](21-ECMA.md#template-strings)
- [Destructing](21-ECMA.md#destructing)
- [Classes](21-ECMA.md#classes)
- [Statics](21-ECMA.md#statics)
- [Object-Literal Extentions](21-ECMA.md#object-literal-extentions)
- [Modules, Exports and Imports](21-ECMA.md#modules-exports-and-imports)
- [Arrow Functions](21-ECMA.md#arrow-functions)
- [Default Parameter](21-ECMA.md#default-parameter)
- [Rest Parameters](21-ECMA.md#rest-parameters)
- [Spread Operator for Objects](21-ECMA.md#spread-operator-for-objects)
- [Spread Operator for Arrays](21-ECMA.md#spread-operator-for-arrays)
- [Promises](21-ECMA.md#promises)
- [Async and Await](21-ECMA.md#async-and-await)
- [Generator Function](21-ECMA.md#generator-function)

## TypeScript

- [Setup](23-TypeScript.md#setup)
- [Testing](23-TypeScript.md#testing)
- [Resources](23-TypeScript.md#resources)

## Functional JS

- [Functional JS](20-functional.md)

## Examples

- [ExpressJS-EJS](/EXAMPLES/EXPRESSJS/SSR/README.md)
- [ExpressJS-SPDY/HTTP2 Server-Side Events](/EXAMPLES/HTTP2/EXPRESSJS-SPDY/README.md)

## Issue Reporting

If you have found a bug or if you have a feature request, please report them at
this repository issues section. Please do not report security vulnerabilities on
the public
[GitHub issue tracker](https://github.com/MikeBild/introduction-nodejs/issues).

## License

This project is licensed under the MIT license. See the [LICENSE](LICENSE) file
for more info.

## Thanks

You like this **NodeJS introduction** and you want to see what coming next?
Follow me on Twitter [`@mikebild`](https://twitter.com/mikebild).

Enjoy!