Code Monkey home page Code Monkey logo

tentcss's Introduction

Tent CSS

Build Status npm version Gitter chat

TentCSS 1.x.x is not currently receiving updates.

A CSS survival kit. Includes only the essentials to make camp.

Website - http://css.sitetent.com/

Follow on Twitter - @tentcss

Installation

You can install via bower:

$ bower install --save tent-css

Or, you can install via npm:

$ npm install --save tent-css

Or, you can clone the source:

$ git clone https://github.com/sitetent/tentcss.git

Read more about installation on the documentation.

How to Use

Documentation for Tent CSS is updated on the official website:

Tent CSS Documentation

Related Projects

Contributing

You can help make Tent CSS event better!

Before you contribute

Please before opening a pull request, inquire via GitHub issues to make a case for any proposed change. Please be as specific as possibe, consider including code examples too.

Tent CSS has been designed with strict principles in mind that have made it the attractive framework that it is. Please be mindful that any potential feature requests must conform to these principles.

Creating a pull request

  1. Fork the repository.
  2. Create a feature branch. git checkout -b new-feature
  3. Install the dependencies and run npm install
  4. Build any feature before submitting by running npm run build
  5. Once you have pushed the branch to Github submit a new Pull Request.

License

MIT

Credit

  • All of the authors and contributors to the great open source frameworks that have set the pace thus far and going forward.
  • The Tent CSS website full-screen hero photo is by Jamison McAndie.
  • Tent CSS is developed with caffine by Aaron Mazade (@ulinaaron).

Roadmap

  • Addons for more objects and components.
  • Better mixin support for default objects and components. Will allow those that desire to include mixins into their own classes rather than class chaining to make object and component variations.
  • Example boilerplates for common page types such as marketing and landing pages.

tentcss's People

Contributors

ulinaaron avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tentcss's Issues

Improve docs for map-get() usage

Quite a bit of the framework uses map-get(). While this is a standard Sass function it wouldn't hurt to explain some of it's usage within the context of the framework.

Flex and grid mixins to allow for semantic class naming

Tent CSS is designed to be unsemantic by nature. The framework is more or less made up by chaining together classes to create components. While this is fine for most developers some may wish to use the objects and components with their own class names instead.

To do this much of the flex and grid objects will have to be rewrote to employ mixins. From a CSS distribution point of view this should have no real effect. This will only effect developers that wish to roll their own CSS output using the SCSS source files.

Add a variable allowing to set the transition time

At first, thank you and congrats for this awesome little project.

I was looking for a variable in 01_settings/_variables.defaults.scss allowing me to reduce the transition time of the changes when hovering a button or a link, for instance... But to no avail.

It would be great to have such a variable in the settings, because I found that 1s is a bit too much.

Thanks in advance! :)

Equal height

Hi,
it's possible equal height for grid__columns and card?

is there gap between grid__column

 
<!doctype html><html><head><meta charset='utf-8' />
<link rel="stylesheet"  href="tent.css" />

<style>
body{background:azure}

</style>

</head><body><div class="container" >

 
<div class="grid"  style="background:#fff;margin-top:8px;"  >
    <div class="grid__column grid__column--8   ">main </div>
    <div class="grid__column grid__column--4   " >aside </div>
</div>



<div class="grid"  style="background:#fff;margin-top:8px;" >
    <div class="grid__column grid__column--8  ">main </div>
    
    <div class="grid__column grid__column--3 "  style="margin-left:1em" >aside </div>
</div>


<div class="grid"  style="background:#fff;margin-top:8px;" >
    <div class="grid   grid--justify-start"> 
          <div class="grid__column grid__column--4   ">main </div>
     </div>
    
    <div class="grid grid--justify-end"    > 
        <div class="grid__column grid__column--4   " >aside </div>
     </div>
</div>



</div></body></html>

Correctly adding unit to number [tentcss/src/02_tools/_scaling.scss]

Currently rem and em functions are returning a string, because the unit is incorrectly appended.
See: https://css-tricks.com/snippets/sass/correctly-adding-unit-number/

