Skip to content

This is the website I built for my HTML/CSS/JavaScript SBA.

Notifications You must be signed in to change notification settings

squeekems/DragonLib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About

Jack R Kern's

HTML/CSS/JavaScript SBA - DragonLib

The file should include technical specifications and description of your website.
Include the link to your GitHub account in the README file(optional)

Description

DragonLib is a phrasal template word game. It prompts players for a list of words to substitute for blanks in a story before reading aloud. The game is frequently played as a party game or as a pastime.

Motivation

MadLibs are such a fun way to play with strings. String manipulation is how I "learn to walk" in unfamiliar programming languages. I would have preferred to work towards my capstone given the nature of this SBA, but I realized the scopes did not match. Given the time limit, and the amount of learning I need for my capstone, I settled for a fun game to play with my family.

You may have noticed a difficult to read font in parts of the site. There are no parts where you willneedto be able to read it. It is a fictional language that has an almost 1 to 1 relationship to the alphabet. It is called dragonscript and it is based on anglo-saxon runes. You may find dragonscript, or very similar scripts, in works of fiction like:
How to Train Your Dragon

<iframe width="300" height="auto" src="https://www.youtube.com/embed/rcrZlzPJDzs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

Challenges

  • My original plan for my three page requirement was to have a dropdown menu page, a form page, and a story page.
    • This plan was failing at the start because my script file was reloading between pages. I could not read the value of my dropdown menu from the first page to generate the form I wanted on the form page.
    • I decided to abandon my website layout in favor of functionality. All three of my pages would be condensed onto one home page.
  • I decided to make my about page populated with my README.md.
    • This involved importing a markdown parsing app into my website.
    • Modifications to their javascript files needed to be made since the default setup was to print the markdown file to the body of the index.
      • To solve this problem, I created a new HTML tag inside my body of the about.html.
  • Getting all of the forms to show up and disappear with appropriate spacing on the Home page was kind of difficult. I think I will be able to figure that out faster in the future. Certainly a learning curve.

Technical requirements:

HTML

  1. Have at least 3 pages, keep the grid system consistent as much as possible
  1. Use at least 10 different HTML tags
  • Here is a list of a lot of the tags used in my HTML files.
    • html
    • head
    • meta
    • link
    • title
    • body
    • div
    • h1
    • h2
    • nav
    • button
    • script
    • img
    • p
    • form
    • label
    • input
    • select
    • option
    • table
    • tr
    • td
    • readme
  1. Use HTML tables
  • Each of the forms generated on the Home Page use table tags.
  1. Implement at least two uses for forms
  • Each of the forms generated on the Home Page use form tags.
  • My Login page uses a form tag too.
  1. Dropped Down Menu
  • The subject selector on the Home page is a dropped down menu.
<select
  name = "cmbSubjects"
  class = "cmbSubjects">
  <option
  </option>
  <option
  </option>
  etc...
</select>
  1. Use web fonts
<link
href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@200&display=swap"
rel="stylesheet">
  1. Use different types of content in the form of text, images, videos, and GIFs
  • I have plenty of text.
  • This is a README.md file.
  • I added different images
    • sparkle.gif
    • Dragon.png
    • Dragon2.png
    • princess.png
  1. Use regex validation
  • My Login page uses regex in the input for email.
<input
  type ="email"
  class = "txtEmail"
  name = "email"
  placeholder = "example@gmail.com"
  pattern = "[a-z0-9]+@[a-z]+\.[a-z]{2,3}" required>
</input>

CSS

  1. Inline, internal, and external styling
  • Ezra told us that we did not need to us all of these types of styling unless we used Spring.
  • I did not use Spring.
  • I most stuck to using external styling. There are some Inline.
  1. Use five different CSS selectors
  • Check my style.css file. There is a lot of selectors. I used visual basic naming conventions because that is what I am use to, but I will probably change this in future projects.
  1. Don’t use too many fonts
  • List of Fonts used:
    1. Source Code Pro
    2. DragonScript-Regular.ttf
  • Backup font:
    • serif
  1. Use colors that complement each other
  • black used for most backgrounds
  • white used for most colors
  • blue used for most borders

Javascript

  1. External scripts
  • I imported display-markdown to parse my README.md onto my About page.
  • I have a script.js file.
  1. Use variables, if statements, loops, at least one form of collections, functions/call back, and events
  • You will find all of this inside my script.js file.

About

This is the website I built for my HTML/CSS/JavaScript SBA.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published