diff --git a/index.js b/index.js new file mode 100644 index 0000000..3e9fc2e --- /dev/null +++ b/index.js @@ -0,0 +1,9 @@ +console.log('Hello, Node!') +const profile = require('./src/profile.js') +console.log(profile); + +const path = require('path') +console.log(path.resolve()) + +const momentName = require('moment') +console.log(momentName().format('MMMM Do YYYY, h:mm:ss a')) \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..f2886cb --- /dev/null +++ b/package-lock.json @@ -0,0 +1,13 @@ +{ + "name": "w1-node-ecosystem", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "moment": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", + "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..202bddc --- /dev/null +++ b/package.json @@ -0,0 +1,24 @@ +{ + "name": "w1-node-ecosystem", + "version": "1.0.0", + "description": "Welcome to JSCRIPT 400 - Server Side Development with JavaScript", + "main": "index.js", + "scripts": { + "test": "echo \"Hi Friends\" && exit 1", + "start": "node index.js" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/katrinagd/w1-node-ecosystem.git" + }, + "keywords": [], + "author": "", + "license": "ISC", + "bugs": { + "url": "https://github.com/katrinagd/w1-node-ecosystem/issues" + }, + "homepage": "https://github.com/katrinagd/w1-node-ecosystem#readme", + "dependencies": { + "moment": "^2.24.0" + } +} diff --git a/readme.md b/readme.md index ccca3f4..8917643 100644 --- a/readme.md +++ b/readme.md @@ -38,65 +38,49 @@ $ npm -v * **Question:** What is the difference between forking and cloning a repository as opposed to just cloning a repository? -* **Your Answer:** - ---- +* **Your Answer:** A fork is a copy of a repository that allows you to experiment with changes without affecting the original project. Cloning makes a local repo that is not connected to the original repo. - [ ] Run `npm init -y` from the command line * **Question:** What does `npm init` do? How does the `-y` flag modify that command? -* **Your Answer:** - ---- +* **Your Answer:** Create a package.json file. -y generate it without having it ask any questions. - [ ] Take a look at the file that was generated by the previous command * **Question:** What is the purpose of the following keys? "name", "scripts", "license" -* **Your Answer:** - ---- +* **Your Answer:** 'Name' is the name of the project folder. 'Scripts' - a list of various commands like npm start, npm stop, npm restart etc. 'License' - an open source license you might be using. - [ ] Create a `.gitignore` file * **Question:** What is the purpose of the `.gitignore` file? What is the significance of a "dot-file?" -* **Your Answer:** - ---- +* **Your Answer:** A dot file indicates a hidden file. A .gitignore file is where you list any other files you want gut to ignore (large files, API key) - [ ] Create an `index.js` file with the following contents: `console.log('Hello, Node!')` * **Question:** From the command line, how can you run this file? -* **Your Answer:** - ---- +* **Your Answer:** node index.js - [ ] Run `npm test` from the command line * **Question:** What happens and how is this related to what is in the `package.json` file? -* **Your Answer:** - ---- +* **Your Answer:** Will run tests specified in the scripts section in the package.json file. We get an error as per file. - [ ] Create a new "script" command called "start" that has the following value: `node index.js` * **Question:** What will you enter on the command line to run that script? -* **Your Answer:** - ---- +* **Your Answer:** npm start - [ ] Change the name of your "start" script to "my-file" * **Question:** The same pattern will not work to try and run this script. How can you successfully get this script to run? -* **Your Answer:** - ---- +* **Your Answer:** npm run my-file - [ ] Create a new file called `profile.js`. Inside the file, copy the following but replace `` with your name: ```js @@ -111,21 +95,20 @@ $ npm -v * **Question:** What gets logged? Why? -* **Your Answer:** +* **Your Answer:** +Hello, Node! +Katrina +As per profile.js * **Question:** What is `module.exports` and what is its _type_ in JavaScript? What is `require` and what is its _type_ in JavaScript? -* **Your Answer:** - ---- +* **Your Answer:** `module.exports` is an object (exported from profile.js). `require` is a function. - [ ] We can only export one thing from files when using Node. With that said, export both your name and your birthday from the `profile.js` file. * **Question:** What are some ways you can solve this problem? -* **Your Answer:** - ---- +* **Your Answer:** Create an array. - [ ] Add the following to your `index.js` file. Then, run your file. ```js @@ -135,25 +118,19 @@ $ npm -v * **Question:** What is `path` and where does it come from? -* **Your Answer:** - ---- +* **Your Answer:** It's the path/folder structure of the file. It comes from the node module by default. - [ ] Install the [moment](https://www.npmjs.com/package/moment) package * **Question:** What command can you run to install this package? -* **Your Answer:** - ---- +* **Your Answer:** npm install moment - [ ] On your own, use this package in the `index.js` file * **Question:** Do you need to use a `./` to require the package? Why or why not? -* **Your Answer:** - ---- +* **Your Answer:** No, it is in the `node_modules` folder - [ ] Move your `profile.js` file into a `src/` folder. Update the path in your `index.js` file to ensure everything continues to work. diff --git a/src/profile.js b/src/profile.js new file mode 100644 index 0000000..fca276b --- /dev/null +++ b/src/profile.js @@ -0,0 +1,7 @@ +const name = 'Katrina' +const age = '39' + +module.exports = { + name, + age +} \ No newline at end of file