$return: append($return, ($val / $root + rem));
} @else {
$return: append($return, ($val * $root + px));

 	$return: append($return, ($val / $root + rem)); 
 } @else { 
 	$return: append($return, ($val * $root + px)); 

$return: append($return, ($val / $root + em));
} @else {
$return: append($return, ($val * $root + px));

 	$return: append($return, ($val / $root + em)); 
 } @else { 
 	$return: append($return, ($val * $root + px)); 

Verify font sizes on common viewports.

As reported, some fonts are not displaying normally on smaller viewports. The framework relies on system fonts this needs to be verified on multiple viewports and browsers and normalized for the default fonts.

Consistent naming conventions for null modifiers

Currently the list object has a modifier entitled .list--nulled while there are standalone utilities entitled .padding-null and .margin-null. This was a slight oversight during the initial development and release of the framework. My plan is to phase out .padding-null and .margin-null and replace them with .padding-nulled and .margin-nulled. The past-tense "nulled" seems more appropriate as these are classes in which an action has been taken place.

I'll leave this one open for a while for feedback, otherwise will be moving forward with having this is as a core highlight of v1.4.0.

Lighten hovering colors (of buttons, etc.) when parent got `inverse` class

Currently, when we use a dark background and the .inverse class on an element, it makes the text lighter, to be more visible. That's great.
However, if there is a link in this text, its color left unchanged, both normal and hovered. This results in a darker link when hovering it, making it less bright, and less visible. Same happens with buttons.

I think it would be worth a thing to inverse hover colors as well as normal ones, when using .inverse class. I mean, make the links and buttons brighter when hovering them, instead of darker like currently.

Thanks!

Add responsive and visibility helper classes

Currently the distribution file, tent.min.css weighs in at 3.7kb gzipped. I am fine with the file growing in size as long as it stays under 5kb gzipped and the inclusions make sense for the overall goals of the framework. The framework will not grow much in size to allow for "pretty" components anyways. So I believe it is advantageous to include many more responsive and visibility classes based around the common breakpoints.

So far I am thinking of general show and hide classes based around the media query breakpoints we currently have defined. These classes could be applied to any element that you'd like to have act different on a certain breakpoint or set of breakpoints.

We already have responsive utilities for flex ordering, so we're set there. What may need to happen is improved documentation that .flex-first--#BP can be used in combination with the grid rather than created repeated classes such as .grid-first--#BP

Any other responsive utility classes feedback is welcome!

Dynamic space classes

In some files we have some repetitive space classes like in the _margin.scss :

    &-xxxs { margin: rem($space-xxxs); }
    &-xxs { margin: rem($space-xxs); }
    &-xs { margin: rem($space-xs); }
    &-sm { margin: rem($space-sm); }
    &-md { margin: rem($space-md); }
    &-lg { margin: rem($space-lg); }
    &-xl { margin: rem($space-xl); }
    &-xxl { margin: rem($space-xxl); }
    &-xxxl { margin: rem($space-xxxl); }

I want to add some loops to avoid it and make the code more maintainable, it will look like this :

_variables-defaults.scss

$spaces: (
  xxxs: $space-xxxs,
  xxs: $space-xxs,
  xs: $space-xs,
  sm: $space-sm,
  md: $space-md,
  lg: $space-lg,
  xl: $space-xl,
  xxl: $space-xxl,
  xxxl: $space-xxxl
);

_margin.scss

@each $space, $margin in $spaces {
    &-#{$space} {
        margin: rem($margin);
    }
}

What do you think about it ?

Math in breakpoint-max mixin no longer working in newer version of Sass

After recently upgrading to gulp-sass 3.2.1 which uses node-sass 4.8.3, the math to subtract 1px no longer works leaving me things like:

max-width(48em - 0.0625em) in the processed CSS which does not work in the browser.

As a workaround I had to remove the px to em conversion for that 1px and for each breakpoint size.
Could be related to #28, but I tried some of the suggested methods and it still wasn't working.

$val: #{map-get($breakpoints, $breakpoint)} - em(1px);

Level / Shelf object for dynamic navigation sets

A new object is in the works for v1.5.x surrounding the idea of levels and shelves. Basically the object is for a grouping of items that will sit flush on a horizontal level together. I am proposing this object be referred to as shelves, singular as a .shelf.

The shelf object would extend the current flex object for the best display possibilities. The grid object would best be used inside shelf because of the current breakpoint classes. This would also help reduce any potential bloat or unneeded redundancies.

The object would be as design-free as possible and only contain properties necessary to develop the core layout.

Basic Examples:

[Logo]        X | X | X | X
----------------------------

[Logo]  X     X | X | X | X
----------------------------

    X | X  [Logo]  X | X
----------------------------

  [Logo] | [Logo] | [Logo]
----------------------------

Theoretically this can be done right now with Tent CSS v1.3.2. Only a little leg work would be necessary. However I imagine for many, having a dedicated object with predefined layout objects would help reduce development time.

Is it possible to use vertical grid ?

Hi,

I would like to use grid with this structure

+-----------+-----------+
+           +           +
+-----------+           +
+           +           +
+-----------+           +
+           +           +
+-----------+-----------+

Is it possible soon to use vertical grid without neested multiple grid?

Thanks

[REQ] Offline Documentation

some people are not free to use the internet so to learn this css framework with offline documentation is very helpful.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.