Git Product home page Git Product logo

cpsc113-social-todo-node's Introduction

CPSC113 Social todo app

This is my starter app. It is going to be sick.

How to run this

Get the repo

git clone https://github.com/kljensen/cpsc113-social-todo-node
cd cpsc113-social-todo-node

Install the dependencies

npm install

You'll need to start MongoDB somewhere to store data. And, you'll need to choose a secret for signing browser cookies.

You can run the server with something similar to

PORT=5000 SESSION_SECRET='sdf' MONGO_URL="mongodb://localhost:27017/social-todo" ./node_modules/.bin/nodemon index.js

where your values of PORT, SESSION_SECRET, and MONGO_URL could be different. If you are on Cloud9, don't set PORT. SESSION_SECRET can be whatever you want.

To see how this app was built, follow these videos. (I should have indexed the videos by commit so that you could rewind this code. That would tough, perhaps next time.) This code passes 31 of the tests in the test suite. It does everything except task completion and deletion. It is roughly 250 lines long, many of which are comments.

(There are MANY ways in which this app could be written. In these videos I wanted to do it from the "hello world code" on the express.js website without using too many fancy dependencies. This is not the fastest or the smartest way to build the app.

  1. Overview of social todo app
  2. Running the testing code
  3. Getting started with node and express
  4. add view layer to express
  5. add login forms to views
  6. handle submitted registration form
  7. Add mongodb support
  8. Add form validation
  9. Add session handling
  10. Add session persistence and password hashing
  11. Add tasks

I failed to do a few things in these screencasts. First, I did not show you the git branch-work-commit workflow as well as I should have. Second, once I reached the end, I cleaned up a few things in this commit and I did not record myself doing that. You'll notice that clean up involved adding classes to certain elements and handling a few errors in a way that the end to end grading tests.

You are free to use the code in any way for the first assignment, including as a starting point for your app. This code does not pass tests related to task completion and deletion. You'll need to complete those.

cpsc113-social-todo-node's People

Contributors

kljensen avatar warrenbuhler avatar

Watchers

 avatar

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.