๐ป Project #4: Personal Website
Overview
In this project, you will create a responsive personal website that demonstrates your mastery of Bootstrap and the concepts covered in the tutorials. The project is open-ended to encourage creativity while giving you the opportunity to practice building a responsive and visually appealing website.
Project Goal
Design and develop a one-page personal website using Bootstrap classes and UI components. Your website should reflect your personality, interests, or goals and include well-organized sections with responsive layouts.
๐ฅ PROJECT SETUP & SUBMISSION INSTRUCTIONS
- Go to the public template repository for our class: BWL-CS HTML/CSS/JS Template
- Click the button above the list of files then select
Create a new repository - โญ๏ธ Specify the repository name:
YourUsername.github.io - Click
Now you have your own personal copy of this starter code that you can always access under the
Your repositoriessection of GitHub! - Now on your repository, click and select the
Codespacestab - Click
Create Codespace on mainand wait for the environment to load, then youโre ready to code! - ๐ Write code in this Codespace during class.
Instructions
PART A: Plan Your Personal Website
๐ง BRAINSTORMING CONTENT:
- Hero Section: A welcoming section with your name, a title, and a short tagline.
Think about how you want to introduce yourself. Consider a tagline or quote that represents your values or aspirations.
- About Me: A section describing who you are, your interests, or your goals.
What makes you unique? Share your hobbies, favorite activities, or personal story. Include a profile picture or avatar.
- Portfolio/Showcase: If you have completed projects, hobbies, achievements, or any creative work, showcase them here. If not, create placeholders for future content.
- Other ideas for sections:
- Skills: Highlight your technical or personal skills.
- Testimonials: Add quotes from your peers, or feedback from others.
- Photo Gallery: Display images in a grid layout.
- Favorites: Rank your favorites of something (games, books, etc.)
๐ก DESIGN INSPIRATION:
- Developer Portfolio Websites
Scroll down to the list of links, open random pages, and make notes of specific design choices that resonate with you, such as interesting layouts or font styles.
- Explore Coolors - Trending Color Palettes and SheCodes - Color Palette Ideas
PART B: Build your Layout
- Start with an eye-catching Hero Section:
- Create a
<div class="container-fluid"></div>at the top of your page. - Give it a Bootstrap background color (any of the
.bg-*classes) to start (customize later). - Add a large heading with your name and a short paragraph tagline centered in the section.
- Create a
- Build out a variety of Grid-Based Layouts:
- Organize every section of content in at least one outer
<div>, and decide whether you want it to be a fixed.containeror full-width.container-fluid. - Within some sections, use Bootstrapโs grid system to create interesting layouts for your content.
- Remember grids follow the pattern:
.containerโ.rowโ.colโ CONTENT - Experiment with different column sizes for each section (e.g.,
.col-6,.col-md-4).
- Remember grids follow the pattern:
- Organize every section of content in at least one outer
- Include professional-looking UI Components:
- Use Bootstrap UI Components like cards, buttons, badges, or carousels to make your site visually appealing.
- Remember you can copy & paste code snippets directly from the Bootstrap documentation website, then edit the plain text and/or image sources.
PART C: Fill in Content & Images
- Write meaningful text content for each section.
- Use images that reflect your personality, work, or interests.
- Add decorations like icons, emojis, or clipart (transparent background pictures).
PART D: Style with Bootstrap Classes & Custom CSS
- Use Bootstrap Formatting Classes to quickly add style to your page. Attach their
classnames to your HTML elements.๐ RESOURCES: While working on this project you are encouraged to look up any Bootstrap
classnames or starter code snippets! Refer to the ๐ Bootstrap Documentation website, review our ๐ Unit 3 Notes, and use your Github demo programs & my CodeCollab examples. - Apply custom styles (using your own
classandidnames to select elements in CSS). Write your own styling rules in astyle.cssfile to make your website unique, like changing thefont-family, using background images or gradients, or adding special effects & animations.Review CSS here: ๐ Unit 1 Notes & ๐ Unit 2 Notes
- ๐จ ADVANCED: You can override parts of the Bootstrap color scheme using CSS Variables, copying the syntax pattern below.
This strategy will allow you to keep using Bootstrapโs color utility class names like
text-primaryorbg-primaryorbg-primary-subtle, just with your own custom color values.
/* CSS VARIABLES let us OVERRIDE the Bootstrap color palette:
* primary, secondary, success, danger, warning, info, light, dark
*/
:root {
--bs-primary: rgb(255, 90, 233) !important;
--bs-primary-rgb: 255, 90, 233 !important;
--bs-primary-bg: rgb(255, 90, 233) !important;
--bs-primary-bg-subtle: rgb(255, 188, 246) !important;
}
โ ๏ธ Overriding Bootstrapโs pre-defined class names does NOT ALWAYS WORK! If you want to customize more than just the background color and font color properties, you should add your own id or class attribute to the HTML element and select for it in CSS as usual (see Step 2).
Minimum Requirement Checklist
Before submitting, ensure your website includes the following:
- Hero Section:
- Full-width background (color, image or gradient).
- Large heading and a short tagline.
You can deviate from the suggestions above as long as you still have an eye-catching section at the top.
- About Me Section:
- Text content describing who you are, your interests, or your goals.
- A profile image styled with Bootstrap classes (e.g.,
rounded-circle).
- Portfolio/Showcase Section:
- At least three items displayed.
- Responsive Design:
- Use Bootstrapโs grid system to ensure your website adapts to different screen sizes.
- Use Bootstrap UI components like cards or buttons.
- Custom CSS:
- Include a
style.cssfile with at least five custom styles.
- Include a
Bonus Challenges
- Add a carousel to showcase images or testimonials.
- Add a responsive navigation bar at the top of your website using Bootstrapโs
navbarcomponent. Ensure links scroll to the corresponding sections of the page. - Use Bootstrapโs scrollspy to highlight the current section in the navbar as users scroll.
- Experiment with more interactive Bootstrap components like modals or alerts.