This lab features a working web server containing a portfolio website for you to alter. In order to get this working, follow these steps:
- Create a new, empty repository, called
portfolio
- Initialize it with a
.gitignore
forNode
- Do not initialize it with a README
- Initialize it with a
- Clone that to your machine
- Copy the contents of this folder into your repo
- Not the
lab
folders itself, but these actual files
- Not the
- Run the command
npm install
- Run the command
npm start
- Open your browser to: http://localhost:3000
Following those steps, you should see an empty portfolio. Now, you may commence working on the actual lab assignment.
The folders containing the porfolio code for you to edit and modify can be found in the public
folder herein
For each of the features listed, make an estimate of the time it will take you to complete the feature, and record your start and finish times for that feature:
Number and name of feature: Feature 1: Refactor the CSS
Estimate of time needed to complete:
Start time:
Finish time:
Actual time needed to complete:
Why are we implementing this feature?
- As a user, I want the portfolio to have a clean UI so that it is visually appealing.
What are we going to implement?
Given that a user opens the application in the browser When the user navigates to the home page Then the portfolio contents should be displayed
How are we implementing it?
- Refactor the main.css file using SMACSS principles.
- You may decide how many files to include, but at the minimum should include
base.css
,layout.css
, andmodules.css
. However, think through the way you separate your CSS rules. For example, you may want several CSS files in a modules folder, if you feel that the code needs to be organized in that manner.
- You may decide how many files to include, but at the minimum should include
Number and name of feature: Feature 2: Modify the Contents
Estimate of time needed to complete:
Start time:
Finish time:
Actual time needed to complete:
Why are we implementing this feature?
- As a user, I want to view a unique portfolio so that the skills and personality of the developer are portrayed.
What are we going to implement?
Given that a user opens the application in the browser When the user navigates to the home page Then the content should be unique and reflect the skills and personality of the developer
How are we implementing it?
- Modify the contents of the template to make it your own. The HTML elements may remain the same if you like, but the content should be adapted to reflect your personal details and skills.
- Apply the following changes, some of which were part of your prework for this course:
- Next to the header image, add your name and a short, 2-3 word title.
- In the Intro section, add a personal headline. This should be the same as or similar to your headline on your LinkedIn profile.
- In the Portfolio section, state what you are excited about in tech. Add links to projects and include placeholders for future 301 and 401 projects. If you would like, you can add links to sites such as LinkedIn and GitHub here, or social sites.
- In the About Me section, add your personal pitch and banner photo.
- Add you own color scheme and Google fonts.
- Change the content and images to reflect your personal preferences. If you are using online images, make sure they are licensed for free, commercial use. For example, Unsplash has a nice variety of free images.
- Update the list of social media icons with your links using icons for your favorite social media sites from IcoMoon or Font Awesome.
- Keep in mind that this template is just a starting point. It is yours to modify to reflect your personal online presence as a software developer so have fun and be creative!