A simple CRUD app written in nodejs.
Start the app with npm start
. Navigate to http://localhost:3000.
For client-side dev, run npm start
from the client
folder.
Deployed to https://boiling-lake-47544.herokuapp.com/ (for now.)
-
Body of the POST/PUT is a JSON object
-
Names are exclusively latin alphanumeric characters (no spaces,dashes, etc.)
-
Delete buttons should be implemented to remove employees (present in template but not mentioned in spec)
-
Update button should be implemented to update existing employees (present in template but not mentioned in spec)
-
Exhaustive error handling, client-side validation, and tests are outside the scope of this challenge
Quick search for node REST frameworks indicates that Express is still popular. I’ve meddled with that before so it seems like a reasonable choice.
I’ve used Heroku to deploy apps before, and they have decent tutorials - I’ll start with their template. That will have a nice side effect of making the app easy to share.
Which version of node do I want? Looks like consensus is take the latest "LTS" version, which is currently 14.x, but 16.x will be ready for primetime in October. https://nodejs.org/en/about/releases/
Used ExpressJS Getting Started guide to boostrap an app: https://expressjs.com/en/starter/installing.html
This could be neat, but the spec implies that we should be updating the table client-side using REST calls. Removing PUG to simplify process of writing dynamic front-end.
Many sites referenced for basic information & syntax, in particular:
React sources:
-
-
Introductory React course on Pluralsight
-
-
Deploy React and Express to Heroku
-
Blog post describing how to integrate React into an existing Express app and deploy to Heroku
-