Today’s workshop is going to be pretty hectic; there’s a lot to get through and I’m keen not to spend too much time talking at you. Below is a list of things I’d like to cover and the rough order in which I want to go about it but… Let’s just enjoy ourselves, freestyle it and hammer out some code! Interrupt me shout out, open up discussion and let’s have fun!
- Intro
- Setup
- Get the repo
- Get Sass working
- Intro to Sass for any who need it
- Have a peek round the repo
- Look at the design
- Rationalise/discuss it
- Deconstruct it
- Code theory
- A shift in thought
- The web has changed
- The three stakeholders – who we need to keep happy
- SRP
- Selectors
- Specificity
- Semantics are silly
- Naming things
- Naming conventions
- Shearing layers
- A shift in thought
- Let’s code!
- Familiarise ourselves with the codebase
- This looks huuuuuuge!
- Look at its structure, what lives where (and why)
- Using the above, let’s build some stuffs!
- No layout.
- Familiarise ourselves with the codebase
- Layout
- Layout should be a component unto itself
- Put all our components into a page
- Done.
- Questions, recap.
settings/
– Variables, feature switches and other project specific settings. These are defined first and will be picked up and used by the framework later on.tools/
– Mixins and functions to make tasks easier. These appear early on so that they can be utilised in the main body of the codebase.generic/
– Resets, globalbox-sizing
. These styles are really far reaching; they underpin every element we place on the page.base/
– Base elements, unclassedh1
,ol
, etc. These are semantic HTML elements that require some base styling for when they exist outside of a component context (e.g. a regular, bulleted list in some body copy).objects/
– design patterns, objects, abstractions and constructs.gui/
– Designed components and modules. These build on top of semantic HTML elements and are referred to mainly through class selectors.trumps/
– Style trumps, helper classes and overrides. These need to override any other styles and thus come last. It is not uncommon for these styles to carry!important
.
- Page background color:
#f9f9f9
- Page text color:
#424242
- Pink:
#f43059
- Nav border color:
#e0e0e0
- Nav grad start:
#fafafa
- Nav grad stop:
#e1e1e1
- Grey box grad start:
#535657
- Grey box grad stop:
#414445
- Pink button grad start:
#f54469
- Pink button grad stop:
#d12a4c
- Pink button border color:
#bd2343
- Grey button grad start:
#30312f
- Grey button grad stop:
#292a28
- Grey button border color:
#1a1b19
- Solid grey box color:
#e8e1df
h1
:h2
:h3
:h4
:h5
:h6
: