diff --git a/.babelrc b/.babelrc deleted file mode 100644 index 84c2e57..0000000 --- a/.babelrc +++ /dev/null @@ -1,16 +0,0 @@ -{ - "env": { - "test": { - "presets": [ - [ - "@babel/preset-env", - { - "targets": { - "node": "current" - } - } - ] - ] - } - } -} diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index 5d12634..0000000 --- a/.editorconfig +++ /dev/null @@ -1,13 +0,0 @@ -# editorconfig.org -root = true - -[*] -indent_style = space -indent_size = 2 -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true - -[*.md] -trim_trailing_whitespace = false diff --git a/.prettierrc b/.prettierrc deleted file mode 100644 index 59639c5..0000000 --- a/.prettierrc +++ /dev/null @@ -1,5 +0,0 @@ -{ - "semi": false, - "arrowParens": "always", - "singleQuote": true -} diff --git a/README.md b/README.md index c68766c..6bfbe03 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,5 @@ # Preons documentation -[Website](https://preons.netlify.app/) | [Contributing](#contributing) - -[![](docs/images/2020-05-16-11-32-52.png)](https://preons.netlify.app/) - -## Contributing - -This is based on [Nuxt](https://nuxtjs.org/) and [Vue](https://vuejs.org/). - -If something's missing, or you want to help with the documentations, you're more than welcome. Most of the effort is going into buiding Preons itself. - -```bash -# install dependencies -$ yarn install - -# serve with hot reload at localhost:3000 -$ yarn dev - -# build for production and launch server -$ yarn build -$ yarn start - -# generate static project -$ yarn generate -``` - -For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). - ## Contributors ✨ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)): diff --git a/components/Logo.vue b/components/Logo.vue deleted file mode 100644 index c006afb..0000000 --- a/components/Logo.vue +++ /dev/null @@ -1,40 +0,0 @@ - - diff --git a/components/Navigation.vue b/components/Navigation.vue deleted file mode 100644 index e4d4234..0000000 --- a/components/Navigation.vue +++ /dev/null @@ -1,87 +0,0 @@ - - - diff --git a/content/articles/designing-preons.md b/content/articles/designing-preons.md deleted file mode 100644 index 676420c..0000000 --- a/content/articles/designing-preons.md +++ /dev/null @@ -1,340 +0,0 @@ ---- -title: Recreating The Preons Theme -date: 2020-06-05 -blurb: I'm not a designer. But I wanted to redesign the Preons' website. A process. From colors to website. -image: https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/homepage-redesign.png -author: Gemma Black ---- - -## The problem - -I'm not a designer. But I wanted to redesign the Preons' website. - -To me, the original didn't look terrible, but it didn't look consistent. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/learn-preons.png) - -## The requirements - -- Represent a space theme. The mascot is a satellite. -- Have both dark and light mode. Space is by nature, dark. So it makes sense to carry this motif in Preons. Light mode is essential because it's easier to read on lighter backgrounds. -- Have consistency throughout the website - -## Color comes first - -My process was to start with color. And so I followed the principles in this video. - -
- -
- -## What colors - -The great thing about working in the browser, is you can find the colors of things with the color-picker tool. Using Chrome, I create a basic grid and pick out the main colors that I see in the logo. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/brand-colors.png) - -```html -
-
- -
- -
-``` - -Notice: - -- The yellow -- Blues -- Greys -- Purple - -If you didn't see the mustard color, don't worry. Neither did I. But looking at it closely, it's hard to miss. - -## Dark vs lightmode - -So apps usually come in two modes. And we want to be able to cater to both. - -I picked a dark color first. I played around with hues from the blue in the logo and achieved a dark blue-towards-black color. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/dark-vs-light-mode.png) - -## Not happy is okay - -I didn't like the blue. It looked green. Green to me represents our beautiful earth and plant life. It doesn't remind me of the expanses of space. - -So I changed the dark color. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/dark-vs-light-mode-v2.png) - -```html -
-
- -
-
-
- -
-
- -
-
-
-``` - -## The layout color - -So while the blue is fine, I think having the layout be a more blue/purple is better. Again, there's no exact science to this and I could always tweak it later if I really didn't like it. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/dark-vs-light-brand-color.png) - -Happy with that, I found, I was still not a fan of the light blue. But, I was pleased the brand purple stood out against both modes. - -```html -
-
- -
-
-
-
-
-
-
-
-
-
-``` - -## Low contrast neutral colors - -![](https://snipboard.io/l8Bz4U.jpg) - -You've probably noticed I followed the video, literally. I took the dark and light modes and toned them down a little. - -```html -
-
- -
-
-
-
-
-
-
-
-
-
-
-
-``` - -## High contrast colors - -I used the dark and light backgrounds from the opposite sides. So I'm not adding more colors to the palette here. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/high-contrast.png) - -## Reduced high contrast colors - -I reused colors again. I used the low contrast neutral colors but in reverse. - -It then turned out my neutrals were too subtle, so I changed them a little to get more contrast. - -> Don't be afraid to tweak things as you go along. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/reduced-high-contrast.png) - -```html -
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-``` - -## Error and success states - -Error is universally red. All I did was play around with a red that looked comfortable in both dark and light mode. You can create a red for each mode if you prefer, but then it means more colors in the palette. - -Success states are usually green or blue. Again, I used the same green for both dark and light mode. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/success-error-states.png) - -## Disabled state - -It's something I would forget about but the video brings it up. Your buttons sometimes need to be in a disabled state. So design for that. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/disabled-colors.png) - -I now had 8 different colors but I was not done yet. - -## Active states - -These to me are things that tell people to click. It's a color of activity, so it's something you have to be careful not to use in your layout. Otherwise, you risk confusing your users. - -I decided to go with yellow. Plus on a Mac, the satellite emoji natively has a yellow body. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/active-colors.png) - -> After the fact, I decided to have two active colors. Hotpink and yellow because the original Preons design had hotpink in it. Plus, I discovered yellow is too low-contrast for text which could present an accessibility issue. - -## Typography - -I was already satisfied with the typographic scale in Preons. It uses a [perfect-fourth](https://type-scale.com/) scale. - -However, the original Raleway font wasn't consistent with the new theme. Of course, I didn't want to be cliche, but it's a chance to add a bit more character to the website. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/font-headings.png) - -I fell for Josefin Sans after 15 minutes of browsing through Google Fonts. And it seems I'm not the only one who can spend ages looking at fonts. - -

Building a website is

10% deciding what tech stack to use
5% coding
85% choosing what fonts to use

— James Tucker 🌊 (@tucker_dev) June 6, 2020
- -I finally made a new version of the `preons.yaml` and added the new font-families there. You can see I tried a few. - -```yaml - font-family: - class: ff- - values: - raleway: "#{Raleway, sans-serif}" - exo: "#{Exo, sans-serif}" - josefin: "#{'Josefin Sans', sans-serif}" - kanit: "#{'Kanit', sans-serif}" - martel: "#{'Martel', serif}" - prompt: "#{'Prompt', sans-serif}" - roboto-mono: "#{'Roboto Monp', monospace}" -``` - -## Text - -There are a few important elements when creating text. - -1. Font size -2. Line heights -3. Margins between headings and paragraphs - -Once you have gotten the text to look right and read well, it's rather simple. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/lead-text-and-paragraph.png) - -I tested the use of Josefin as body text but it didn't work so well. So I used Josefin for the headline, and Martel for the body. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/text-color-theme.png) - -## Dark mode text - -I checked the light theme colors vs dark, then tweaked the yellow to have more contrast. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/text-dark-mode.png) - -## Lists - -Ordered and unordered lists were pretty straightforward. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/unordered-list.png) - -## Quotes - -The blockquote is somerthing I'd usually forget about until I needed it. Here's what I came up with. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/blockquote.png) - -## Final color palette - -```yaml -preons: - baseline: 1.6rem - - rules: - theme-colors: - black: "#302f31" - dark: "#211c4c" - light: "#f0f2ff" - layout: "#3634b5" - neutrald: "#302a61" - neutrall: "#c4c8e8" - error: "#f13b3b" - success: "#28d0b1" - disabledd: "#5a5573" - disabledl: "#b2b6ca" - activexl: "#fff2af" - activel: "#ffe76e" - active: "#f9d41e" - actived: "#d0ad01" - activexd: "#a78b02" - hotpinkxl: "#f188bc" - hotpinkl: "#f36fb0" - hotpink: "#ea2889" - hotpinkd: "#cc0f6d" - hotpinkxd: "#900148" - transparent: transparent -``` - -## Buttons - -The funny thing about buttons is that there are lots of choices. - -- Square or rounded -- Filled or outlined -- Border or no border -- If bordered, small border or large -- Flat or shadowed - -And there are even more choices like using gradients. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/buttons.png) - -Eventually I changed the buttons to be more demure than what you see here. The original yellow was too harsh. - -## Menu - -We can now start to compose these colors and typographic elements to create our menu. I automatically create menus as mobile first and try not to duplicate elements. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/menu-mobile.png) - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/menu.png) - -## Homepage - -Whilst I loved the original homepage design, it needs to be in keeping with the new themes. - -> Again, the yellow button was replaced with a more neutral blue. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/homepage-redesign.png) - -## Completing the design system - -As you can see, I didn't start with wireframes or Photoshop. I'm not a designer, so I'm sure my process will be laughed at by the professionals. Maybe even the design isn't even fantastic to the keen designer eye. But the final outcome looks decent enough to build up from. - -Here are some additional notes: - -- Everything was done in the browser and built up. You don't need any design software. -- I used the `preons.yaml` to standardize things like margins, paddings, font sizes and line heights. -- I made choices along the way, and tried to match themes that emerged as I built up the design. -- I didn't try too design everything up front. - -Hope this article helps you on your next project when you find yourself needing or even dare I say, wanting to do design. \ No newline at end of file diff --git a/content/articles/making-preons.md b/content/articles/making-preons.md deleted file mode 100644 index c386f7c..0000000 --- a/content/articles/making-preons.md +++ /dev/null @@ -1,608 +0,0 @@ ---- -title: Making Preons -date: 2020-05-24 -blurb: How Preons became a css generating system and principles I learned along the way. -author: Gemma Black ---- - -## The Story - 2 years and 4 iterations - -I loved writing code. I still do. - -In front of my laptop, I was studying yet another project. The design was beautiful as always. All I had to do was make the HTML. But here I was again, writing the navigation, the card elements, the buttons, the grid, the footer. DΓ©jΓ  vu or not, I knew there had to be a way of systemising the creation of websites. - -All I wanted was to build beautiful user interfaces faster without rewriting the same code every time. So I created Preons. - -In this article I share: - -- The principles I learned along the way -- And how Preons became a css generating system - -## Iteration 0 - Tachyons - -### The story - -It's a bit cheeky saying [Tachyons](https://tachyons.io/docs/) is the first iteration. I didn't build it. [Adam Morse](http://mrmrs.cc/) and co [did](https://github.com/tachyons-css/tachyons). - -All I know is I [cottoned on to it](https://www.collinsdictionary.com/dictionary/english/cotton-on) either at the end of 2017 or the beginning of 2018. - -But this very library changed my thinking about how stylesheets [could](https://www.thoughtworks.com/insights/blog/good-programer-avoid-being-one) be written. I was doing [BEM](http://getbem.com/). And there was a cycle. Every UI element needed both handwritten css and afterwards, HTML. - -Tachyons was different. Tachyons was about writing a stylesheet once, then building the interface with that stylesheet right there in the DOM. - -5 minutes later, I copy-pasted up a nice looking user interface. No CSS written. The hard work went solely into finding components that looked good. A nice header. A fancy footer. And something in between. - -This is what I mocked up again (circa 2020): - -[![Tachyons in 5 minutes](/images/tachyons-quick-example.jpg#boxed)](https://tachyons--gemmadlou.repl.co/) - -> [edit](https://repl.it/@gemmadlou/Tachyons#index.html) on repl.it. - -Change paddings. Add margins. Increase font sizes right there in the browser. Underneath the hood, it looks like this: - -```html - -``` - -The only thing was, I wanted a different font. A Google font to be exact. And then the colours weren't what I liked. These were the things not in the stylesheet. - -Being able to make these little customisations quickly and easily are important. Not every project has the same vertical rhythm. Not every project needs the same CSS properties let alone values. - -So I did the easiest thing, but the wrong thing. I hardcoded classes into a new stylesheet that "extended" the Tachyons library. But there was a priority problem. Can you spot it? - -```css -/** - * In tachyons.css - */ - -@media screen and (min-width: 60em) { - .aspect-ratio-l { - height: 0; - position: relative; - } - - .aspect-ratio--16x9-l { - padding-bottom: 56.25%; - } - - .aspect-ratio--9x16-l { - padding-bottom: 177.77%; - } -} - -/** - * Then...in a custom .css - */ - -.aspect-ratio--4-3 { - padding-bottom: 75%; -} -``` - -So what happens if I try to have apply different aspect ratios at different breakpoints? - -```html -
- -
-``` - -### Lesson 1 - Framework or library - -> **Library** -> -> When you use a library, you are in charge of the flow of the application. You are choosing when and where to call the library. -> -> **Framework** -> -> When you use a framework, the framework is in charge of the flow. It provides some places for you to plug in your code, but it calls the code you plugged in as needed. -> -> \- [The Difference Between a Framework and a Library](https://www.freecodecamp.org/news/the-difference-between-a-framework-and-a-library-bd133054023f/) - -Updating Tachyons felt like I was using it as a framework rather than as a dependency. To prevent priority issues, you need to insert your new css classes at particular places inside the stylesheet. But then the line is blurred between what is mine and added, and what is Tachyons'. - -Then I thought, maybe it's better instead, not to extend Tachyons, but generate it instead. - -### Lesson 2 - Use what exists - -As a developer, I must admit, there's always the temptation to write functionality from [scratch](https://qr.ae/pNycBu) instead of tweaking something that does a good job already. So I found a [tachyons-scss](https://github.com/tachyons-css/tachyons-sass) library. It was perfect! Except, I still felt like I was hard-coding styles. - - -```scss -.b--dotted { border-style: dotted; } -.b--dashed { border-style: dashed; } -.b--solid { border-style: solid; } -.b--none { border-style: none; } - -@media #{$breakpoint-not-small} { - .b--dotted-ns { border-style: dotted; } - .b--dashed-ns { border-style: dashed; } - .b--solid-ns { border-style: solid; } - .b--none-ns { border-style: none; } -} -``` - -## Iteration 1 - Preonize - -### Generate a library - -What if I defined all my rules using sass maps like that: - -```scss -$colors: ( - 'blue': #365e86, - 'white': #ffffff, - 'grey': #eef0ee, - 'grey-dark': #89969d -); -``` - -Then applied them to a css property like `background-color` to get this: - - -```css -.bg-blue { background-color: #365e86; } -.bg-white { background-color: #ffffff; } -.bg-grey { background-color: #eef0ee; } -.bg-grey-dark { background-color: #89969d; } -``` - -The icing on the cake is having each rules at different breakpoints in the right order. Priority problem solved. - - -```css -.bg-blue { background-color: #365e86; } - -@media screen and (min-width: 40em) { - .bg-blue-m { background-color: #365e86; } -} - -@media screen and (min-width: 60em) { - .bg-blue-l { background-color: #365e86; } -} -``` - -And so I wrote the preonize function. And that was it. Almost. - -```scss -@mixin preonize($name, $prop, $map, $breakpoints) { - @each $label, $value in $map { - .#{$name}#{$label} { - #{$prop}: $value; - } - } - - @each $breakpoint, $breakpoint-value in $breakpoints { - @media #{$breakpoint-value} { - @each $label, $value in $map { - .#{$name}#{$label}-#{$breakpoint} { - #{$prop}: $value; - } - } - } - } -} -``` - -All I had to do was define all my reusable rules, and apply them using `preonize`. - -```scss -@include preonize('bg-', background-color, $colors, $breakpoints); -@include preonize('fill-', fill, $colors, $breakpoints); -@include preonize('', color, $colors, $breakpoints); - -// etc -``` - -Preonize took 4 things: - -- a class prefix like `bg-` -- a css property like `background-color` -- a sass map of rules like `$colors: (white: #ffffff, black: #000000)` -- and an array of breakpoints to apply those rules - -I could generate an entire functional CSS library from a [base sass file](https://github.com/gemmadlou/Preon/blob/master/assets/scss/preon.scss). Minor changes were now trivial. Update the sass maps; compile to css. - -If I left it at this, I'd be happy. I already built [carolblackmusic.co.uk](https://carolblackmusic.co.uk), [pixelexaspect.com](https://pixelexaspect.com) and [kammadata.com](https://kammadata.com) this way. But I had come across some issues. - -### Lesson 3: Opinions and conventions - -There are definitely wrong ways to do things, but usually there are no single right ways. But it's also true, that not having an opinion for a project will cause confusion eventually, even with one maintainer. - -So some of the classes I didn't like were the ones that redeclared rules for the same css property, like `padding-bottom`. For example, padding-bottom could override a completely different class prefix `aspect-ratio`. - -This causes the priority issue again. - -I felt that there should be one class prefix for one css property. - -The other thing I didn't want was for a class to represent two CSS properties. One example is margins. So instead of one class representing `margin-left` and `margin-right` at the same time, it's more explicit to just use two. - -```html - - - - - -``` - -This decision would eventually help me to write simpler code generators for Preons, though at the time, I didn't know it. - -### Lesson 4 - Eat your own dog food - -I have [Gary Gale](https://twitter.com/vicchi) to thank for the phrase. All it means is, what you're giving others to use, are you using it yourself? - -So it's all good building a CSS library but could _I_ use it? In fact, using it highlighted limitations of functional css in general very quickly. - -1. Displaying user-generated articles -2. Hovers and animations - -### Limitation 1 - Displaying user-generated articles - -How could I expect a user to write an article and add margins to every paragraph? - -```html -

My wonderful article paragraph.

-

Next headline

-``` - -Doing so: - -- would actually cause inconsistencies in the design -- make writing in WYSIWYGs difficult -- writing markdown would be no different from writing html -- just in general, the writing experience would be awful and take longer - -So the solution to this is to create scoped article classes such as `s-article`, something I learned from working with [Milad Alizadeh](https://github.com/milad-alizadeh) and [Chris Boakes](https://github.com/chrisboakes). - -Here's a snippet I use for this Preons' documentations website: - -```scss -.s-article { - @extend .lh0; - @extend .fs0; - @extend .lh1-m; - - li, - p { - @extend .mb1; - } - - h1 { - @extend .fs2; - @extend .lh2; - @extend .mb2; - @extend .fwb; - } - - h2 { - @extend .fs1; - @extend .lh2; - @extend .pt2; - @extend .mb1; - @extend .fwb; - @extend .bwb1; - @extend .bsb-solid; - @extend .bca-greyxl; - @extend .lh4-m; - } -} -``` - -Then I apply it where it is needed so it doesn't affect the entire site: - -```html -
- -
-``` - -### Limitation 2 - Hovering and animations - -Animations are the life-blood of interactive websites. At a minimum, we need to hover and change things like colours of text and backgrounds on buttons. Okay, it's not essential, but great for user experience. So a new preonize function would be needed. - -```scss -@mixin preonize-hover($name, $prop, $map, $breakpoints) { - @each $label, $value in $map { - .#{$name}#{$label}:hover { - #{$prop}: $value; - } - } - - @each $breakpoint, $breakpoint-value in $breakpoints { - @media #{$breakpoint-value} { - @each $label, $value in $map { - .#{$name}#{$label}-#{$breakpoint}:hover { - #{$prop}: $value; - } - } - } - } -} -``` - -## Iteration 2 - A CLI - -### The Story - -After building a few sites, I had a problem. There were differences in the class conventions I used between them. What was `max-width` again? - -```css -.mw1 { - max-width: 1rem; -} - -/** or **/ - -.maxw1 { - max-width: 1rem; -} -``` - -And what about the colours? What's the convention? The colour first, or the modifier first? - -```css -.dark-grey { - color: grey; -} - -/** or **/ - -.grey-dark { - color: grey; -} -``` - -I had very few conventions and was mainly inspired by Tachyons. But switching between projects I was forgetting what rule applied where. - -Looking up classes wasn't easy using my sass file. I had to find the CSS class, then look up the corresponding global style. - -I could look through the CSS, but then I thought, that's not great user experience. If I could config my rules in yaml or JSON, I could generate documentation. - -

Still my favorite #dev discovery of the year. Cyrille's concepts on living documentation. pic.twitter.com/psmtpI2czF

— Gemma Black (@GemmaBlackUK) October 31, 2019
- -It was reading [Cyrille Martraire's](https://twitter.com/cyriux?lang=en) book on [Living Documentation](https://www.amazon.co.uk/gp/customer-reviews/R1M97XQ5OMYLU9/ref=cm_cr_dp_d_rvw_ttl?ie=UTF8&ASIN=0134689321) that cemented the idea of turning existing code into docs. And your code would always be in sync with your documentation. But it was a [Michael Bryzek video](https://youtu.be/j6ow-UemzBc?t=1190) that took the concept one step further, generating code from your config. - -And he had a point. - -With a config, I could generate styles themselves from a yaml config into any CSS style language I liked. - -- Sass -- Postcss -- Less. - -One single config would be the definition for both the library _and_ the documentation. -So `preons.yaml` was born. - -```yaml -preons: - baseline: 1.2rem; - - gutter: 2.5rem; - - rules: - - # Preon breakpoints - breakpoints: - - # Preon classes - classes: - - label: bg- - css-property: background-color - rule: - - color - - label: bg- - css-property: background-color - rule: - - color -``` - -Then I stopped working on the project... - -For ages. - -### Limitation 3 - Mixing and matching rules - -For widths, I wanted to use gradations of both percentages and `rems`. - -For margins, I wanted the same, but also negative rems. So unless I repeated myself, I needed a way of mixing different global rules together. - -```scss -$scaled: ( - n1: -1rem, - n2: -2rem, - n3: -3rem, - n4: -4rem, - n5: -5rem, - n6: -6rem, - n7: -7rem, - n8: -8rem, - n9: -9rem, - n10: -10rem, - 0: 0, - 1: 1rem, - 2: 2rem, - 3: 3rem, - 4: 4rem, - 5: 5rem, - 6: 6rem, - 7: 7rem, - 8: 8rem, - 9: 9rem, - 10: 10rem -); -``` - -So I found `map-collect`. - -```scss -@function map-collect($maps...) { - $collection: (); - - @each $map in $maps { - $collection: map-merge($collection, $map); - } - @return $collection; -} -``` - -Then I could mix-and-match them across different css properties: - - -```scss -@include preonize( - 'pa', - padding, - $scaled, - $breakpoints -); -@include preonize( - 'pl', - padding-left, - map-collect($scaled, $discrete), - $breakpoints -); -``` - -## Iteration 3 - Tweaking the config - -### Array vs object of rules - -It occurred to me. Why am I using an array of [properties](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Properties_Reference) when it should just be an object? I can't redeclare the same property twice because of the priority problem and the convention to solve that problem of 1 css property to 1 class prefix. - -Yaml linters highlight when you have duplicate properties in an object. It is not allowed. So that's a win in applying the convention. - -### Global vs standalone rules - -I also didn't like having to declare global rules for each CSS property. Sometimes rules only have to be applied once, eg. for display: flex - -```yaml -align-content: - class: content- - values: - start: flex-start - end: flex-end - center: center - between: space-between - around: space-around - stretch: stretch -``` - -vs colours: - -```yaml -color: - class: - rule: theme-colors - -background-color: - class: bg- - rule: theme-colors -``` - -### Generating documentation - -Doing `preons config` would spit out JSON based on the preons.yaml to make creating documentation easier: - -```json -{ - "border-top-color": { - "class": "bct-", - "rule": "theme-colors", - "values": { - "black": "#242027", - "white": "#fefeff", - "greyxl": "#f6f5f9", - "greyl": "#beb9cc", - "grey": "#7d778e", - "greyd": "#47454c", - "transparent": "transparent", - "hotpink": "#ea2889" - }, - "mappings": { - "bct-black": "#242027", - "bct-white": "#fefeff", - "bct-greyxl": "#f6f5f9", - "bct-greyl": "#beb9cc", - "bct-grey": "#7d778e", - "bct-greyd": "#47454c", - "bct-transparent": "transparent", - "bct-hotpink": "#ea2889" - } - } -} -``` - -I use this json to build the reference for the [docs](/search). - -### Lesson 5 - Release fast and automate versions - -Whether you adhere to [romantic versioning](https://github.com/jashkenas/backbone/issues/2888#issuecomment-29076249), [sentimental versioning](http://sentimentalversioning.org/) or [semantic versioning](https://semver.org/), managing versions manually is a bottleneck. Furthermore, it's like doing paperwork. But if it can be automated, it saves so much time. - -### Why? - -Because moving fast allows fixes and features to be released quickly. The developer writing the code should know if their update is breaking existing functionality or not, whether they are adding a feature, a fix, or an improvement or not. - -So I used Intuit's Auto. Running `npm run release` along with [Angular style commits](https://gist.github.com/stephenparish/9941e89d80e2bc58a153#format-of-the-commit-message): - -- bumps npm -- tags the project -- makes a release in GitHub -- creates the changelog - -Done. - -### Lesson 6 - Distribute files easily - -[Michael Jackson's](https://twitter.com/mjackson) [Unpkg](https://unpkg.com/) allows you to access any file from an npm library at any version and it's free to use πŸ™. It made creating the [example repl](https://repl.it/@gemmadlou/Cards) easy. - -Here's a great intro to it: - -> https://kentcdodds.com/blog/unpkg-an-open-source-cdn-for-npm - -### Lesson 7 - Keeping the cli and stylesheets core - -"I don't know any good reason to split my codebase between stylesheet and cli over multiple repositories". So I package them together. Maybe this is bad. But until it becomes a problem, I decided to not worry about it. - -It means, preons-theme 0.3.28 was released at the same time as the cli which is also 0.3.28, even if the cli didn't change. - -### Lesson 8 - Skip the tests - -Now as of May 2020, there aren't any tests. There are no linters either. Dangerous? Maybe. But normally I'd fuss over assuring my code passes all sorts of code quality bells and whistles, not just because I'm a [badge junkie](https://shields.io/). This time, I was determined that version 0.0.z would just work and be functional. - -I think [Eric Elliot](https://twitter.com/_ericelliott?lang=en) says [something](https://twitter.com/_ericelliott/status/1187063655533334529) like: - -- Make it work -- Make it stable -- Make it fast - -Even though, he starts with tests, making it work is a lot more archaic for me. Make it stable is where tests come in and solidifying them under the right design. - -> β€œCoding faster: Make it work, then make it good” by Michael Parker https://link.medium.com/SRPxvd76F6 - -[![](/images/iterative-vs-incremental.jpeg)](https://medium.com/@gerterasmus23/the-greatest-example-ever-of-mvp-and-iterative-incremental-development-41fd718ece0) - -If anything, this is the biggest shift in my thinking. Having gone through several iterations, I finally designed a version of Preons that I actually like. - -If I started with TDD, I think I'd feel too precious about changing anything because TDD sometimes eats into the design phase, rather than just being a development tool. - -I genuinely think design comes before TDD and static type analysis. That's why JavaScript is so powerful. You can iterate fast without worrying about correctness of code. - -

An MVP is a viable prototype, not a final product. Don't worry about perfection. The idea is to get fast feedback from users.

— Eric Elliott (@_ericelliott) May 19, 2020
- -### Lesson 9 - Design first - -I saw a [video](https://www.youtube.com/watch?v=mNeXuCYiE0U&t=19s) where [James Clear](https://jamesclear.com/goals-systems) talked about two sets of photography students. One group had to come up with the perfect photo, one time. Another group had to take lots of photos and present their best one. The latter scored better apparently because applying their knowledge came from trial and error, learning what worked through practice versus theorizing what worked. That _is_ pragmatism. Practice over theory. - -My fear is, in our desire to follow best practice, we use tools that can hinder us at the wrong time. During the design phase, the learning phase, the prototyping phase, getting something to work is most important. Proving the possibility is most important. - -Now I've blitzed through the most basic of features, I have a choice: - -- to start firming up what I have with tests -- try a different design -- add more features - -## In conclusion - -I hope you enjoyed the article or at least learned that your open source project doesn't have to be right the first time around. By no means am I a decent writer or even correct about everything in this article. So please share feedback. - -If you're on Twitter, just [@GemmaBlackUK](https://twitter.com/GemmaBlackUK) and tell me what I did wrong πŸ˜…. diff --git a/content/articles/roadmap.md b/content/articles/roadmap.md deleted file mode 100644 index 9bf38b0..0000000 --- a/content/articles/roadmap.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -title: Roadmap -date: 2020-05-31 -blurb: Stage one of the Preons journey -author: Gemma Black ---- - -Preons' mission is this: - -1. Make it easier to build and componentize user interfaces -2. Allow anyone to create beautiful, custom web sites - -## Not really a Roadmap - -Whilst not entirely a fan of the todo list, it's good to share what's on the horizon for Preons. - -## Stage One - -Stage one is to get the basic elements of Preons working without worrying about integrations. Chances are, the end of Stage One won't even get Preons to v1.0.0. However, tests and static analysis checks will be added to help others contribute securely. - -- [ ] Preons documentation -- [x] Cheatsheet lookup (reference) -- [x] Configuaration syntax -- [ ] Standardize Preons conventions -- [ ] CLI - - [x] Sass generator - - [x] Css generator - - [x] References generator - - [x] Documentation generator - - [ ] Components generator - - [ ] Reverse generator. Create preons.yaml from functional css styles -- [ ] Tests - - [ ] CLI - - [ ] UI - - [ ] Static Analysis -- [ ] Pre-commit hooks -- [ ] Travis CI build - -### The components generator - -Storybook will be used to display components in a design system. I like their way of displaying content, and making things reusable. It will also be the tool to help aid the tutorial on getting setup quickly. - -### The reverse generator - -This is going to take an existing library, like Tachyons and convert it into the Preons.yaml. - -Working from the `preons.yaml` is meant to make it easier to adjust settings quickly and build SCSS or CSS on the fly. - -## End goal - -By the end of stage one, I will determine if this project was just a helpful exercise in learning how to create a larger scale open-source project and be useful to just myself or whether it will have benefits beyond. diff --git a/content/learn/cli/generate.md b/content/learn/cli/generate.md deleted file mode 100644 index cdb688b..0000000 --- a/content/learn/cli/generate.md +++ /dev/null @@ -1,140 +0,0 @@ ---- -title: ⚑️ Generate your own library -blurb: The Preons cli along with the preons.yaml allows you to customise your own functional css library -author: Gemma Black ---- - -In this short tutorial, you're going to create your own functional css library, using the naming conventions you choose. - -## Check you're all set up - -```bash -preons -V -``` - -## Generate a stylesheet - -Generating a stylesheet is a combination of two steps: - -1. Creating a `preons.yaml` configuration file. - -2. Generating css from that configuration file. - -Just to show both steps at once, you're just going to downlooad the file and create the library. - -### 1. Create a preons.yaml - -Download [https://unpkg.com/preons@0.3.37/config/preons.yaml](https://unpkg.com/preons@0.3.37/config/preons.yaml). - -### 2. Generate the css - -```bash -preons stylesheet --input preons.yaml -``` - -Notice how it generates unminified css of every rule defined in the preons.yaml. As one of the conventions that the Preons cli employs is not to output the files, to create a file, all you have to do is redirect the output. - -```bash -preons stylesheet --input preons.yaml > myfile.css -``` - -> You can see the other options by doing `preons stylesheet -h` - -## Making changes - -The preons.yaml is organised into the following format: - -```yaml -preons: - baseline: # Baseline rule - - rules: - # Object reusable rules - - properties: - # Object of Css properties - - breakpoints: - # Stylesheet breakpoints -``` - -### Properties - -Properties are where you define your css properties, eg. `background-color` and `margin-left`. You can only define a css property once otherwise the preons.yaml will not convert to css. - -It is defined in the following manner: - -```yaml -preons: - properties: - height: - class: h - values: - 1: 1rem - 2: 2rem -``` - -#### The class - -This is the prefix of the functional css class. The above config will create the following css rules: - -```css -.h1 { 1rem; } -.h1 { 2rem; } -``` - -### Rules - -These are reusable rules across multiple css properties. - -```yaml -preons: - theme-colors: - 1: 1rem - 2: 2rem - 3: 3rem -``` - -Sometimes you find yourself typing the same rules over and over again. Whilst this cannot be completely avoided, you can reuse these rules across multiple properties: - -```yaml -preons: - rules: - theme-colors: - black: '#242027' - white: '#fefeff' - grey: '#7d778e' - hotpink: '#ea2889' - - properties: - background-color: - class: bg- - rule: theme-colors - - color: - class: - rule: theme-colors -``` - -### Baseline - -This, you can use to define the vertical rhythm of your site. You can reference the `$baseline` in either the values of reusable rules. - -```yaml -preons: - rules: - # For font line-heights - baselined: - -2: $baseline * 0.5 - -1: $baseline * 1 - 0: $baseline * 1.5 - 1: $baseline * 2 - 2: $baseline * 2.5 - 3: $baseline * 3 - -large: 4rem - 4: $baseline * 4 - 5: $baseline * 5 - 6: $baseline * 6 - 7: $baseline * 6.5 - 8: $baseline * 7.5 -``` diff --git a/content/learn/cli/installation.md b/content/learn/cli/installation.md deleted file mode 100644 index a3fbaf8..0000000 --- a/content/learn/cli/installation.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: πŸš€ Install The CLI -blurb: Easily start generating your own docs and libraries with the Preons CLI -author: Gemma Black ---- - -## Pre-requisites - -- Node v10+ - -> It hasn't been tested on a Windows' machine. If there are any issues, please raise them [here](https://github.com/preons/preons/issues). - -## Install - -Install the Preons CLI globally. - -### Npm - -```bash -npm i preons -g -``` - -### Yarn - -```bash -yarn global add preons -``` - -## Commands - -```bash -Usage: preons [options] [command] - -Options: - -V, --version output the version number - -h, --help display help for command - -Commands: - stylesheet Generates a stylesheet - config Converts config - docs Generate documentation - translate [file] Translate css into preons config - help [command] display help for command -``` diff --git a/content/learn/cli/quickstart.md b/content/learn/cli/quickstart.md deleted file mode 100644 index 528116c..0000000 --- a/content/learn/cli/quickstart.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: Quickly start with the API -blurb: Easily start generating your own docs and libraries with the preons cli -author: Gemma Black ---- - -The Preons cli along with the `preons.yaml` allows you to customise your own functional css library. Maybe you prefer a different typescale for your fonts. Your website will need different colors or even additional colours than the one in the default preons theme. Maybe there are additional css properties that your project needs like filter, transitions and css grid. - -## The steps - -Run the following command to generate the stylesheet from the default yaml file that comes with Preons. - -```bash -preons stylesheet -``` - -You will see the entire css printed out. - -> You can create a scss version using the -s flag. - -But now you will want to customise your own file. To do that, grab a copy of the [preons.yaml](https://raw.githubusercontent.com/preons/preons/master/config/preons.yaml). It should start like this: - -```yaml -preons: - baseline: 1.6rem - - rules: - theme-colors: - black: '#242027' - white: '#fefeff' - greyxl: '#f6f5f9' - ## ... -``` - -Point it to your stylesheet and run: - -```bash -preons stylesheet -i your.yaml -``` - -Output the css into a file: - -```bash -preons stylesheet -i your.yaml > yourfile.css -``` diff --git a/content/learn/guides/create-components/basic-card.md b/content/learn/guides/create-components/basic-card.md deleted file mode 100644 index e8e1aab..0000000 --- a/content/learn/guides/create-components/basic-card.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -title: Create a basic card component -blurb: Cards can be found on many websites. It's a good example to use to have a deeper understanding of both Preons and functional css. -author: Gemma Black ---- - -Cards can be found on many websites. It's a good example to use to have a deeper understanding of both Preons and functional css. - -![](/images/card.jpg) - -So in this how-to, we'll be creating a **simple card component**. First, create the container. Setting `.maxw-xxxbig` will limit the size of the card to `32rem`. Setting `.bg-white` will ensure the card background colour is white against of the body's grey background. - -The image also needs to be flushed against the edges of the container. - -> .w-100 means 100% width and .h-au is height: auto. - -```html - -
- -
- -``` - -The paragraph shouldn't be flushed against the edges, but have padding. - -```html -

- When you need a card, but that card doesn't need a - description. -

-``` - -Finally, the button is also going to be flushed. Notice, that the border-width is 0. The reset css with Preons doesn't remove borders on buttons. The background is hotpink but the font color is white. The height is set to h4 which is 4rem. And the padding is added either side of the button text separately. - -```html - -``` - -All together, the card component code should look like this: - -```html - -
- - -

- When you need a card, but that card doesn't need a - description. -

- - -
- -``` - -You can probably think of ways to tweak the card component. Maybe you'd rather have padding around the image. Maybe there should be padding around the button also. Maybe the button should have a border-radius. You can make these changes in the browser without compiling any css again. diff --git a/content/learn/guides/typography.md b/content/learn/guides/typography.md deleted file mode 100644 index 6330501..0000000 --- a/content/learn/guides/typography.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Typography -blurb: Basic typography -author: Gemma Black ---- - -Coming soon diff --git a/content/learn/home.md b/content/learn/home.md deleted file mode 100644 index cf652a0..0000000 --- a/content/learn/home.md +++ /dev/null @@ -1,98 +0,0 @@ ---- -title: ⚑️ Learn -blurb: Introduction to Preons, a functional CSS library -author: Gemma Black ---- - - - -## Get started - -1. [Install the Preons UI](/learn/ui/installation): Follow the guide to install the Preons UI into your project. -1. [Build a user interface quickly](/learn/ui/build): A 15-minute guide on how to install Preons and start building a website. -1. [Generate your own library](/learn/cli/generate): Generate your own library using the preons.yaml configuration file - -## What is Preons - -It is a functional CSS system for building user interfaces. It's designed with three things in mind: - -- A functional CSS library -- A theme -- A CLI to generate your own libraries - -## What does it look like - -Take the button below as an example: - - - -This is what Preons looks like: - -```html - -``` - - - - - -## Start contributing - -This project is still undergoing lots of development to produce features. Please checkout out the roadmap to learn what features are yet to do. More so, there are lots of tests, documentations, components and examples that are needed. Any help will be appreciated. - -## Give feedback - -Any feedback that can help improve this project is welcomed. You can personally [@me](https://twitter.com/GemmaBlackUK) on Twitter. diff --git a/content/learn/ui/build.md b/content/learn/ui/build.md deleted file mode 100644 index 0aa89e7..0000000 --- a/content/learn/ui/build.md +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: 🏠 Build -blurb: Get started quickly with building the UI ---- - -This guide is to demonstrate how to build a website with Preons using ready-made components. We're going to build a landing page for a store. - -Feel free to make changes and tweaks as you design. - -## The Base HTML - -You can start in one of two ways. - -1. Play with the live code [repl](https://repl.it/@gemmadlou/Starter#index.html) - -2. Copy-paste the code below into your editor and run locally. - - -```html - - - - - Preons docs - - - - - - - - - -``` - -## The Navigation - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/responsive-menu.png) - -πŸ‘‰ Grab the HTML from the [navigation example](https://ui.preons.co/?path=/story/navigation--responsive). It is already responsive, but you can tweak it to suit your needs. - -## The Hero section - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/hero.png) - -πŸ‘‰ Again, grab the HTML from the [hero example](https://ui.preons.co/?path=/story/hero--hero-1). Feel free to change the image and the text. But for demonstration purposes, you can leave as is. - -## The Portfolio - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/grid-of-3.png) - -πŸ‘‰ For the portfolio, you can use a [simple grid](https://ui.preons.co/?path=/story/grid--grid-of-4). The images are from [UnSplash](https://unsplash.com/) but of course, you can change them. - -## The Get In Touch Form - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/form.png) - -πŸ‘‰ For the form, grab the [HTML](https://ui.preons.co/?path=/story/forms--full-form-light). - -## The Footer - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/footer.png) - -πŸ‘‰ There are two parts. The [footer links](https://ui.preons.co/?path=/story/footer--footer-inverted) and the [legal end](https://ui.preons.co/?path=/story/legals--legals-1). Grab both. - -## What does your version look like - -Here's mine. Ok. I didn't update the text in every case. But I hope this little exercise highlights how much faster it is to build interfaces once you have a design system of reusable components. - -![](https://d2l08bdqaswlm0.cloudfront.net/B76cJ57zw/2020/06/store.png#boxed-dark) - -> And here's the [code](https://repl.it/@gemmadlou/Starter#index.html). - -## Next steps - -- Functional CSS will seem cryptic, at least at first. Use the [reference](/search) to discover more colors and more classes. -- Create your own functional CSS library by following the cli build [guide](/learn/cli/generate). diff --git a/content/learn/ui/installation.md b/content/learn/ui/installation.md deleted file mode 100644 index 7c8d3b5..0000000 --- a/content/learn/ui/installation.md +++ /dev/null @@ -1,79 +0,0 @@ ---- -title: πŸš€ Install -blurb: Using npm, yarn or the packages CDN ---- - -## 1. The Theme - -You can install Preons in one of several ways. - -### CDN - -The fastest way to get started is by using [unpkg](https://unpkg.com). - -```html - - - -``` - -### Node modules - -#### npm - -```bash -npm install preons -``` - -#### yarn - -```bash -yarn add preons -``` - -## 2. Import - -You will need both the theme and the reset. Feel free to choose [alternative resets](https://css-tricks.com/poll-results-what-css-reset-do-you-use/) for your project. - -### Webpack js - -```js -import '~preons/dist/reset'; -import '~preons/dist/preons'; -``` - -> See the [Webpack guide](https://webpack.js.org/loaders/sass-loader/#resolving-import-at-rules) for more details - -### scss - -```scss -@import '~preons/dist/preons'; -``` - -### css - -```css -@import '~preons/dist/preons.css'; -``` - -## 3. Font - -Include the font system if you haven't already. - -```http -https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@200;300;400;500;600;700&family=Martel:wght@200;300;400;600;700;800;900&family=Roboto+Mono:wght@100;300;400;500;700&display=swap -``` - -### Link element - -```html - -``` - -### @import - -```html - -``` diff --git a/docs/en/0.x/guide/responsive-multi-service-admin-dashboard.md b/docs/en/0.x/guide/responsive-multi-service-admin-dashboard.md new file mode 100644 index 0000000..0b5d84e --- /dev/null +++ b/docs/en/0.x/guide/responsive-multi-service-admin-dashboard.md @@ -0,0 +1,57 @@ +# Responsive Multi-Service Admin Dashboard + +> In progress + +https://codesandbox.io/s/frosty-ride-6417i?file=/examples/admin-2/index.html + + + +```html + + + + + Preons Admin + + + + +
+ +
+
+   +
+
+ +
+
+
+ + +``` + +```html + +P +``` diff --git a/docs/en/0.x/start/framework-nuxt.md b/docs/en/0.x/start/framework-nuxt.md new file mode 100644 index 0000000..8351b13 --- /dev/null +++ b/docs/en/0.x/start/framework-nuxt.md @@ -0,0 +1,168 @@ +# Get started with Nuxt and Preons + +Nuxt is a Vue.js framework with SSR capabilities. This guide will show you how to add Preons to Nuxt using a fresh Nuxt app as an example. + +- [Using Sass](#using-sass) +- [Using CSS](#using-css) + +## Using Sass + +> If you already have a Nuxt app, go to the [Configure Sass](#configure-sass) section. + +### Setup Nuxt + +Install Nuxt to have a project scaffold. It will take you through a few questions. + +```bash +yarn create nuxt-app preons-nuxt +``` + +Prepare your Nuxt environment. + +```bash +cd preons-nuxt +``` + +### Configure Sass + +Install preons and the sass loaders. + +```bash +yarn add preons sass sass-loader fibers --dev +``` + +Create a new `style.scss` file in the assets folder and import Preons. + +```bash +touch assets/style.scss +``` + +```scss +/** assets/style.scss **/ +@import "~preons/dist/reset"; +@import "~preons/dist/preons"; + +body { + @extend .ff-raleway; + @extend .fs3; + @extend .lh3; +} +``` + +Add the `assets/style.scss` to the global `nuxt.config.js` to render the compiled style on the front end. + +```js +// nuxt.config.js +{ + //.... + css: ['~assets/style.scss'], +} +``` + +Add Google Fonts. + +```js +{ + head: { + link: [ + { + rel: "stylesheet", + href: + "https://fonts.googleapis.com/css2?family=Raleway:wght@400;700&display=swap", + }, + ]; + } +} +``` + +### Create a template + +Add basic styling to `pages/index.vue`. + +```js + +``` + +### View app + +Start the Nuxt app to preview the update + +```bash +yarn dev +``` + +Finally, view the app in the browser. + +### Next steps + +Continue with the Preons UI System for components and utility classes. + +## Using CSS + +> If you already have a Nuxt app, go to the [Configure Sass](#configure-sass) section. + +### Setup Nuxt + +Install Nuxt to have a project scaffold. It will take you through a few questions. + +```bash +yarn create nuxt-app preons-nuxt +``` + +Prepare your Nuxt environment. + +```bash +cd preons-nuxt +``` + +### Add stylesheets + +Add Google Fonts and the Preons theme. + +```js +{ + head: { + link: [ + { + rel: "stylesheet", + href: + "https://fonts.googleapis.com/css2?family=Raleway:wght@400;700&display=swap", + }, + { + rel: "stylesheet", + href: "https://unpkg.com/preons/dist/preons.css", + }, + ]; + } +} +``` + +### Create a template + +Add basic styling to `pages/index.vue`. + +```js + +``` + +### View app + +Start the Nuxt app to preview the update + +```bash +yarn dev +``` + +Finally, view the app in the browser. + +### Next steps + +Continue with the Preons UI System for components and utility classes. diff --git a/docs/en/0.x/start/framework.md b/docs/en/0.x/start/framework.md new file mode 100644 index 0000000..26cadbb --- /dev/null +++ b/docs/en/0.x/start/framework.md @@ -0,0 +1,5 @@ +# Frameworks + +Here are short guides on how to get started with Preons using Frameworks. + +- [Nuxt](./framework-nuxt.md) diff --git a/docs/en/0.x/start/introduction.md b/docs/en/0.x/start/introduction.md new file mode 100644 index 0000000..905fe21 --- /dev/null +++ b/docs/en/0.x/start/introduction.md @@ -0,0 +1,6 @@ +# Introduction + +The _'Get started'_ guide is to help you install Preons quickly so you can begin building templates and UIs within minutes. + +- [Standalone css, html and sass](./standalone.md) - _For when you want to use minimal project scaffolding, such as with a simple single-page html etc_. +- [Frameworks](./framework.md) - _To get started with a Framework such as Nuxt_ diff --git a/docs/en/0.x/start/standalone-css.md b/docs/en/0.x/start/standalone-css.md new file mode 100644 index 0000000..c5b7f9e --- /dev/null +++ b/docs/en/0.x/start/standalone-css.md @@ -0,0 +1,25 @@ +# CSS + +Add the Preons theme quickly. + +```bash +touch index.html +``` + + +```html + + + + + + Preons starter + + + + + +
Woohoo πŸŽ‰!
+ + +``` diff --git a/docs/en/0.x/start/standalone-html.md b/docs/en/0.x/start/standalone-html.md new file mode 100644 index 0000000..483d5ec --- /dev/null +++ b/docs/en/0.x/start/standalone-html.md @@ -0,0 +1,62 @@ +# HTML + +To get going, installing the Preons theme is most fast with plain HTML. + +- [Use the HTML5 starter](#use-the-html5-starter) +- [Add to existing HTML markup](#with-existing-html-markup) + +## Use the HTML5 starter + +Copy and paste the markup. + + +```html + + + + + Preons starter + + + + + + +
+

Begin building with Preons

+ +
+ + +``` + +Use the [UI System](../ui-system/introduction.md) to add UI components to your app. + +### Example + + + +## With existing HTML markup + +Add the Google Fonts link within the `` tag. + +```bash + +``` + +Add the Preons theme below the Google Fonts link. + +```bash + +``` + +Use the [UI System](../ui-system/introduction.md) to add UI components to your app. diff --git a/docs/en/0.x/start/standalone-sass.md b/docs/en/0.x/start/standalone-sass.md new file mode 100644 index 0000000..831e08e --- /dev/null +++ b/docs/en/0.x/start/standalone-sass.md @@ -0,0 +1,73 @@ +# Sass + +Compile Preons into CSS from pure sass. + +## Steps + +Create a new project. + +```bash +mkdir preons-sass && cd preons-sass +``` + +Install the preons library. + +```bash +wget https://unpkg.com/preons/dist/preons.scss +``` + +Create a base scss file. + +```bash +touch style.scss +``` + +Import the library into your sass project before any overrides. + +```scss +// style.scss +@import "./preons.scss"; +``` + +Install sass compiler: + +```bash +# MacOs +brew install sass/sass/sass +``` + +> To install on **Windows** or other **Linux**, visit https://github.com/sass/dart-sass for further instructioons. + +Compile down css. + +```bash +# Make dist folder +mkdir -p dist + +# Compile to css +sass style.scss > dist/style.css +``` + +Add link to HMTL. + +```bash +touch index.html +``` + + +```html + + + + + + Preons starter + + + + + +
Woohoo πŸŽ‰!
+ + +``` diff --git a/docs/en/0.x/start/standalone.md b/docs/en/0.x/start/standalone.md new file mode 100644 index 0000000..d247dee --- /dev/null +++ b/docs/en/0.x/start/standalone.md @@ -0,0 +1,7 @@ +# Standalone + +When you want to get started with minimal project scaffolding, use the following guides: + +- [HTML](./standalone-html.md) +- [Sass/Scss](./standalone-sass.md) +- [CSS](./standalone-css.md) diff --git a/docs/en/0.x/ui-system/components-grid.md b/docs/en/0.x/ui-system/components-grid.md new file mode 100644 index 0000000..f4653a1 --- /dev/null +++ b/docs/en/0.x/ui-system/components-grid.md @@ -0,0 +1,227 @@ + + +# Grids + +There are multiple ways to create grids using CSS. This page focuses on Flexbox and using a consistent right-margin technique. + +## Flexbox + +Flexbox allows you to have more control over layouts. Below are examples of how to use Grids. There are several ways to create a grid using Flexbox. + +### 20-column grid + +The 20-column is represented by percentages. + +#### 100% width + + +
+
+
+ +```html +
+
+
+``` + +Alternatively, no width is needed on block-elements. + +```html +
+
+
+``` + +#### Other percentages + +##### Halves + + +
+
+
+
+ +```html +
+
+
+
+``` + +##### Fifths + + +
+
+
+
+
+
+
+ +```html +
+
+
+
+
+
+
+``` + +##### Mixing widths + + +
+
+
+
+
+
+ +```html +
+
+
+
+
+
+``` + +### 12-column grid + + +
+
+
+
+
+ +```html +
+
+
+
+
+``` + +### Flexbox and paddings The technique above uses a + +consistent right margin while the parent has no right margin of its own. If +margins cannot be controlled on the parent `d-fl pa2 pr0`, you can remove the final margin on the last element within a row, either via the dom or a custom class. + +```html +
+
+ +
+
+``` + +### Multi-line grids with Flexbox + +There are several techniques, but one I like to use is to move the gaps between the margins into an inner-container. This technique will also work with single-row grids too. + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +```html +
+
+
+
+
+
+
+
+
+
+
+
+
+
+``` + +## Spacing + +### Move elements over + +When you don't need a full grid of items, or you merely want space, use the margin utility classes to create space. Note the `ml-25` moves the element over by 25%. + + +
+
+
+
+ +```html +
+
+
+
+``` + +### Making space before next element + +Sometimes, you want there to be a gap after the current element also. + + +
+
+
+
+
+ +```html +
+
+
+
+
+``` + +#### Correct width percentages + +Using inner-elements will preserve percentaged widths most accurately. If you're not concerned with this, you can forgo inner-elements as with the example above. Otherwise you will have to adjust the markup eg. + + +
+
+
+
+
+
+
+
+
+
+
+ +```html +
+
+
+
+
+
+
+
+
+
+
Copy-paste layouts + +Get started with layouts. Take a look at the examples and copy-paste code that you need. + +## Admin + +### Double side-panel + +Great for when you have lots of areas in your admin system and users will need to be able to go back-and-forth easily. + +A CSS-only admin dashboard with a double-side panel on the left, a top level sticky nav and a scrollable main-content area using only utility classes. + +```html + + + + + Preons Admin + + + + +
+ +
+
+   +
+
+ +
+
+
+ + +``` + +#### Doubled sided-panel examples + +Layout areas defined by blocked colors. + + + +Layout areas defined by borders. + + + +## Suggestions + +Are there any layouts that you think is missing? Add an issue on GitHub or submit a PR. diff --git a/docs/en/0.x/ui-system/components-menu.md b/docs/en/0.x/ui-system/components-menu.md new file mode 100644 index 0000000..f0cf69e --- /dev/null +++ b/docs/en/0.x/ui-system/components-menu.md @@ -0,0 +1,91 @@ + + +# Menus + +Creating menus with utility classes means you can copy-paste ones you like or reuse ones you create time-and-time-again. + +## Mobile menu + +
+
+ + +
+
+ +```html + +``` + +### Interactive Examples + +- [Vuejs](https://codesandbox.io/s/frosty-ride-6417i?file=/docs/0.x/ui-system/component/menu-mobile-1-vue.html) + +## Login buttons + +
+
+ + + +
+
+ +```html +
+ + + +
+``` diff --git a/docs/en/0.x/ui-system/components.md b/docs/en/0.x/ui-system/components.md new file mode 100644 index 0000000..e6ba6a9 --- /dev/null +++ b/docs/en/0.x/ui-system/components.md @@ -0,0 +1,5 @@ +# Components + +Preons components are multi-element UIs that you can copy-paste or alter for your needs. The aim of components is to speed up development so that you won't have to write every-time from scratch. + +Check out [layout components](./components-layout.md) to get started. diff --git a/docs/en/0.x/ui-system/foundations-alignment.md b/docs/en/0.x/ui-system/foundations-alignment.md new file mode 100644 index 0000000..df7158f --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-alignment.md @@ -0,0 +1,188 @@ +# Alignment + +These CSS properties focus on alignment. + +- text-align +- float +- top +- left +- bottom +- right +- clear +- v-align + +## Text Align + +Text alignment classes moves items when they have the `display: inline` CSS rule. + +### Reference + +| Utility class | CSS Rule | +| ------------- | -------------------- | +| `.center` | `text-align: center` | +| `.right` | `text-align: right` | +| `.left` | `text-align: left` | + +### Example + +```html +

+ With my alignment. I've got one leg shorter than the other. +

+``` + + + +## Float + +Position an element inline with sibling elements. + +### Reference + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.flr` | `right` | +| `.fll` | `left` | +| `.fln` | `none` | + +### Example + +```html +
+``` + + + +## Top, Left, Bottom, Right + +These determine the final position of an element. + +### Reference + +#### Range + +Using the `$baseline` for vertical rhythm, the 0-12 scale goes up in groups in multiples of 1.6rem. + +| Top | Bottom | Left | Right | Value | +| ------ | ------ | ------ | ------ | ------- | +| `.t0` | `.b0` | `.l0` | `.r0` | 0 | +| `.t1` | `.b1` | `.l1` | `.r1` | 1.6rem | +| `.t2` | `.b2` | `.l2` | `.r2` | 3.2rem | +| `.t3` | `.b3` | `.l3` | `.r3` | 4.8rem | +| `.t4` | `.b4` | `.l4` | `.r4` | 6.4rem | +| `.t5` | `.b5` | `.l5` | `.r5` | 8.0rem | +| `.t6` | `.b6` | `.l6` | `.r6` | 9.6rem | +| `.t7` | `.b7` | `.l7` | `.r7` | 11.2rem | +| `.t8` | `.b8` | `.l8` | `.r8` | 12.8rem | +| `.t9` | `.b9` | `.l9` | `.r9` | 14.4rem | +| `.t10` | `.b10` | `.l10` | `.r10` | 16.0rem | +| `.t11` | `.b11` | `.l11` | `.r11` | 17.6rem | +| `.t12` | `.b12` | `.l12` | `.r12` | 19.2rem | + +#### Negative positioning + +Negative positioning allows you to tweak the location of an element without having to write too much custom css. + +| Top | Bottom | Left | Right | Value | +| ------- | ------- | ------- | ------- | ------ | +| `.t1x` | `.b1x` | `.l1x` | `.r1x` | -1rem | +| `.t2x` | `.b2x` | `.l2x` | `.r2x` | -2rem | +| `.t3x` | `.b3x` | `.l3x` | `.r3x` | -3rem | +| `.t4x` | `.b4x` | `.l4x` | `.r4x` | -4rem | +| `.t5x` | `.b5x` | `.l5x` | `.r5x` | -5rem | +| `.t6x` | `.b6x` | `.l6x` | `.r6x` | -6rem | +| `.t7x` | `.b7x` | `.l7x` | `.r7x` | -7rem | +| `.t8x` | `.b8x` | `.l8x` | `.r8x` | -8rem | +| `.t9x` | `.b9x` | `.l9x` | `.r9x` | -9rem | +| `.t10x` | `.b10x` | `.l10x` | `.r10x` | -10rem | + +#### Percentages + +Percentages are in multiples of 5, from 5% to 100%. + +| Top | Bottom | Left | Right | Value | +| -------- | -------- | -------- | -------- | ----- | +| `.t-5` | `.b-5` | `.l-5` | `.r-5` | 5% | +| `.t-10` | `.b-10` | `.l-10` | `.r-10` | 10% | +| `.t-15` | `.b-15` | `.l-15` | `.r-15` | 15% | +| `.t-20` | `.b-20` | `.l-20` | `.r-20` | 20% | +| `.t-25` | `.b-25` | `.l-25` | `.r-25` | 25% | +| `.t-30` | `.b-30` | `.l-30` | `.r-30` | 30% | +| `.t-35` | `.b-35` | `.l-35` | `.r-35` | 35% | +| `.t-40` | `.b-40` | `.l-40` | `.r-40` | 40% | +| `.t-45` | `.b-45` | `.l-45` | `.r-45` | 45% | +| `.t-50` | `.b-50` | `.l-50` | `.r-50` | 50% | +| `.t-55` | `.b-55` | `.l-55` | `.r-55` | 55% | +| `.t-60` | `.b-60` | `.l-60` | `.r-60` | 60% | +| `.t-65` | `.b-65` | `.l-65` | `.r-65` | 65% | +| `.t-70` | `.b-70` | `.l-70` | `.r-70` | 70% | +| `.t-75` | `.b-75` | `.l-75` | `.r-75` | 75% | +| `.t-80` | `.b-80` | `.l-80` | `.r-80` | 80% | +| `.t-85` | `.b-85` | `.l-85` | `.r-85` | 85% | +| `.t-90` | `.b-90` | `.l-90` | `.r-90` | 90% | +| `.t-95` | `.b-95` | `.l-95` | `.r-95` | 95% | +| `.t-100` | `.b-100` | `.l-100` | `.r-100` | 100% | + +##### Example + +```html +
+``` + + + +#### Discrete positioning + +Discrete positioning follows the discrete rule syntax to allow for ad-hoc sizes. + +| Top | Bottom | Left | Right | Value | +| ------------- | ------------- | ------------- | ------------- | ------ | +| `.t-wire` | `.b-wire` | `.l-wire` | `.r-wire` | 1px | +| `.t-xthin` | `.b-xthin` | `.l-xthin` | `.r-xthin` | 2px | +| `.t-thin` | `.b-thin` | `.l-thin` | `.r-thin` | 3px | +| `.t-xxxsmall` | `.b-xxxsmall` | `.l-xxxsmall` | `.r-xxxsmall` | 5px | +| `.t-xxsmall` | `.b-xxsmall` | `.l-xxsmall` | `.r-xxsmall` | 7px | +| `.t-xsmall` | `.b-xsmall` | `.l-xsmall` | `.r-xsmall` | 1rem | +| `.t-small` | `.b-small` | `.l-small` | `.r-small` | 1.6rem | +| `.t-icon` | `.b-icon` | `.l-icon` | `.r-icon` | 2.4rem | +| `.t-medium` | `.b-medium` | `.l-medium` | `.r-medium` | 7rem | +| `.t-big` | `.b-big` | `.l-big` | `.r-big` | 16rem | +| `.t-xbig` | `.b-xbig` | `.l-xbig` | `.r-xbig` | 22rem | +| `.t-xxbig` | `.b-xxbig` | `.l-xxbig` | `.r-xxbig` | 32rem | +| `.t-xxxbig` | `.b-xxxbig` | `.l-xxxbig` | `.r-xxxbig` | 44rem | +| `.t-super` | `.b-super` | `.l-super` | `.r-super` | 56rem | +| `.t-xsuper` | `.b-xsuper` | `.l-xsuper` | `.r-xsuper` | 68rem | +| `.t-xxsuper` | `.b-xxsuper` | `.l-xxsuper` | `.r-xxsuper` | 80rem | +| `.t-xxxsuper` | `.b-xxxsuper` | `.l-xxxsuper` | `.r-xxxsuper` | 100rem | + +## Clear + +| class | value | +| ----- | ----- | +| cb | both | + +## Vertical alignment + +| class | value | +| -------- | ----------------- | +| `.va-bo` | `v-align: bottom` | +| `.va-mi` | `v-align: middle` | +| `.va-to` | `v-align: top` | diff --git a/docs/en/0.x/ui-system/foundations-background.md b/docs/en/0.x/ui-system/foundations-background.md new file mode 100644 index 0000000..bbe859f --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-background.md @@ -0,0 +1,55 @@ +# Background + +## background-attachment + +| Utility class | CSS Rule | +| -------------- | -------- | +| `.bga-sc` | scroll | +| `.bga-fi` | fixed | +| `.bga-lo` | local | +| `.bga-in` | initial | +| `.bga-inherit` | inherit | + +## background-size + +| Utility class | value | +| ------------- | ------- | +| `.bs-auto` | auto | +| `.bs-inherit` | inherit | +| `.bs-cover` | cover | +| `.bs-contain` | contain | +| `.bs-initial` | initial | + +## background-position + +| Utility class | value | +| ------------- | ------ | +| `.bgp-center` | center | +| `.bgp-right` | right | +| `.bgp-left` | left | + +## background-position-x + +| Utility class | value | +| -------------- | ------ | +| `.bgpx-center` | center | +| `.bgpx-right` | right | +| `.bgpx-left` | left | + +## background-position-y + +| Utility class | value | +| -------------- | ------ | +| `.bgpy-center` | center | +| `.bgpy-right` | right | +| `.bgpy-left` | left | + +## background-repeat + +| Utility class | value | +| ------------- | --------- | +| `.bgr-rx` | repeat-x | +| `.bgr-rp` | repeat | +| `.bgr-sp` | space | +| `.bgr-ro` | round | +| `.bgr-nr` | no-repeat | diff --git a/docs/en/0.x/ui-system/foundations-borders.md b/docs/en/0.x/ui-system/foundations-borders.md new file mode 100644 index 0000000..4a7009e --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-borders.md @@ -0,0 +1,440 @@ +# Borders + +Border widths, colors, styles and radii. + +### border-bottom-width + +| Utility class | CSS Rule | +| ------------- | -------- | +| bwb0 | 0 | +| bwb1 | 1px | +| bwb2 | 2px | +| bwb3 | 3px | +| bwb4 | 4px | +| bwb5 | 5px | +| bwb6 | 6px | +| bwb7 | 7px | +| bwb8 | 8px | +| bwb9 | 9px | +| bwb10 | 10px | + +### border-top-width + +| Utility class | CSS Rule | +| ------------- | -------- | +| bwt0 | 0 | +| bwt1 | 1px | +| bwt2 | 2px | +| bwt3 | 3px | +| bwt4 | 4px | +| bwt5 | 5px | +| bwt6 | 6px | +| bwt7 | 7px | +| bwt8 | 8px | +| bwt9 | 9px | +| bwt10 | 10px | + +### border-right-width + +| Utility class | CSS Rule | +| ------------- | -------- | +| bwr0 | 0 | +| bwr1 | 1px | +| bwr2 | 2px | +| bwr3 | 3px | +| bwr4 | 4px | +| bwr5 | 5px | +| bwr6 | 6px | +| bwr7 | 7px | +| bwr8 | 8px | +| bwr9 | 9px | +| bwr10 | 10px | + +### border-left-width + +| Utility class | CSS Rule | +| ------------- | -------- | +| bwl0 | 0 | +| bwl1 | 1px | +| bwl2 | 2px | +| bwl3 | 3px | +| bwl4 | 4px | +| bwl5 | 5px | +| bwl6 | 6px | +| bwl7 | 7px | +| bwl8 | 8px | +| bwl9 | 9px | +| bwl10 | 10px | + +### border-width + +| Utility class | CSS Rule | +| ------------- | -------- | +| bwa0 | 0 | +| bwa1 | 1px | +| bwa2 | 2px | +| bwa3 | 3px | +| bwa4 | 4px | +| bwa5 | 5px | +| bwa6 | 6px | +| bwa7 | 7px | +| bwa8 | 8px | +| bwa9 | 9px | +| bwa10 | 10px | + +### border-bottom-color + +| Utility class | CSS Rule | +| --------------- | ----------- | +| bcb-black | #000000 | +| bcb-white | #ffffff | +| bcb-transparent | transparent | +| bcb-hotpinkxl | #f188bc | +| bcb-hotpinkl | #f36fb0 | +| bcb-hotpink | #ea2889 | +| bcb-hotpinkd | #cc0f6d | +| bcb-hotpinkxd | #900148 | +| bcb-greyxl | #f0f2ff | +| bcb-greyl | #dedbe2 | +| bcb-grey | #b2b6ca | +| bcb-greyd | #5a5573 | +| bcb-greyxd | #4d4c51 | +| bcb-yellowxl | #f8f8b7 | +| bcb-yellowl | #f1f16f | +| bcb-yellow | #eaea28 | +| bcb-yellowd | #d6d615 | +| bcb-yellowxd | #b2b211 | +| bcb-redxl | #f3a6a6 | +| bcb-redl | #ec7272 | +| bcb-red | #e53e3e | +| bcb-redd | #cd1c1c | +| bcb-redxd | #991515 | +| bcb-purplexl | #c493f4 | +| bcb-purplel | #a65eef | +| bcb-purple | #8928ea | +| bcb-purpled | #6c13c4 | +| bcb-purplexd | #5810a0 | +| bcb-orangexl | #f4c493 | +| bcb-orangel | #efa65e | +| bcb-orange | #ea8928 | +| bcb-oranged | #d67515 | +| bcb-orangexd | #b26211 | +| bcb-limexl | #c4f493 | +| bcb-limel | #a6ef5e | +| bcb-lime | #89ea28 | +| bcb-limed | #6cc413 | +| bcb-limexd | #4e8e0e | +| bcb-lilacxl | #f3effd | +| bcb-lilacl | #e6dff7 | +| bcb-lilac | #c4b4ea | +| bcb-lilacd | #b3a0de | +| bcb-lilacxd | #988bb7 | +| bcb-greenxl | #00ce00 | +| bcb-greenl | #00a700 | +| bcb-green | #008000 | +| bcb-greend | #006c00 | +| bcb-greenxd | #005900 | +| bcb-bluexl | #99c8fb | +| bcb-bluel | #68a9f1 | +| bcb-blue | #2889ea | +| bcb-blued | #126eca | +| bcb-bluexd | #0c59a7 | +| bcb-off-whitel | #fbfbff | +| bcb-off-white | #f3f3f7 | +| bcb-off-whited | #e4e7f7 | + +### border-top-color + +| Utility class | CSS Rule | +| --------------- | ----------- | +| bct-black | #000000 | +| bct-white | #ffffff | +| bct-transparent | transparent | +| bct-hotpinkxl | #f188bc | +| bct-hotpinkl | #f36fb0 | +| bct-hotpink | #ea2889 | +| bct-hotpinkd | #cc0f6d | +| bct-hotpinkxd | #900148 | +| bct-greyxl | #f0f2ff | +| bct-greyl | #dedbe2 | +| bct-grey | #b2b6ca | +| bct-greyd | #5a5573 | +| bct-greyxd | #4d4c51 | +| bct-yellowxl | #f8f8b7 | +| bct-yellowl | #f1f16f | +| bct-yellow | #eaea28 | +| bct-yellowd | #d6d615 | +| bct-yellowxd | #b2b211 | +| bct-redxl | #f3a6a6 | +| bct-redl | #ec7272 | +| bct-red | #e53e3e | +| bct-redd | #cd1c1c | +| bct-redxd | #991515 | +| bct-purplexl | #c493f4 | +| bct-purplel | #a65eef | +| bct-purple | #8928ea | +| bct-purpled | #6c13c4 | +| bct-purplexd | #5810a0 | +| bct-orangexl | #f4c493 | +| bct-orangel | #efa65e | +| bct-orange | #ea8928 | +| bct-oranged | #d67515 | +| bct-orangexd | #b26211 | +| bct-limexl | #c4f493 | +| bct-limel | #a6ef5e | +| bct-lime | #89ea28 | +| bct-limed | #6cc413 | +| bct-limexd | #4e8e0e | +| bct-lilacxl | #f3effd | +| bct-lilacl | #e6dff7 | +| bct-lilac | #c4b4ea | +| bct-lilacd | #b3a0de | +| bct-lilacxd | #988bb7 | +| bct-greenxl | #00ce00 | +| bct-greenl | #00a700 | +| bct-green | #008000 | +| bct-greend | #006c00 | +| bct-greenxd | #005900 | +| bct-bluexl | #99c8fb | +| bct-bluel | #68a9f1 | +| bct-blue | #2889ea | +| bct-blued | #126eca | +| bct-bluexd | #0c59a7 | +| bct-off-whitel | #fbfbff | +| bct-off-white | #f3f3f7 | +| bct-off-whited | #e4e7f7 | + +### border-left-color + +| Utility class | CSS Rule | +| --------------- | ----------- | +| bcl-black | #000000 | +| bcl-white | #ffffff | +| bcl-transparent | transparent | +| bcl-hotpinkxl | #f188bc | +| bcl-hotpinkl | #f36fb0 | +| bcl-hotpink | #ea2889 | +| bcl-hotpinkd | #cc0f6d | +| bcl-hotpinkxd | #900148 | +| bcl-greyxl | #f0f2ff | +| bcl-greyl | #dedbe2 | +| bcl-grey | #b2b6ca | +| bcl-greyd | #5a5573 | +| bcl-greyxd | #4d4c51 | +| bcl-yellowxl | #f8f8b7 | +| bcl-yellowl | #f1f16f | +| bcl-yellow | #eaea28 | +| bcl-yellowd | #d6d615 | +| bcl-yellowxd | #b2b211 | +| bcl-redxl | #f3a6a6 | +| bcl-redl | #ec7272 | +| bcl-red | #e53e3e | +| bcl-redd | #cd1c1c | +| bcl-redxd | #991515 | +| bcl-purplexl | #c493f4 | +| bcl-purplel | #a65eef | +| bcl-purple | #8928ea | +| bcl-purpled | #6c13c4 | +| bcl-purplexd | #5810a0 | +| bcl-orangexl | #f4c493 | +| bcl-orangel | #efa65e | +| bcl-orange | #ea8928 | +| bcl-oranged | #d67515 | +| bcl-orangexd | #b26211 | +| bcl-limexl | #c4f493 | +| bcl-limel | #a6ef5e | +| bcl-lime | #89ea28 | +| bcl-limed | #6cc413 | +| bcl-limexd | #4e8e0e | +| bcl-lilacxl | #f3effd | +| bcl-lilacl | #e6dff7 | +| bcl-lilac | #c4b4ea | +| bcl-lilacd | #b3a0de | +| bcl-lilacxd | #988bb7 | +| bcl-greenxl | #00ce00 | +| bcl-greenl | #00a700 | +| bcl-green | #008000 | +| bcl-greend | #006c00 | +| bcl-greenxd | #005900 | +| bcl-bluexl | #99c8fb | +| bcl-bluel | #68a9f1 | +| bcl-blue | #2889ea | +| bcl-blued | #126eca | +| bcl-bluexd | #0c59a7 | +| bcl-off-whitel | #fbfbff | +| bcl-off-white | #f3f3f7 | +| bcl-off-whited | #e4e7f7 | + +### border-right-color + +| Utility class | CSS Rule | +| --------------- | ----------- | +| bcr-black | #000000 | +| bcr-white | #ffffff | +| bcr-transparent | transparent | +| bcr-hotpinkxl | #f188bc | +| bcr-hotpinkl | #f36fb0 | +| bcr-hotpink | #ea2889 | +| bcr-hotpinkd | #cc0f6d | +| bcr-hotpinkxd | #900148 | +| bcr-greyxl | #f0f2ff | +| bcr-greyl | #dedbe2 | +| bcr-grey | #b2b6ca | +| bcr-greyd | #5a5573 | +| bcr-greyxd | #4d4c51 | +| bcr-yellowxl | #f8f8b7 | +| bcr-yellowl | #f1f16f | +| bcr-yellow | #eaea28 | +| bcr-yellowd | #d6d615 | +| bcr-yellowxd | #b2b211 | +| bcr-redxl | #f3a6a6 | +| bcr-redl | #ec7272 | +| bcr-red | #e53e3e | +| bcr-redd | #cd1c1c | +| bcr-redxd | #991515 | +| bcr-purplexl | #c493f4 | +| bcr-purplel | #a65eef | +| bcr-purple | #8928ea | +| bcr-purpled | #6c13c4 | +| bcr-purplexd | #5810a0 | +| bcr-orangexl | #f4c493 | +| bcr-orangel | #efa65e | +| bcr-orange | #ea8928 | +| bcr-oranged | #d67515 | +| bcr-orangexd | #b26211 | +| bcr-limexl | #c4f493 | +| bcr-limel | #a6ef5e | +| bcr-lime | #89ea28 | +| bcr-limed | #6cc413 | +| bcr-limexd | #4e8e0e | +| bcr-lilacxl | #f3effd | +| bcr-lilacl | #e6dff7 | +| bcr-lilac | #c4b4ea | +| bcr-lilacd | #b3a0de | +| bcr-lilacxd | #988bb7 | +| bcr-greenxl | #00ce00 | +| bcr-greenl | #00a700 | +| bcr-green | #008000 | +| bcr-greend | #006c00 | +| bcr-greenxd | #005900 | +| bcr-bluexl | #99c8fb | +| bcr-bluel | #68a9f1 | +| bcr-blue | #2889ea | +| bcr-blued | #126eca | +| bcr-bluexd | #0c59a7 | +| bcr-off-whitel | #fbfbff | +| bcr-off-white | #f3f3f7 | +| bcr-off-whited | #e4e7f7 | + +### border-color + +| Utility class | CSS Rule | +| --------------- | ----------- | +| bca-black | #000000 | +| bca-white | #ffffff | +| bca-transparent | transparent | +| bca-hotpinkxl | #f188bc | +| bca-hotpinkl | #f36fb0 | +| bca-hotpink | #ea2889 | +| bca-hotpinkd | #cc0f6d | +| bca-hotpinkxd | #900148 | +| bca-greyxl | #f0f2ff | +| bca-greyl | #dedbe2 | +| bca-grey | #b2b6ca | +| bca-greyd | #5a5573 | +| bca-greyxd | #4d4c51 | +| bca-yellowxl | #f8f8b7 | +| bca-yellowl | #f1f16f | +| bca-yellow | #eaea28 | +| bca-yellowd | #d6d615 | +| bca-yellowxd | #b2b211 | +| bca-redxl | #f3a6a6 | +| bca-redl | #ec7272 | +| bca-red | #e53e3e | +| bca-redd | #cd1c1c | +| bca-redxd | #991515 | +| bca-purplexl | #c493f4 | +| bca-purplel | #a65eef | +| bca-purple | #8928ea | +| bca-purpled | #6c13c4 | +| bca-purplexd | #5810a0 | +| bca-orangexl | #f4c493 | +| bca-orangel | #efa65e | +| bca-orange | #ea8928 | +| bca-oranged | #d67515 | +| bca-orangexd | #b26211 | +| bca-limexl | #c4f493 | +| bca-limel | #a6ef5e | +| bca-lime | #89ea28 | +| bca-limed | #6cc413 | +| bca-limexd | #4e8e0e | +| bca-lilacxl | #f3effd | +| bca-lilacl | #e6dff7 | +| bca-lilac | #c4b4ea | +| bca-lilacd | #b3a0de | +| bca-lilacxd | #988bb7 | +| bca-greenxl | #00ce00 | +| bca-greenl | #00a700 | +| bca-green | #008000 | +| bca-greend | #006c00 | +| bca-greenxd | #005900 | +| bca-bluexl | #99c8fb | +| bca-bluel | #68a9f1 | +| bca-blue | #2889ea | +| bca-blued | #126eca | +| bca-bluexd | #0c59a7 | +| bca-off-whitel | #fbfbff | +| bca-off-white | #f3f3f7 | +| bca-off-whited | #e4e7f7 | + +### border-style + +| Utility class | CSS Rule | +| ------------- | -------- | +| bsa-solid | solid | +| bsa-dotted | dotted | +| bsa-dashed | dashed | + +### border-bottom-style + +| Utility class | CSS Rule | +| ------------- | -------- | +| bsb-solid | solid | +| bsb-dotted | dotted | +| bsb-dashed | dashed | + +### border-top-style + +| Utility class | CSS Rule | +| ------------- | -------- | +| bst-solid | solid | +| bst-dotted | dotted | +| bst-dashed | dashed | + +### border-right-style + +| Utility class | CSS Rule | +| ------------- | -------- | +| bsr-solid | solid | +| bsr-dotted | dotted | +| bsr-dashed | dashed | + +### border-left-style + +| Utility class | CSS Rule | +| ------------- | -------- | +| bsl-solid | solid | +| bsl-dotted | dotted | +| bsl-dashed | dashed | + +### border-radius + +| Utility class | CSS Rule | +| ------------- | -------- | +| bra1 | .5rem | +| bra2 | 1rem | +| bra3 | 2rem | +| bra4 | 3rem | +| bra5 | 4rem | +| bra6 | 5rem | +| bra-50 | 50% | diff --git a/docs/en/0.x/ui-system/foundations-colors.md b/docs/en/0.x/ui-system/foundations-colors.md new file mode 100644 index 0000000..6534a12 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-colors.md @@ -0,0 +1,95 @@ +# Colors + +CSS colour utility classes in the default Preons theme. Colors help to make the UI more interesting and reinforce brand motifs. + +## Theme defaults + +Preons come with many default colors. + +> If you need to customize fonts, use the Preons CLI. + + + +## Reference + +| CSS properties | Preons utilities template | +| ------------------- | ------------------------- | +| color | .\ | +| background-color | .bg-\ | +| border-color | .bca-\ | +| border-left-color | .bcl-\ | +| border-right-color | .bcr-\ | +| border-top-color | .bct-\ | +| border-bottom-color | .bcb-\ | + +## Fonts + +Style background colors using the `.` convention. + +> See theme defaults for list of colors and their corresponding code. + +```html +

+ Okay, the red ones are my guests and the + blue ones are yours. +

+``` + + + +## Background colors + +Style background colors using the `.bg-` convention. + +> See theme defaults for list of colors and their corresponding code. + +```html +

+ Okay, the red ones are my guests and the + blue ones are yours. +

+``` + + + +## Border colors + +Style background colors using the `.-` convention. + +There are 5 border color prefixes. + +| Prefix | CSS Rule | | +| ------- | ------------------- | ------------------------- | +| `.bca-` | border-color | _border color, all sides_ | +| `.bcl-` | border-left-color | _border color, left_ | +| `.bct-` | border-top-color | _border color, top_ | +| `.bcr-` | border-right-color | _border color, right_ | +| `.bcb-` | border-bottom-color | _border color, bottom_ | + +```html +

+ Okay, the red ones are my guests and the blue ones are yours. +

+``` + + diff --git a/docs/en/0.x/ui-system/foundations-depth.md b/docs/en/0.x/ui-system/foundations-depth.md new file mode 100644 index 0000000..95b1198 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-depth.md @@ -0,0 +1,28 @@ +# Depth + +- box-shadow +- z-index + +## box-shadow + +| Utility class | CSS Rule | +| ------------- | ------------------------------ | +| `.bxsh-greyl` | `-1px 5px 15px -5px #6c67a073` | +| `.bxsh-grey` | `0px 3px 5px #0a0913` | +| `.bxsh-greyd` | `0px 3px 5px #6c67a0` | + +## z-index + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.z0` | `0` | +| `.z1` | `1` | +| `.z2` | `2` | +| `.z3` | `3` | +| `.z4` | `4` | +| `.z5` | `5` | +| `.z10` | `10` | +| `.z20` | `20` | +| `.z30` | `30` | +| `.z999` | `999` | +| `.z9999` | `9999` | diff --git a/docs/en/0.x/ui-system/foundations-display.md b/docs/en/0.x/ui-system/foundations-display.md new file mode 100644 index 0000000..6dde29b --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-display.md @@ -0,0 +1,29 @@ +# Display + +The display CSS property changes its own positioning or the positioning of its children. + +## Reference + +| Utility class | CSS Rule | +| ------------- | ----------------------- | +| `.d-in` | `display: inline` | +| `.d-bl` | `display: block` | +| `.d-inbl` | `display: inline-block` | +| `.d-ta` | `display: table` | +| `.d-fl` | `display: flex` | +| `.d-infl` | `display: inline-flex` | +| `.d-no` | `display: none` | + +## Example + +```html +
ABC
+``` + + diff --git a/docs/en/0.x/ui-system/foundations-flexbox.md b/docs/en/0.x/ui-system/foundations-flexbox.md new file mode 100644 index 0000000..a7ff05f --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-flexbox.md @@ -0,0 +1,163 @@ +# Flexbox + +The flexbox CSS properties give you more control over your layout without using floats or positioning. + +- flex-basis +- flex-direction +- flex-grow +- flex-shrink +- flex-wrap +- align-items +- align-self +- align-content +- justify-items +- justify-self +- justify-content + +## flex-basis + +| Utility class | CSS Rule | +| -------------- | ---------------- | +| `.basis-5` | `5%` | +| `.basis-10` | `10%` | +| `.basis-15` | `15%` | +| `.basis-20` | `20%` | +| `.basis-25` | `25%` | +| `.basis-30` | `30%` | +| `.basis-35` | `35%` | +| `.basis-40` | `40%` | +| `.basis-45` | `45%` | +| `.basis-50` | `50%` | +| `.basis-55` | `55%` | +| `.basis-60` | `60%` | +| `.basis-65` | `65%` | +| `.basis-70` | `70%` | +| `.basis-75` | `75%` | +| `.basis-80` | `80%` | +| `.basis-85` | `85%` | +| `.basis-90` | `90%` | +| `.basis-95` | `95%` | +| `.basis-100` | `100%` | +| `.basis-1-12` | `100% / 12` | +| `.basis-2-12` | `100% / 12 * 2` | +| `.basis-3-12` | `100% / 12 * 3` | +| `.basis-4-12` | `100% / 12 * 4` | +| `.basis-5-12` | `100% / 12 * 5` | +| `.basis-6-12` | `100% / 12 * 6` | +| `.basis-7-12` | `100% / 12 * 7` | +| `.basis-8-12` | `100% / 12 * 8` | +| `.basis-9-12` | `100% / 12 * 9` | +| `.basis-10-12` | `100% / 12 * 10` | +| `.basis-11-12` | `100% / 12 * 11` | +| `.basis-12-12` | `100% / 12 * 12` | + +## flex-direction + +| Utility class | CSS Rule | +| ----------------- | ---------------- | +| `.row` | `row` | +| `.row-reverse` | `row-reverse` | +| `.column` | `column` | +| `.column-reverse` | `column-reverse` | + +## flex-grow + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.grow-0` | `0` | +| `.grow-1` | `1` | +| `.grow-2` | `2` | +| `.grow-3` | `3` | +| `.grow-4` | `4` | +| `.grow-5` | `5` | +| `.grow-10` | `10` | +| `.grow-20` | `20` | +| `.grow-30` | `30` | +| `.grow-999` | `999` | +| `.grow-9999` | `9999` | + +### flex-shrink + +| class | value | +| -------------- | ------ | +| `.shrink-0` | `0` | +| `.shrink-1` | `1` | +| `.shrink-2` | `2` | +| `.shrink-3` | `3` | +| `.shrink-4` | `4` | +| `.shrink-5` | `5` | +| `.shrink-10` | `10` | +| `.shrink-20` | `20` | +| `.shrink-30` | `30` | +| `.shrink-999` | `999` | +| `.shrink-9999` | `9999` | + +### flex-wrap + +| class | value | +| --------------- | -------------- | +| `.nowrap` | `nowrap` | +| `.wrap` | `wrap` | +| `.wrap-reverse` | `wrap-reverse` | + +### align-items + +| class | value | +| -------------- | ------------ | +| `.ai-start` | `flex-start` | +| `.ai-end` | `flex-end` | +| `.ai-center` | `center` | +| `.ai-baseline` | `baseline` | +| `.ai-stretch` | `stretch` | + +### align-self + +| class | value | +| -------------- | ------------ | +| `.as-start` | `flex-start` | +| `.as-end` | `flex-end` | +| `.as-center` | `center` | +| `.as-baseline` | `baseline` | +| `.as-stretch` | `stretch` | + +### align-content + +| class | value | +| ------------- | --------------- | +| `.ac-start` | `flex-start` | +| `.ac-end` | `flex-end` | +| `.ac-center` | `center` | +| `.ac-between` | `space-between` | +| `.ac-around` | `space-around` | +| `.ac-stretch` | `stretch` | + +### justify-items + +| class | value | +| -------------- | ------------ | +| `.ji-start` | `flex-start` | +| `.ji-end` | `flex-end` | +| `.ji-center` | `center` | +| `.ji-baseline` | `baseline` | +| `.ji-stretch` | `stretch` | + +### justify-self + +| class | value | +| -------------- | ------------ | +| `.js-start` | `flex-start` | +| `.js-end` | `flex-end` | +| `.js-center` | `center` | +| `.js-baseline` | `baseline` | +| `.js-stretch` | `stretch` | + +### justify-content + +| class | value | +| ------------- | --------------- | +| `.jc-start` | `flex-start` | +| `.jc-end` | `flex-end` | +| `.jc-center` | `center` | +| `.jc-between` | `space-between` | +| `.jc-around` | `space-around` | +| `.jc-stretch` | `stretch` | diff --git a/docs/en/0.x/ui-system/foundations-image.md b/docs/en/0.x/ui-system/foundations-image.md new file mode 100644 index 0000000..47ded17 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-image.md @@ -0,0 +1,11 @@ +# Image + +## object-fit + +| class | value | +| ---------------- | ------------ | +| `.of-fill` | `fill` | +| `.of-contain` | `contain` | +| `.of-cover` | `cover` | +| `.of-scale-down` | `scale-down` | +| `.of-none` | `none` | diff --git a/docs/en/0.x/ui-system/foundations-overflows.md b/docs/en/0.x/ui-system/foundations-overflows.md new file mode 100644 index 0000000..c76f5a5 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-overflows.md @@ -0,0 +1,32 @@ +# Overflows + +- overflow +- overflow-x +- overflow-y + +## overflow + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.scroll` | `scroll` | +| `.hidden` | `hidden` | +| `.auto` | `auto` | +| `.none` | `none` | + +## overflow-x + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.x-scroll` | `scroll` | +| `.x-hidden` | `hidden` | +| `.x-auto` | `auto` | +| `.x-none` | `none` | + +## overflow-y + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.y-scroll` | `scroll` | +| `.y-hidden` | `hidden` | +| `.y-auto` | `auto` | +| `.y-none` | `none` | diff --git a/docs/en/0.x/ui-system/foundations-position.md b/docs/en/0.x/ui-system/foundations-position.md new file mode 100644 index 0000000..4a6f574 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-position.md @@ -0,0 +1,12 @@ +# Position + +The position css property determines the way an element flows in comparison to its parent container and sibling elements. + +## Reference + +| Utility class | CSS Rule | +| ------------- | -------------------- | +| `.absolute` | `position: absolute` | +| `.fixed` | `position: fixed` | +| `.relative` | `position: relative` | +| `.sticky` | `position: sticky` | diff --git a/docs/en/0.x/ui-system/foundations-size.md b/docs/en/0.x/ui-system/foundations-size.md new file mode 100644 index 0000000..98e2049 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-size.md @@ -0,0 +1,474 @@ +# Size + +- height +- min-height +- max-height +- width +- min-width +- max-width + +## height + +### Range + +| Utility class | CSS Rule | +| ------------- | --------- | +| `.h0` | `0` | +| `.h1` | `1.6rem` | +| `.h2` | `3.2rem` | +| `.h3` | `4.8rem` | +| `.h4` | `6.4rem` | +| `.h5` | `8.0rem` | +| `.h6` | `9.6rem` | +| `.h7` | `11.2rem` | +| `.h8` | `12.8rem` | +| `.h9` | `14.4rem` | +| `.h10` | `16.0rem` | +| `.h11` | `17.6rem` | +| `.h12` | `19.2rem` | + +### Percentages + +Multiples of 5%. + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.h-5` | `5%` | +| `.h-10` | `10%` | +| `.h-15` | `15%` | +| `.h-20` | `20%` | +| `.h-25` | `25%` | +| `.h-30` | `30%` | +| `.h-35` | `35%` | +| `.h-40` | `40%` | +| `.h-45` | `45%` | +| `.h-50` | `50%` | +| `.h-55` | `55%` | +| `.h-60` | `60%` | +| `.h-65` | `65%` | +| `.h-70` | `70%` | +| `.h-75` | `75%` | +| `.h-80` | `80%` | +| `.h-85` | `85%` | +| `.h-90` | `90%` | +| `.h-95` | `95%` | +| `.h-100` | `100%` | + +12-grid-system + +| Utility class | CSS Rule | +| ------------- | ---------------- | +| `.h-1-12` | `100% / 12` | +| `.h-2-12` | `100% / 12 * 2` | +| `.h-3-12` | `100% / 12 * 3` | +| `.h-4-12` | `100% / 12 * 4` | +| `.h-5-12` | `100% / 12 * 5` | +| `.h-6-12` | `100% / 12 * 6` | +| `.h-7-12` | `100% / 12 * 7` | +| `.h-8-12` | `100% / 12 * 8` | +| `.h-9-12` | `100% / 12 * 9` | +| `.h-10-12` | `100% / 12 * 10` | +| `.h-11-12` | `100% / 12 * 11` | +| `.h-12-12` | `100% / 12 * 12` | + +### Discrete sizes + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.h-wire` | `1px` | +| `.h-xthin` | `2px` | +| `.h-thin` | `3px` | +| `.h-xxxsmall` | `5px` | +| `.h-xxsmall` | `7px` | +| `.h-xsmall` | `1rem` | +| `.h-small` | `1.6rem` | +| `.h-icon` | `2.4rem` | +| `.h-medium` | `7rem` | +| `.h-big` | `16rem` | +| `.h-xbig` | `22rem` | +| `.h-xxbig` | `32rem` | +| `.h-xxxbig` | `44rem` | +| `.h-super` | `56rem` | +| `.h-xsuper` | `68rem` | +| `.h-xxsuper` | `80rem` | +| `.h-xxxsuper` | `100rem` | + +### Resets + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.hn` | `none` | +| `.h-au` | `auto` | + +### Vertical window height + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.h-10vh` | `10vh` | +| `.h-20vh` | `20vh` | +| `.h-30vh` | `30vh` | +| `.h-40vh` | `40vh` | +| `.h-50vh` | `50vh` | +| `.h-60vh` | `60vh` | +| `.h-70vh` | `70vh` | +| `.h-80vh` | `80vh` | +| `.h-90vh` | `90vh` | +| `.h-100vh` | `100vh` | + +## max-height + +### Percentages + +Multiples of 5%. + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.maxh-5` | `5%` | +| `.maxh-10` | `10%` | +| `.maxh-15` | `15%` | +| `.maxh-20` | `20%` | +| `.maxh-25` | `25%` | +| `.maxh-30` | `30%` | +| `.maxh-35` | `35%` | +| `.maxh-40` | `40%` | +| `.maxh-45` | `45%` | +| `.maxh-50` | `50%` | +| `.maxh-55` | `55%` | +| `.maxh-60` | `60%` | +| `.maxh-65` | `65%` | +| `.maxh-70` | `70%` | +| `.maxh-75` | `75%` | +| `.maxh-80` | `80%` | +| `.maxh-85` | `85%` | +| `.maxh-90` | `90%` | +| `.maxh-95` | `95%` | +| `.maxh-100` | `100%` | + +### Discrete sizes + +| Utility class | CSS Rule | +| ---------------- | -------- | +| `.maxh-wire` | `1px` | +| `.maxh-xthin` | `2px` | +| `.maxh-thin` | `3px` | +| `.maxh-xxxsmall` | `5px` | +| `.maxh-xxsmall` | `7px` | +| `.maxh-xsmall` | `1rem` | +| `.maxh-small` | `1.6rem` | +| `.maxh-icon` | `2.4rem` | +| `.maxh-medium` | `7rem` | +| `.maxh-big` | `16rem` | +| `.maxh-xbig` | `22rem` | +| `.maxh-xxbig` | `32rem` | +| `.maxh-xxxbig` | `44rem` | +| `.maxh-super` | `56rem` | +| `.maxh-xsuper` | `68rem` | +| `.maxh-xxsuper` | `80rem` | +| `.maxh-xxxsuper` | `100rem` | + +### Resets + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.maxhn` | `none` | +| `.maxh-au` | `auto` | + +## min-height + +### Percentages + +Multiples of 5%. + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.minh-5` | `5%` | +| `.minh-10` | `10%` | +| `.minh-15` | `15%` | +| `.minh-20` | `20%` | +| `.minh-25` | `25%` | +| `.minh-30` | `30%` | +| `.minh-35` | `35%` | +| `.minh-40` | `40%` | +| `.minh-45` | `45%` | +| `.minh-50` | `50%` | +| `.minh-55` | `55%` | +| `.minh-60` | `60%` | +| `.minh-65` | `65%` | +| `.minh-70` | `70%` | +| `.minh-75` | `75%` | +| `.minh-80` | `80%` | +| `.minh-85` | `85%` | +| `.minh-90` | `90%` | +| `.minh-95` | `95%` | +| `.minh-100` | `100%` | + +### Discrete sizes + +| Utility class | CSS Rule | +| ---------------- | -------- | +| `.minh-wire` | `1px` | +| `.minh-xthin` | `2px` | +| `.minh-thin` | `3px` | +| `.minh-xxxsmall` | `5px` | +| `.minh-xxsmall` | `7px` | +| `.minh-xsmall` | `1rem` | +| `.minh-small` | `1.6rem` | +| `.minh-icon` | `2.4rem` | +| `.minh-medium` | `7rem` | +| `.minh-big` | `16rem` | +| `.minh-xbig` | `22rem` | +| `.minh-xxbig` | `32rem` | +| `.minh-xxxbig` | `44rem` | +| `.minh-super` | `56rem` | +| `.minh-xsuper` | `68rem` | +| `.minh-xxsuper` | `80rem` | +| `.minh-xxxsuper` | `100rem` | + +### Resets + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.minhn` | `none` | +| `.minh-au` | `auto` | + +## width + +### Range + +| Utility class | CSS Rule | +| ------------- | --------- | +| `.w0` | `0` | +| `.w1` | `1.6rem` | +| `.w2` | `3.2rem` | +| `.w3` | `4.8rem` | +| `.w4` | `6.4rem` | +| `.w5` | `8.0rem` | +| `.w6` | `9.6rem` | +| `.w7` | `11.2rem` | +| `.w8` | `12.8rem` | +| `.w9` | `14.4rem` | +| `.w10` | `16.0rem` | +| `.w11` | `17.6rem` | +| `.w12` | `19.2rem` | + +### Percentages + +Multiples of 5%. + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.w-5` | `5%` | +| `.w-10` | `10%` | +| `.w-15` | `15%` | +| `.w-20` | `20%` | +| `.w-25` | `25%` | +| `.w-30` | `30%` | +| `.w-35` | `35%` | +| `.w-40` | `40%` | +| `.w-45` | `45%` | +| `.w-50` | `50%` | +| `.w-55` | `55%` | +| `.w-60` | `60%` | +| `.w-65` | `65%` | +| `.w-70` | `70%` | +| `.w-75` | `75%` | +| `.w-80` | `80%` | +| `.w-85` | `85%` | +| `.w-90` | `90%` | +| `.w-95` | `95%` | +| `.w-100` | `100%` | + +12-grid-system + +| Utility class | CSS Rule | +| ------------- | ---------------- | +| `.w-1-12` | `100% / 12` | +| `.w-2-12` | `100% / 12 * 2` | +| `.w-3-12` | `100% / 12 * 3` | +| `.w-4-12` | `100% / 12 * 4` | +| `.w-5-12` | `100% / 12 * 5` | +| `.w-6-12` | `100% / 12 * 6` | +| `.w-7-12` | `100% / 12 * 7` | +| `.w-8-12` | `100% / 12 * 8` | +| `.w-9-12` | `100% / 12 * 9` | +| `.w-10-12` | `100% / 12 * 10` | +| `.w-11-12` | `100% / 12 * 11` | +| `.w-12-12` | `100% / 12 * 12` | + +### Discrete sizes + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.w-wire` | `1px` | +| `.w-xthin` | `2px` | +| `.w-thin` | `3px` | +| `.w-xxxsmall` | `5px` | +| `.w-xxsmall` | `7px` | +| `.w-xsmall` | `1rem` | +| `.w-small` | `1.6rem` | +| `.w-icon` | `2.4rem` | +| `.w-medium` | `7rem` | +| `.w-big` | `16rem` | +| `.w-xbig` | `22rem` | +| `.w-xxbig` | `32rem` | +| `.w-xxxbig` | `44rem` | +| `.w-super` | `56rem` | +| `.w-xsuper` | `68rem` | +| `.w-xxsuper` | `80rem` | +| `.w-xxxsuper` | `100rem` | + +### Resets + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.wn` | `none` | +| `.w-au` | `auto` | + +### Horiznotal window width + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.w-10vw` | `10vw` | +| `.w-20vw` | `20vw` | +| `.w-30vw` | `30vw` | +| `.w-40vw` | `40vw` | +| `.w-50vw` | `50vw` | +| `.w-60vw` | `60vw` | +| `.w-70vw` | `70vw` | +| `.w-80vw` | `80vw` | +| `.w-90vw` | `90vw` | +| `.w-100vw` | `100vw` | + +## max-width + +### Percentages + +Multiples of 5%. + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.maxw-5` | `5%` | +| `.maxw-10` | `10%` | +| `.maxw-15` | `15%` | +| `.maxw-20` | `20%` | +| `.maxw-25` | `25%` | +| `.maxw-30` | `30%` | +| `.maxw-35` | `35%` | +| `.maxw-40` | `40%` | +| `.maxw-45` | `45%` | +| `.maxw-50` | `50%` | +| `.maxw-55` | `55%` | +| `.maxw-60` | `60%` | +| `.maxw-65` | `65%` | +| `.maxw-70` | `70%` | +| `.maxw-75` | `75%` | +| `.maxw-80` | `80%` | +| `.maxw-85` | `85%` | +| `.maxw-90` | `90%` | +| `.maxw-95` | `95%` | +| `.maxw-100` | `100%` | + +### Discrete sizes + +| Utility class | CSS Rule | +| ---------------- | -------- | +| `.maxw-wire` | `1px` | +| `.maxw-xthin` | `2px` | +| `.maxw-thin` | `3px` | +| `.maxw-xxxsmall` | `5px` | +| `.maxw-xxsmall` | `7px` | +| `.maxw-xsmall` | `1rem` | +| `.maxw-small` | `1.6rem` | +| `.maxw-icon` | `2.4rem` | +| `.maxw-medium` | `7rem` | +| `.maxw-big` | `16rem` | +| `.maxw-xbig` | `22rem` | +| `.maxw-xxbig` | `32rem` | +| `.maxw-xxxbig` | `44rem` | +| `.maxw-super` | `56rem` | +| `.maxw-xsuper` | `68rem` | +| `.maxw-xxsuper` | `80rem` | +| `.maxw-xxxsuper` | `100rem` | + +### Resets + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.maxwn` | `none` | +| `.maxw-au` | `auto` | + +## min-width + +### Range + +| Utility class | CSS Rule | +| ------------- | --------- | +| `.minw0` | `0` | +| `.minw1` | `1.6rem` | +| `.minw2` | `3.2rem` | +| `.minw3` | `4.8rem` | +| `.minw4` | `6.4rem` | +| `.minw5` | `8.0rem` | +| `.minw6` | `9.6rem` | +| `.minw7` | `11.2rem` | +| `.minw8` | `12.8rem` | +| `.minw9` | `14.4rem` | +| `.minw10` | `16.0rem` | +| `.minw11` | `17.6rem` | +| `.minw12` | `19.2rem` | + +### Percentages + +Multiples of 5%. + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.minw-5` | `5%` | +| `.minw-10` | `10%` | +| `.minw-15` | `15%` | +| `.minw-20` | `20%` | +| `.minw-25` | `25%` | +| `.minw-30` | `30%` | +| `.minw-35` | `35%` | +| `.minw-40` | `40%` | +| `.minw-45` | `45%` | +| `.minw-50` | `50%` | +| `.minw-55` | `55%` | +| `.minw-60` | `60%` | +| `.minw-65` | `65%` | +| `.minw-70` | `70%` | +| `.minw-75` | `75%` | +| `.minw-80` | `80%` | +| `.minw-85` | `85%` | +| `.minw-90` | `90%` | +| `.minw-95` | `95%` | +| `.minw-100` | `100%` | + +### Discrete sizes + +| Utility class | CSS Rule | +| ---------------- | -------- | +| `.minw-wire` | `1px` | +| `.minw-xthin` | `2px` | +| `.minw-thin` | `3px` | +| `.minw-xxxsmall` | `5px` | +| `.minw-xxsmall` | `7px` | +| `.minw-xsmall` | `1rem` | +| `.minw-small` | `1.6rem` | +| `.minw-icon` | `2.4rem` | +| `.minw-medium` | `7rem` | +| `.minw-big` | `16rem` | +| `.minw-xbig` | `22rem` | +| `.minw-xxbig` | `32rem` | +| `.minw-xxxbig` | `44rem` | +| `.minw-super` | `56rem` | +| `.minw-xsuper` | `68rem` | +| `.minw-xxsuper` | `80rem` | +| `.minw-xxxsuper` | `100rem` | + +### Resets + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.minwn` | `none` | +| `.minw-au` | `auto` | diff --git a/docs/en/0.x/ui-system/foundations-space.md b/docs/en/0.x/ui-system/foundations-space.md new file mode 100644 index 0000000..c519450 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-space.md @@ -0,0 +1,137 @@ +# Space + +Padding and margins manage space within the box model. + +- margins +- paddings + +## Margins + +### Range + +| `margin:` | `margin-left:` | `margin-right:` | `margin-top:` | `margin-bottom:` | Value | +| --------- | -------------- | --------------- | ------------- | ---------------- | ------- | +| `.ma0` | `.ml0` | `.mr0` | `.mt0` | `.mb0` | 0 | | +| `.t1` | `.ml1` | `.mr1` | `.mt1` | `.mb1` | 1.6rem | +| `.ma2` | `.ml2` | `.mr2` | `.mt2` | `.mb2` | 3.2rem | +| `.ma3` | `.ml3` | `.mr3` | `.mt3` | `.mb3` | 4.8rem | +| `.ma4` | `.ml4` | `.mr4` | `.mt4` | `.mb4` | 6.4rem | +| `.ma5` | `.ml5` | `.mr5` | `.mt5` | `.mb5` | 8.0rem | +| `.ma6` | `.ml6` | `.mr6` | `.mt6` | `.mb6` | 9.6rem | +| `.ma7` | `.ml7` | `.mr7` | `.mt7` | `.mb7` | 11.2rem | +| `.ma8` | `.ml8` | `.mr8` | `.mt8` | `.mb8` | 12.8rem | +| `.ma9` | `.ml9` | `.mr9` | `.mt9` | `.mb9` | 14.4rem | +| `.ma10` | `.ml10` | `.mr10` | `.mt10` | `.mb10` | 16.0rem | +| `.ma11` | `.ml11` | `.mr11` | `.mt11` | `.mb11` | 17.6rem | +| `.ma12` | `.ml12` | `.mr12` | `.mt12` | `.mb12` | 19.2rem | + +### Resets + +| `margin:` | `margin-left:` | `margin-right:` | `margin-top:` | `margin-bottom:` | Value | +| --------- | -------------- | --------------- | ------------- | ---------------- | ------ | +| `.man` | `.mln` | `.mrn` | `.mtn` | `.mbn` | `none` | +| `.ma-au` | `.ml-au` | `.mr-au` | `.mt-au` | `.mb-au` | `auto` | + +### Discrete + +| `margin:` | `margin-left:` | `margin-right:` | `margin-top:` | `margin-bottom:` | Value | +| -------------- | -------------- | --------------- | -------------- | ---------------- | -------- | +| `.ma-wire` | `.ml-wire` | `.mr-wire` | `.mt-wire` | `.mb-wire` | `1px` | +| `.ma-xthin` | `.ml-xthin` | `.mr-xthin` | `.mt-xthin` | `.mb-xthin` | `2px` | +| `.ma-thin` | `.ml-thin` | `.mr-thin` | `.mt-thin` | `.mb-thin` | `3px` | +| `.ma-xxxsmall` | `.ml-xxxsmall` | `.mr-xxxsmall` | `.mt-xxxsmall` | `.mb-xxxsmall` | `5px` | +| `.ma-xxsmall` | `.ml-xxsmall` | `.mr-xxsmall` | `.mt-xxsmall` | `.mb-xxsmall` | `7px` | +| `.ma-xsmall` | `.ml-xsmall` | `.mr-xsmall` | `.mt-xsmall` | `.mb-xsmall` | `1rem` | +| `.ma-small` | `.ml-small` | `.mr-small` | `.mt-small` | `.mb-small` | `1.6rem` | +| `.ma-icon` | `.ml-icon` | `.mr-icon` | `.mt-icon` | `.mb-icon` | `2.4rem` | +| `.ma-medium` | `.ml-medium` | `.mr-medium` | `.mt-medium` | `.mb-medium` | `7rem` | +| `.ma-big` | `.ml-big` | `.mr-big` | `.mt-big` | `.mb-big` | `16rem` | +| `.ma-xbig` | `.ml-xbig` | `.mr-xbig` | `.mt-xbig` | `.mb-xbig` | `22rem` | +| `.ma-xxbig` | `.ml-xxbig` | `.mr-xxbig` | `.mt-xxbig` | `.mb-xxbig` | `32rem` | +| `.ma-xxxbig` | `.ml-xxxbig` | `.mr-xxxbig` | `.mt-xxxbig` | `.mb-xxxbig` | `44rem` | +| `.ma-super` | `.ml-super` | `.mr-super` | `.mt-super` | `.mb-super` | `56rem` | +| `.ma-xsuper` | `.ml-xsuper` | `.mr-xsuper` | `.mt-xsuper` | `.mb-xsuper` | `68rem` | +| `.ma-xxsuper` | `.ml-xxsuper` | `.mr-xxsuper` | `.mt-xxsuper` | `.mb-xxsuper` | `80rem` | +| `.ma-xxxsuper` | `.ml-xxxsuper` | `.mr-xxxsuper` | `.mt-xxxsuper` | `.mb-xxxsuper` | `100rem` | + +### Percentage + +| `margin:` | `margin-left:` | `margin-right:` | `margin-top:` | `margin-bottom:` | Value | +| --------- | -------------- | --------------- | ------------- | ---------------- | ------ | +| `.ma-5` | `.ml-5` | `.mr-5` | `.mt-5` | `.mb-5` | `5%` | +| `.ma-10` | `.ml-10` | `.mr-10` | `.mt-10` | `.mb-10` | `10%` | +| `.ma-15` | `.ml-15` | `.mr-15` | `.mt-15` | `.mb-15` | `15%` | +| `.ma-20` | `.ml-20` | `.mr-20` | `.mt-20` | `.mb-20` | `20%` | +| `.ma-25` | `.ml-25` | `.mr-25` | `.mt-25` | `.mb-25` | `25%` | +| `.ma-30` | `.ml-30` | `.mr-30` | `.mt-30` | `.mb-30` | `30%` | +| `.ma-35` | `.ml-35` | `.mr-35` | `.mt-35` | `.mb-35` | `35%` | +| `.ma-40` | `.ml-40` | `.mr-40` | `.mt-40` | `.mb-40` | `40%` | +| `.ma-45` | `.ml-45` | `.mr-45` | `.mt-45` | `.mb-45` | `45%` | +| `.ma-50` | `.ml-50` | `.mr-50` | `.mt-50` | `.mb-50` | `50%` | +| `.ma-55` | `.ml-55` | `.mr-55` | `.mt-55` | `.mb-55` | `55%` | +| `.ma-60` | `.ml-60` | `.mr-60` | `.mt-60` | `.mb-60` | `60%` | +| `.ma-65` | `.ml-65` | `.mr-65` | `.mt-65` | `.mb-65` | `65%` | +| `.ma-70` | `.ml-70` | `.mr-70` | `.mt-70` | `.mb-70` | `70%` | +| `.ma-75` | `.ml-75` | `.mr-75` | `.mt-75` | `.mb-75` | `75%` | +| `.ma-80` | `.ml-80` | `.mr-80` | `.mt-80` | `.mb-80` | `80%` | +| `.ma-85` | `.ml-85` | `.mr-85` | `.mt-85` | `.mb-85` | `85%` | +| `.ma-90` | `.ml-90` | `.mr-90` | `.mt-90` | `.mb-90` | `90%` | +| `.ma-95` | `.ml-95` | `.mr-95` | `.mt-95` | `.mb-95` | `95%` | +| `.ma-100` | `.ml-100` | `.mr-100` | `.mt-100` | `.mb-100` | `100%` | + +## Negative sizing + +| `margin:` | `margin-left:` | `margin-right:` | `margin-top:` | `margin-bottom:` | Value | +| --------- | -------------- | --------------- | ------------- | ---------------- | -------- | +| `.ma1x` | `.ml1x` | `.mr1x` | `.mt1x` | `.mb1x` | `-1rem` | +| `.ma2x` | `.ml2x` | `.mr2x` | `.mt2x` | `.mb2x` | `-2rem` | +| `.ma3x` | `.ml3x` | `.mr3x` | `.mt3x` | `.mb3x` | `-3rem` | +| `.ma4x` | `.ml4x` | `.mr4x` | `.mt4x` | `.mb4x` | `-4rem` | +| `.ma5x` | `.ml5x` | `.mr5x` | `.mt5x` | `.mb5x` | `-5rem` | +| `.ma6x` | `.ml6x` | `.mr6x` | `.mt6x` | `.mb6x` | `-6rem` | +| `.ma7x` | `.ml7x` | `.mr7x` | `.mt7x` | `.mb7x` | `-7rem` | +| `.ma8x` | `.ml8x` | `.mr8x` | `.mt8x` | `.mb8x` | `-8rem` | +| `.ma9x` | `.ml9x` | `.mr9x` | `.mt9x` | `.mb9x` | `-9rem` | +| `.ma10x` | `.ml10x` | `.mr10x` | `.mt10x` | `.mb10x` | `-10rem` | + +## Paddings + +### Range + +| `padding:` | `padding-left:` | `padding-right:` | `padding-top:` | `padding-bottom:` | Value | +| ---------- | --------------- | ---------------- | -------------- | ----------------- | ------- | +| `.pa0` | `.pl0` | `.pr0` | `.pt0` | `.pb0` | 0 | | +| `.t1` | `.pl1` | `.pr1` | `.pt1` | `.pb1` | 1.6rem | +| `.pa2` | `.pl2` | `.pr2` | `.pt2` | `.pb2` | 3.2rem | +| `.pa3` | `.pl3` | `.pr3` | `.pt3` | `.pb3` | 4.8rem | +| `.pa4` | `.pl4` | `.pr4` | `.pt4` | `.pb4` | 6.4rem | +| `.pa5` | `.pl5` | `.pr5` | `.pt5` | `.pb5` | 8.0rem | +| `.pa6` | `.pl6` | `.pr6` | `.pt6` | `.pb6` | 9.6rem | +| `.pa7` | `.pl7` | `.pr7` | `.pt7` | `.pb7` | 11.2rem | +| `.pa8` | `.pl8` | `.pr8` | `.pt8` | `.pb8` | 12.8rem | +| `.pa9` | `.pl9` | `.pr9` | `.pt9` | `.pb9` | 14.4rem | +| `.pa10` | `.pl10` | `.pr10` | `.pt10` | `.pb10` | 16.0rem | +| `.pa11` | `.pl11` | `.pr11` | `.pt11` | `.pb11` | 17.6rem | +| `.pa12` | `.pl12` | `.pr12` | `.pt12` | `.pb12` | 19.2rem | + +### Discrete + +| `padding:` | `padding-left:` | `padding-right:` | `padding-top:` | `padding-bottom:` | Value | +| -------------- | --------------- | ---------------- | -------------- | ----------------- | -------- | +| `.pa-wire` | `.pl-wire` | `.pr-wire` | `.pt-wire` | `.pb-wire` | `1px` | +| `.pa-xthin` | `.pl-xthin` | `.pr-xthin` | `.pt-xthin` | `.pb-xthin` | `2px` | +| `.pa-thin` | `.pl-thin` | `.pr-thin` | `.pt-thin` | `.pb-thin` | `3px` | +| `.pa-xxxsmall` | `.pl-xxxsmall` | `.pr-xxxsmall` | `.pt-xxxsmall` | `.pb-xxxsmall` | `5px` | +| `.pa-xxsmall` | `.pl-xxsmall` | `.pr-xxsmall` | `.pt-xxsmall` | `.pb-xxsmall` | `7px` | +| `.pa-xsmall` | `.pl-xsmall` | `.pr-xsmall` | `.pt-xsmall` | `.pb-xsmall` | `1rem` | +| `.pa-small` | `.pl-small` | `.pr-small` | `.pt-small` | `.pb-small` | `1.6rem` | +| `.pa-icon` | `.pl-icon` | `.pr-icon` | `.pt-icon` | `.pb-icon` | `2.4rem` | +| `.pa-medium` | `.pl-medium` | `.pr-medium` | `.pt-medium` | `.pb-medium` | `7rem` | +| `.pa-big` | `.pl-big` | `.pr-big` | `.pt-big` | `.pb-big` | `16rem` | +| `.pa-xbig` | `.pl-xbig` | `.pr-xbig` | `.pt-xbig` | `.pb-xbig` | `22rem` | +| `.pa-xxbig` | `.pl-xxbig` | `.pr-xxbig` | `.pt-xxbig` | `.pb-xxbig` | `32rem` | +| `.pa-xxxbig` | `.pl-xxxbig` | `.pr-xxxbig` | `.pt-xxxbig` | `.pb-xxxbig` | `44rem` | +| `.pa-super` | `.pl-super` | `.pr-super` | `.pt-super` | `.pb-super` | `56rem` | +| `.pa-xsuper` | `.pl-xsuper` | `.pr-xsuper` | `.pt-xsuper` | `.pb-xsuper` | `68rem` | +| `.pa-xxsuper` | `.pl-xxsuper` | `.pr-xxsuper` | `.pt-xxsuper` | `.pb-xxsuper` | `80rem` | +| `.pa-xxxsuper` | `.pl-xxxsuper` | `.pr-xxxsuper` | `.pt-xxxsuper` | `.pb-xxxsuper` | `100rem` | diff --git a/docs/en/0.x/ui-system/foundations-typography.md b/docs/en/0.x/ui-system/foundations-typography.md new file mode 100644 index 0000000..0d24315 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-typography.md @@ -0,0 +1,124 @@ +# Typography + +- text-align +- text-decoration +- text-transform +- font-family +- font-size +- font-style +- font-weight +- letter-spacing +- line-height +- list-style-type + +## text-align + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.center` | `center` | +| `.right` | `right` | +| `.left` | `left` | + +## text-decoration + +| Utility class | CSS Rule | +| ------------- | ----------- | +| `.td-no` | `none` | +| `.td-un` | `underline` | + +## text-transform + +| Utility class | CSS Rule | +| ------------- | ------------ | +| `.tt-no` | `none` | +| `.tt-up` | `uppercase` | +| `.tt-ca` | `capitalize` | +| `.tt-lo` | `lowercase` | + +## font-family + +| Utility class | CSS Rule | +| ----------------- | ------------------------------- | +| `.ff-raleway` | `#{Raleway, sans-serif}` | +| `.ff-exo` | `#{Exo, sans-serif}` | +| `.ff-josefin` | `#{'Josefin Sans', sans-serif}` | +| `.ff-kanit` | `#{'Kanit', sans-serif}` | +| `.ff-martel` | `#{'Martel', serif}` | +| `.ff-prompt` | `#{'Prompt', sans-serif}` | +| `.ff-roboto-mono` | `#{'Roboto Monp', monospace}` | + +## font-size + +| Utility class | CSS Rule | +| ------------- | ----------- | +| `.fs1` | `.90rem` | +| `.fs2` | `1.2rem` | +| `.fs3` | `1.60rem` | +| `.fs4` | `2.133rem` | +| `.fs5` | `2.843rem` | +| `.fs6` | `3.790rem` | +| `.fs7` | `5.522rem` | +| `.fs8` | `6.734rem` | +| `.fs9` | `8.976rem` | +| `.fs10` | `11.966rem` | + +## font-style + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.fst-no` | `normal` | +| `.fst-it` | `italic` | + +## font-weight + +| Utility class | CSS Rule | +| ------------- | -------- | +| `.fw1` | `100` | +| `.fw2` | `200` | +| `.fw3` | `300` | +| `.fw4` | `400` | +| `.fw5` | `500` | +| `.fw6` | `600` | +| `.fw7` | `700` | +| `.fw8` | `800` | +| `.fw9` | `900` | +| `.fwl` | `300` | +| `.fwn` | `400` | +| `.fwb` | `700` | + +## letter-spacing + +| class | value | +| ------ | ----- | +| `.ls1` | `1px` | +| `.ls2` | `2px` | +| `.ls3` | `3px` | +| `.ls4` | `4px` | + +## line-height + +| class | value | +| ------- | ----------------- | +| `.lh1` | `$baseline * 0.5` | +| `.lh2` | `$baseline * 1` | +| `.lh3` | `$baseline * 1.5` | +| `.lh4` | `$baseline * 2` | +| `.lh5` | `$baseline * 2.5` | +| `.lh6` | `$baseline * 3` | +| `.lh7` | `$baseline * 3.5` | +| `.lh8` | `$baseline * 4` | +| `.lh9` | `$baseline * 4.5` | +| `.lh10` | `$baseline * 5` | +| `.lh11` | `$baseline * 5.5` | +| `.lh12` | `$baseline * 6` | + +## list-style-type + +| Utility class | CSS Rule | +| --------------------------- | ---------------------- | +| `.lst-circle` | `circle` | +| `.lst-disc` | `disc` | +| `.lst-square` | `square` | +| `.lst-decimal` | `decimal` | +| `.lst-none` | `none` | +| `.lst-decimal-leading-zero` | `decimal-leading-zero` | diff --git a/docs/en/0.x/ui-system/foundations-visibility.md b/docs/en/0.x/ui-system/foundations-visibility.md new file mode 100644 index 0000000..4b426f1 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations-visibility.md @@ -0,0 +1,6 @@ +# visibility + +| Utility class | CSS Rule | +| ------------- | --------- | +| `.v-hidden` | `hidden` | +| `.v-visible` | `visible` | diff --git a/docs/en/0.x/ui-system/foundations.md b/docs/en/0.x/ui-system/foundations.md new file mode 100644 index 0000000..e365f13 --- /dev/null +++ b/docs/en/0.x/ui-system/foundations.md @@ -0,0 +1,19 @@ +# Foundations + +An illustrated reference guide for _Preons'_ css classes. _Foundations_ are single css rules represented by a single class. For example, `d-bl` represents `display: block`. For multiple rule classes such as needed for buttons etc, use modules and components, and for control over child elements, use Scopes. + +## The Preons Default Convention + +Having conventions allows Preons to use an entire scaffolding system from utility to complex components, making it easy to tweak styles and rules. However, if you have your own convention, you can do so using the CLI. + +## Mobile first + +Suffix any utility class with a breakpoint `-m` for medium or `-l` for large in the default theme. + +```html +Inline mobile, block table +``` + +## Vertical Rhythm + +Scaled spaces and sizes follow as a `$baseline: 1.6rem` in the default configuration. Vertical rhythm allows your typography and spacing especially between elements to look consistent. diff --git a/docs/en/0.x/ui-system/introduction.md b/docs/en/0.x/ui-system/introduction.md new file mode 100644 index 0000000..27ca974 --- /dev/null +++ b/docs/en/0.x/ui-system/introduction.md @@ -0,0 +1,12 @@ +# Introduction + +The UI system is an illustrated reference guide for: + +- Foundations + Utility CSS classes with a `one-rule, one-class` principle. +- Modules + Multi-rule CSS classes for things like buttons +- UI Components + Designed fast prototyping and development +- Scopes + To control code child elements using a single class diff --git a/static/_redirects b/docs/en/0.x/ui-system/pseudoclass-hover.md similarity index 100% rename from static/_redirects rename to docs/en/0.x/ui-system/pseudoclass-hover.md diff --git a/docs/en/0.x/ui-system/pseudoclass.md b/docs/en/0.x/ui-system/pseudoclass.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/images/2020-05-13-21-24-35.png b/docs/images/2020-05-13-21-24-35.png deleted file mode 100644 index e59869b..0000000 Binary files a/docs/images/2020-05-13-21-24-35.png and /dev/null differ diff --git a/docs/images/2020-05-13-21-30-25.png b/docs/images/2020-05-13-21-30-25.png deleted file mode 100644 index 7eff477..0000000 Binary files a/docs/images/2020-05-13-21-30-25.png and /dev/null differ diff --git a/docs/images/2020-05-16-11-32-52.png b/docs/images/2020-05-16-11-32-52.png deleted file mode 100644 index 18d57c5..0000000 Binary files a/docs/images/2020-05-16-11-32-52.png and /dev/null differ diff --git a/docs/notes/2020-05.md b/docs/notes/2020-05.md deleted file mode 100644 index 9bff2af..0000000 --- a/docs/notes/2020-05.md +++ /dev/null @@ -1,159 +0,0 @@ -# 2020-05 - -## Writing good documentation (or at least trying) - -Hopefully some useful tips will be implemented, otherwise these docs will be horrible. Resource notes: - -### Writing effective documentation - Beth Aitman - -https://www.youtube.com/watch?v=R6zeikbTgVc - -- Heading: **Writing a custom code generator** instead of **Custom code generator** - Preons can therefore have, "Create your own functional css framework and systemize UI generation". πŸ™„πŸ˜… - -### Writing great documentation - Jacob Kaplan-Moss - -https://www.youtube.com/watch?v=z3fRu9pkuXE - -- Create a tutorials that deliver the tools' capability in less than 30 minutes. -- Then have a topical guide for more in-depth help -- Autogenerated reference is not a good substitute for documentation written by people -- FAQs - answers to questions for people when they are angry - -![](../images/2020-05-13-21-24-35.png) - -For each part of the docs, you need the 4 items: - -1. Tutorial (Get started) -2. Guide -3. Reference -4. Trouble-shooting - -![](../images/2020-05-13-21-30-25.png) - -## Codejs Nuxt issues - -https://github.com/nuxt/nuxt.js/issues/6336#issuecomment-561861147 - -> I'm sorry, this didn't work for me. -> This worked: yarn add -D core-js@2 @babel/runtime-corejs - -How to downgrade corejs. - -## PWA - -https://pwa.nuxtjs.org/ - -##Β Listening to route changes - -https://github.com/nuxt/nuxt.js/issues/2975 - -```js -// layout/default.vue -export default { - watch: { - $route() { - console.log('route changed', this.$route) - } - } -} -``` - -## Syntax highlighting - -https://idiallo.com/blog/javascript-syntax-highlighter - -## Using markdown - -### Initial attempt - -https://regenrek.com/posts/create-a-frontmatter-markdown-powered-blog-with-nuxt.js/ - -```bash -yarn add frontmatter-markdown-loader -``` - -```js -// nuxt.config.js -const path = require('path') - -export default { - // more config ... - build: { - extend(config, ctx) { - // add frontmatter-markdown-loader - config.module.rules.push({ - test: /\.md$/, - include: path.resolve(__dirname, 'content'), - loader: 'frontmatter-markdown-loader', - options: { - mode: [Mode.VUE_COMPONENT, Mode.META] - } - }) - } - } -} -``` - -### This looks like it's more suited to the ecosystem and not just Webpack - -https://content.nuxtjs.org/ - -## Problems with flexbox shrinking it to size - -https://stackoverflow.com/questions/49747825/flex-basis-behavior-not-as-expected-but-max-width-works - -> It is because flex box items cannot be smaller than the actual content. This is the default behaviour of flexbox. - -So you have to set `min-width` otherwise, it will try to be the size of its contents, which makes sense. But for some strange reason, the syntax highlighting meant, that if a line was longer than the width of the div, even if I had overflow-x: scroll, it still wouldn't collapse to the remaining width. - -```css -.left { - flex-basis: 30%; - min-width: 0; -} -``` - -https://stackoverflow.com/questions/36247140/why-dont-flex-items-shrink-past-content-size - -The defaults are... - -- min-width: auto -- min-height: auto - -...for flex items in row-direction and column-direction, respectively. - -You can override these defaults by setting flex items to: - -- min-width: 0 -- min-height: 0 -- overflow: hidden (or any other value, except visible) - -## Safari browser wasn't loading Nuxt - -The page would flash but a js error would break things. I used [lambdatest](https://www.lambdatest.com/) to make sure it worked. - -https://cmty.app/nuxt/nuxt.js/issues/c10181 - -This is the fix: - -```js -build: { - babel: { - presets ({ envName }) { - const envTargets = { - client: { browsers: ['last 2 versions', 'iOS >= 8', 'Safari >= 8'] }, - server: { node: 'current' } - } - return [ - [ - '@nuxt/babel-preset-app', - { - targets: envTargets[envName] - } - ] - ] - } - } -} -``` diff --git a/jest.config.js b/jest.config.js deleted file mode 100644 index ac58707..0000000 --- a/jest.config.js +++ /dev/null @@ -1,17 +0,0 @@ -module.exports = { - moduleNameMapper: { - '^@/(.*)$': '/$1', - '^~/(.*)$': '/$1', - '^vue$': 'vue/dist/vue.common.js' - }, - moduleFileExtensions: ['js', 'vue', 'json'], - transform: { - '^.+\\.js$': 'babel-jest', - '.*\\.(vue)$': 'vue-jest' - }, - collectCoverage: true, - collectCoverageFrom: [ - '/components/**/*.vue', - '/pages/**/*.vue' - ] -} diff --git a/jsconfig.json b/jsconfig.json deleted file mode 100644 index 29037a6..0000000 --- a/jsconfig.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "compilerOptions": { - "baseUrl": ".", - "paths": { - "~/*": ["./*"], - "@/*": ["./*"], - "~~/*": ["./*"], - "@@/*": ["./*"] - } - }, - "exclude": ["node_modules", ".nuxt", "dist"] -} diff --git a/layouts/app.vue b/layouts/app.vue deleted file mode 100644 index 48d7f23..0000000 --- a/layouts/app.vue +++ /dev/null @@ -1,27 +0,0 @@ - - - - - diff --git a/layouts/default.vue b/layouts/default.vue deleted file mode 100644 index ae2833f..0000000 --- a/layouts/default.vue +++ /dev/null @@ -1,199 +0,0 @@ - - - - - diff --git a/layouts/docs.vue b/layouts/docs.vue deleted file mode 100644 index 114ae46..0000000 --- a/layouts/docs.vue +++ /dev/null @@ -1,116 +0,0 @@ - - - diff --git a/layouts/error.vue b/layouts/error.vue deleted file mode 100644 index 82b046c..0000000 --- a/layouts/error.vue +++ /dev/null @@ -1,16 +0,0 @@ - - - - - \ No newline at end of file diff --git a/layouts/simple.vue b/layouts/simple.vue deleted file mode 100644 index e6f408c..0000000 --- a/layouts/simple.vue +++ /dev/null @@ -1,50 +0,0 @@ - - - diff --git a/middleware/README.md b/middleware/README.md deleted file mode 100644 index 01595de..0000000 --- a/middleware/README.md +++ /dev/null @@ -1,8 +0,0 @@ -# MIDDLEWARE - -**This directory is not required, you can delete it if you don't want to use it.** - -This directory contains your application middleware. -Middleware let you define custom functions that can be run before rendering either a page or a group of pages. - -More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/routing#middleware). diff --git a/nuxt.config.js b/nuxt.config.js deleted file mode 100644 index 18ca8ba..0000000 --- a/nuxt.config.js +++ /dev/null @@ -1,146 +0,0 @@ -module.exports = { - mode: 'universal', - /* - ** Headers of the page - */ - head: { - title: 'A functional css system', - titleTemplate: '%s - Preons', - meta: [ - { - charset: 'utf-8' - }, - { - name: 'viewport', - content: 'width=device-width, initial-scale=1' - }, - { - hid: 'description', - name: 'description', - content: process.env.npm_package_description || '' - } - ], - link: [ - { - rel: 'icon', - type: 'image/x-icon', - href: '/favicon.ico' - }, - { - rel: 'stylesheet', - href: - 'https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@200;300;400;500;600;700&family=Martel:wght@200;300;400;600;700;800;900&family=Roboto+Mono:wght@100;300;400;500;700&display=swap' - } - ] - }, - /* - ** Customize the progress-bar color - */ - loading: { - color: '#fff' - }, - /* - ** Global CSS - */ - css: [], - /* - ** Plugins to load before mounting the App - */ - plugins: [], - /* - ** Nuxt.js dev-modules - */ - buildModules: [ - // Doc: https://github.com/nuxt-community/eslint-module - // '@nuxtjs/eslint-module', - // Doc: https://pwa.nuxtjs.org/ - [ - '@nuxtjs/pwa', - { - workbox: false - } - ] - ], - /* - ** Nuxt.js modules - */ - modules: [ - // Doc: https://axios.nuxtjs.org/usage - '@nuxtjs/axios', - // Doc: https://github.com/nuxt-community/dotenv-module - '@nuxtjs/dotenv', - // https://content.nuxtjs.org/installation - '@nuxt/content', - // https://www.npmjs.com/package/nuxt-bugsnag - [ - 'nuxt-bugsnag', - { - config: { - apiKey: '5dc3d9bfc9eeaaf7918bad1055f13ed9' - } - } - ] - ], - /* - ** Axios module configuration - ** See https://axios.nuxtjs.org/options - */ - axios: {}, - /** - * Build configuration - */ - build: { - extractCSS: true, - /* - ** You can extend webpack config here - */ - extend(config, ctx) {} - }, - - pwa: { - meta: { - theme_color: '#311e67' - } - }, - /** - * Generate routes - */ - generate: { - async routes() { - const { $content } = require('@nuxt/content') - const articles = await $content('articles') - .only(['path']) - .fetch() - - const cli = await $content('learn/cli') - .only(['path']) - .fetch() - - const ui = await $content('learn/ui') - .only(['path']) - .fetch() - return [] - .concat(articles, cli, ui) - .map((file) => (file.path === '/index' ? '/' : file.path)) - } - }, - /** - * Use babel - */ - babel: { - presets({ envName }) { - const envTargets = { - client: { browsers: ['last 2 versions', 'iOS >= 8', 'Safari >= 8'] }, - server: { node: 'current' } - } - return [ - [ - '@nuxt/babel-preset-app', - { - targets: envTargets[envName] - } - ] - ] - } - } -} diff --git a/package.json b/package.json index d3b4f81..642ea1b 100644 --- a/package.json +++ b/package.json @@ -9,57 +9,9 @@ "build": "nuxt build", "start": "cross-env NODE_ENV=production node server/index.js", "generate": "nuxt generate", - "lint": "eslint --ext .js,.vue --ignore-path .gitignore .", "test": "jest", "release": "auto shipit" }, - "dependencies": { - "@nuxt/content": "^1.0.0", - "@nuxtjs/axios": "^5.3.6", - "@nuxtjs/dotenv": "^1.4.0", - "@nuxtjs/pwa": "^3.0.0-0", - "core-js": "2", - "cross-env": "^5.2.0", - "date-fns": "^2.14.0", - "express": "^4.16.4", - "hamburgers": "^1.1.3", - "highlight.js": "^10.0.3", - "node-sass": "^4.14.1", - "nuxt": "^2.0.0", - "nuxt-bugsnag": "^4.0.1", - "preons": "^0.3.22", - "prismjs": "^1.20.0", - "promise-polyfill": "^8.1.3", - "reading-time": "^1.2.0", - "sass-loader": "^8.0.2", - "strip-indent": "^3.0.0", - "title": "^3.4.2" - }, - "devDependencies": { - "@auto-it/all-contributors": "^9.32.0", - "@auto-it/conventional-commits": "^9.32.0", - "@auto-it/exec": "^9.32.0", - "@auto-it/first-time-contributor": "^9.32.0", - "@auto-it/git-tag": "^9.32.0", - "@auto-it/released": "^9.32.0", - "@babel/preset-env": "^7.9.6", - "@babel/runtime-corejs2": "^7.9.6", - "@babel/runtime-corejs3": "^7.9.6", - "@nuxtjs/eslint-config": "^2.0.0", - "@nuxtjs/eslint-module": "^1.0.0", - "@vue/test-utils": "^1.0.0-beta.27", - "all-contributors-cli": "^6.14.2", - "auto": "^9.32.0", - "babel-eslint": "^10.0.1", - "babel-jest": "^24.1.0", - "eslint": "^6.1.0", - "eslint-config-prettier": "^6.10.0", - "eslint-plugin-nuxt": ">=0.4.2", - "eslint-plugin-prettier": "^3.1.2", - "husky": "^4.2.5", - "jest": "^24.1.0", - "nodemon": "^1.18.9", - "prettier": "^1.19.1", - "vue-jest": "^4.0.0-0" - } + "dependencies": {}, + "devDependencies": {} } diff --git a/pages/articles/_article.vue b/pages/articles/_article.vue deleted file mode 100644 index 1b46584..0000000 --- a/pages/articles/_article.vue +++ /dev/null @@ -1,120 +0,0 @@ - - - diff --git a/pages/articles/index.vue b/pages/articles/index.vue deleted file mode 100644 index fe76017..0000000 --- a/pages/articles/index.vue +++ /dev/null @@ -1,70 +0,0 @@ - - - diff --git a/pages/index.vue b/pages/index.vue deleted file mode 100644 index ff97173..0000000 --- a/pages/index.vue +++ /dev/null @@ -1,34 +0,0 @@ - diff --git a/pages/learn/cli/_index.vue b/pages/learn/cli/_index.vue deleted file mode 100644 index 302377a..0000000 --- a/pages/learn/cli/_index.vue +++ /dev/null @@ -1,130 +0,0 @@ - - diff --git a/pages/learn/guides/_index.vue b/pages/learn/guides/_index.vue deleted file mode 100644 index fa31d9e..0000000 --- a/pages/learn/guides/_index.vue +++ /dev/null @@ -1,130 +0,0 @@ - - diff --git a/pages/learn/index.vue b/pages/learn/index.vue deleted file mode 100644 index 507dea5..0000000 --- a/pages/learn/index.vue +++ /dev/null @@ -1,130 +0,0 @@ - - diff --git a/pages/learn/ui/_index.vue b/pages/learn/ui/_index.vue deleted file mode 100644 index 51d329b..0000000 --- a/pages/learn/ui/_index.vue +++ /dev/null @@ -1,130 +0,0 @@ - - diff --git a/pages/search/index.vue b/pages/search/index.vue deleted file mode 100644 index 4dcd6db..0000000 --- a/pages/search/index.vue +++ /dev/null @@ -1,92 +0,0 @@ - - - diff --git a/plugins/README.md b/plugins/README.md deleted file mode 100644 index ca1f9d8..0000000 --- a/plugins/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# PLUGINS - -**This directory is not required, you can delete it if you don't want to use it.** - -This directory contains Javascript plugins that you want to run before mounting the root Vue.js application. - -More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/plugins). diff --git a/server/index.js b/server/index.js deleted file mode 100644 index da613e5..0000000 --- a/server/index.js +++ /dev/null @@ -1,33 +0,0 @@ -const express = require('express') -const consola = require('consola') -const { Nuxt, Builder } = require('nuxt') -const app = express() - -// Import and Set Nuxt.js options -const config = require('../nuxt.config.js') -config.dev = process.env.NODE_ENV !== 'production' - -async function start() { - // Init Nuxt.js - const nuxt = new Nuxt(config) - - const { host, port } = nuxt.options.server - - await nuxt.ready() - // Build only in dev mode - if (config.dev) { - const builder = new Builder(nuxt) - await builder.build() - } - - // Give nuxt middleware to express - app.use(nuxt.render) - - // Listen the server - app.listen(port, host) - consola.ready({ - message: `Server listening on http://${host}:${port}`, - badge: true - }) -} -start() diff --git a/static/content/code-examples/button-example.html b/static/content/code-examples/button-example.html deleted file mode 100644 index 634f6a1..0000000 --- a/static/content/code-examples/button-example.html +++ /dev/null @@ -1,3 +0,0 @@ - \ No newline at end of file diff --git a/static/content/code-examples/card-component-1.html b/static/content/code-examples/card-component-1.html deleted file mode 100644 index 7e5a980..0000000 --- a/static/content/code-examples/card-component-1.html +++ /dev/null @@ -1,5 +0,0 @@ - -
- -
- diff --git a/static/content/code-examples/card-component-2.html b/static/content/code-examples/card-component-2.html deleted file mode 100644 index e149c0c..0000000 --- a/static/content/code-examples/card-component-2.html +++ /dev/null @@ -1,4 +0,0 @@ -

- When you need a card, but that card doesn't need a - description. -

diff --git a/static/content/code-examples/card-component-3.html b/static/content/code-examples/card-component-3.html deleted file mode 100644 index 1e48af6..0000000 --- a/static/content/code-examples/card-component-3.html +++ /dev/null @@ -1,3 +0,0 @@ - diff --git a/static/content/code-examples/card-component-4.html b/static/content/code-examples/card-component-4.html deleted file mode 100644 index 858a826..0000000 --- a/static/content/code-examples/card-component-4.html +++ /dev/null @@ -1,14 +0,0 @@ - -
- - -

- When you need a card, but that card doesn't need a - description. -

- - -
- diff --git a/static/content/code-examples/cli.html b/static/content/code-examples/cli.html deleted file mode 100644 index 9900a59..0000000 --- a/static/content/code-examples/cli.html +++ /dev/null @@ -1,10 +0,0 @@ -Usage: preons [options] [command] - -Options: - -V, --version output the version number - -h, --help display help for command - -Commands: - stylesheet [name] Generates a stylesheet - config [name] Converts config - help [command] display help for command \ No newline at end of file diff --git a/static/content/code-examples/get-started.html b/static/content/code-examples/get-started.html deleted file mode 100644 index 60b92a3..0000000 --- a/static/content/code-examples/get-started.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - Preons docs - - - - - - -
-

Preons

- -
-
-

My Store

-

Look up other classes in the reference sheet.

-
- - \ No newline at end of file diff --git a/static/content/code-examples/preons-example.yaml b/static/content/code-examples/preons-example.yaml deleted file mode 100644 index 8c2f58c..0000000 --- a/static/content/code-examples/preons-example.yaml +++ /dev/null @@ -1,9 +0,0 @@ -preons: - baseline: 1.6rem - - rules: - theme-colors: - black: "#242027" - white: "#fefeff" - grey: "#f6f5f9" - ## ... diff --git a/static/content/code-examples/sass-map-bp.css b/static/content/code-examples/sass-map-bp.css deleted file mode 100644 index 2fc255d..0000000 --- a/static/content/code-examples/sass-map-bp.css +++ /dev/null @@ -1,15 +0,0 @@ -.bg-blue { - background-color: #365e86; -} - -@media screen and (min-width: 40em) { - .bg-blue-m { - background-color: #365e86; - } -} - -@media screen and (min-width: 60em) { - .bg-blue-l { - background-color: #365e86; - } -} diff --git a/static/content/code-examples/sass-map.css b/static/content/code-examples/sass-map.css deleted file mode 100644 index 0c53057..0000000 --- a/static/content/code-examples/sass-map.css +++ /dev/null @@ -1,15 +0,0 @@ -.bg-blue { - background-color: #365e86; -} - -.bg-white { - background-color: #ffffff; -} - -.bg-grey { - background-color: #eef0ee; -} - -.bg-grey-dark { - background-color: #89969d; -} diff --git a/static/content/code-examples/sass-map.scss b/static/content/code-examples/sass-map.scss deleted file mode 100644 index 2c87366..0000000 --- a/static/content/code-examples/sass-map.scss +++ /dev/null @@ -1,6 +0,0 @@ -$colors: ( - 'blue': #365e86, - 'white': #ffffff, - 'grey': #eef0ee, - 'grey-dark': #89969d, -); \ No newline at end of file diff --git a/static/content/code-examples/tachyons-css.css b/static/content/code-examples/tachyons-css.css deleted file mode 100644 index ebde9a4..0000000 --- a/static/content/code-examples/tachyons-css.css +++ /dev/null @@ -1,26 +0,0 @@ -/** - * In tachyons.css - */ - -@media screen and (min-width: 60em) { - .aspect-ratio-l { - height: 0; - position: relative; - } - - .aspect-ratio--16x9-l { - padding-bottom: 56.25%; - } - - .aspect-ratio--9x16-l { - padding-bottom: 177.77%; - } -} - -/** - * Then...in a custom .css - */ - -.aspect-ratio--4-3 { - padding-bottom: 75%; -} diff --git a/static/content/code-examples/tachyons-diff-breakpoints.html b/static/content/code-examples/tachyons-diff-breakpoints.html deleted file mode 100644 index 4576d85..0000000 --- a/static/content/code-examples/tachyons-diff-breakpoints.html +++ /dev/null @@ -1,3 +0,0 @@ - \ No newline at end of file diff --git a/static/favicon.ico b/static/favicon.ico deleted file mode 100755 index b53e0ce..0000000 Binary files a/static/favicon.ico and /dev/null differ diff --git a/static/icon.png b/static/icon.png deleted file mode 100644 index 5033e6b..0000000 Binary files a/static/icon.png and /dev/null differ diff --git a/static/icons/search-hotpink.svg b/static/icons/search-hotpink.svg deleted file mode 100644 index e14b0f0..0000000 --- a/static/icons/search-hotpink.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/icons/search-white.svg b/static/icons/search-white.svg deleted file mode 100644 index bc27ca8..0000000 --- a/static/icons/search-white.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/images/button.jpg b/static/images/button.jpg deleted file mode 100644 index 4d007f9..0000000 Binary files a/static/images/button.jpg and /dev/null differ diff --git a/static/images/card.jpg b/static/images/card.jpg deleted file mode 100644 index c34cf29..0000000 Binary files a/static/images/card.jpg and /dev/null differ diff --git a/static/images/iterative-vs-incremental.jpeg b/static/images/iterative-vs-incremental.jpeg deleted file mode 100644 index 7e3c6e6..0000000 Binary files a/static/images/iterative-vs-incremental.jpeg and /dev/null differ diff --git a/static/images/page-reference.jpg b/static/images/page-reference.jpg deleted file mode 100644 index ba5e207..0000000 Binary files a/static/images/page-reference.jpg and /dev/null differ diff --git a/static/images/pixelexaspect.jpg b/static/images/pixelexaspect.jpg deleted file mode 100644 index 64f5660..0000000 Binary files a/static/images/pixelexaspect.jpg and /dev/null differ diff --git a/static/images/quick-make.jpg b/static/images/quick-make.jpg deleted file mode 100644 index 0a5ffdf..0000000 Binary files a/static/images/quick-make.jpg and /dev/null differ diff --git a/static/images/satellite.png b/static/images/satellite.png deleted file mode 100644 index 5d9dc17..0000000 Binary files a/static/images/satellite.png and /dev/null differ diff --git a/static/images/space.jpeg b/static/images/space.jpeg deleted file mode 100644 index 73b9f26..0000000 Binary files a/static/images/space.jpeg and /dev/null differ diff --git a/static/images/tachyons-quick-example.jpg b/static/images/tachyons-quick-example.jpg deleted file mode 100644 index b1b2842..0000000 Binary files a/static/images/tachyons-quick-example.jpg and /dev/null differ diff --git a/store/README.md b/store/README.md deleted file mode 100644 index 1972d27..0000000 --- a/store/README.md +++ /dev/null @@ -1,10 +0,0 @@ -# STORE - -**This directory is not required, you can delete it if you don't want to use it.** - -This directory contains your Vuex Store files. -Vuex Store option is implemented in the Nuxt.js framework. - -Creating a file in this directory automatically activates the option in the framework. - -More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/vuex-store). diff --git a/test/Logo.spec.js b/test/Logo.spec.js deleted file mode 100644 index 1628640..0000000 --- a/test/Logo.spec.js +++ /dev/null @@ -1,9 +0,0 @@ -import { mount } from '@vue/test-utils' -import Logo from '@/components/Logo.vue' - -describe('Logo', () => { - test('is a Vue instance', () => { - const wrapper = mount(Logo) - expect(wrapper.isVueInstance()).toBeTruthy() - }) -})