This project is a simple to-do list app build with Jade/PUG, CSS, jQuery, Express.js at Skylab Coders Academy Full Stack Web Development Bootcamp.
You can launch the app using some NPM scripts:
npm start
Will launch the app and will install the npm dependencies automaticallynpm run dev
Will launch the app w/ nodemon so it will restart itself when any file of the project is modified and saved ignoring /data-db foldernpm run dev:debug
Will launch thenpm run dev
script w/ lots of debugging info about the app
All these endpoints will start locally w/ http://localhost:3000
Example: http://localhost:3000/tasks
In this project instead of using a formal database the user's email and password are being stored in a raw .txt, as a project complement I decided to use node core module crypto
to encrypt and decrypt the personal information, so in consequence at helpers/crypto.js
at line 3 I used a randomized ID to set the main keyword on which the algorithm aes-256-ctr
will take as a the base to encrypt/decrypt, meaning every time the server is restarted, a new ID will be created and will make old data indecipherable. If you're using this in development change const cryptoPass = createID()
to const cryptoPass = 'yourSecretKey'
.