Giter Site home page Giter Site logo

node-workshop's Introduction

node-girls-logo

presents...

Node.js CMS workshop

Join the chat at https://gitter.im/node-girls/workshop-cms

What?

Build your own Node.js project

Today you'll be building your very own platform to write blog posts. You will be able to write blog posts and save them.

This is often referred to as a content management system (CMS).

This is a very basic tutorial to get you started with Node.js. At the end of the tutorial, there are optional stretch goals to introduce more advanced concepts.

Why?

We believe in learning by doing!

How?

Structure of the workshop

You will be working on this project with your team. Your mentor will be with you to help you out and answer any questions.

First, fork this repository and clone onto your own machine

The project has been split into steps, which are documented in separate files here on the master branch.

Each step builds progressively on top of the previous step. Just follow the instructions and commit the changes as prompted at the end of each step. Have fun!

Keywords and jargon

You will see code snippets throughout the walkthrough. Try to resist the urge to copy and paste - you will learn much more if you get into the habit of typing things out.

You might want to test out small bits of code and run them before adding it to your project. For this, you can use repl.it if you like.

Throughout each step, we have bolded any jargon that you may or may not be familiar with. At the bottom, you'll find a keywords section, some of them with links to further explanations.

There is also a link to the general Node Girls cheatsheet under Useful links at the end of this README.

Your mentor is there to help you. Don't let them die of boredom - talk to them and ask questions!

Pair programming!

We think learning together is really important. We'd like you to do this workshop in pairs. It's a really effective way to code that is held in high regard by many in the programming world.

One of you can fork this repository and you can take it in turns to 'drive' (i.e. type).

Don't worry, you can both get a copy of your work if the other person forks their partner's version too ๐Ÿ˜„


Walkthrough

Have fun learning

Useful links

node-workshop's People

Contributors

claireinez avatar cristinaro avatar dangerdak avatar engayoosh avatar gitter-badger avatar heron2014 avatar kaxcode avatar marisid avatar minaorangina avatar msmichellegar avatar natalialkb avatar salam-dalloul avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

node-workshop's Issues

Error handling

Should we add some links to good tutorials about error handling in Node.js?

Main readme enhancement

Proposition of reformat:

  • add node-girls logo
  • reformat into what, why and how
  • add explanation that this tutorial is very basic for the sake of simplicity
  • add bits about stretch goals readme (best practise structure)
  • add references to where find more useful tutorials (linked our node-girls tutorials)
  • add reference to cheatsheet
  • add maybe steps how to install node?

Stretch readme

Proposition:

  • Add examples how to modularise project structure
  • Add links to our previous workshop from November
  • Reformat
  • Add references where to go next
  • Add best practise example: 'use strict' etc

Step10 readme

  • explain in more detail about what steps they need to take , what they need to be aware, hints

Change name of the handler function to router

From points raised from Founders and Coders students whilst doing this workshop (documented in foundersandcoders/master-reference#781) we would like to change the name of the handler/handler.js function/file to router/router.js.

The reasoning would be that this function is what handles the routing of the request (via the if(endpoint === "/") etc block). The logic for actually handling each request (serving resources etc) can be abstracted into separate functions, but the function directly passed to http.createServer always has to deal with routing.

The work needed for this would be to change all references to the handler function or the handler.js file to router or router.js respectively.

Optimise for using course remotely

Hey, I've been trying to follow this workshop but am visiting family and don't have the luxury of a mentor/study-buddy. I think that this workshop could be much improved for independent learning by including what the server.js file contains at the end of the 5th and 6th Stages.

I've got to Stage 5/6 but I can't make sense of what's going on as I don't think my code matches what the workshop is doing at the moment.

Link specifically to req/res in unclear node http module documentation

In week 7, we found that it is difficult for people to find the authoritative documentation on request objects, as they are described in the node docs as message or IncomingMessage (which is a type which could be either ClientRequest or ServerResponse )
Proposal:
In 'What is a handler function?' in Step 3, include:

(request and response are instances of the two different types of IncomingMessage object)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.