Code Monkey home page Code Monkey logo

chopstick-boilerplate's Introduction

Chopstick Boilerplate

By these people

Chopstick Boilerplate creates a structure and gives you the tools that allow you to easily design bespoke web projects.

Chopstick Boilerplate makes use of the Chopstick SCSS framework. It adds tools like Jekyll and Gulp to simplify designing and building in the browser. The boilerplate can be used as a styleguide, to build static websites or to speed up making HTML prototypes.

Need help?

Installation

Requirements

  1. Ruby and rubygems
  2. Node and npm

Automated Installation

Run the following command from the project root:

sh install.sh

This will check if package managers are installed and download required packages for you. If you prefer to install manually, please see manual installation.

Use

Run the following command to load a browsersync server and watch your your files for changes:

gulp watch

More gulp commands are available

SCSS structure.

Project specific code should be written in the components layer. The Chopstick SCSS is maintained in separate repositories which are loaded with npm. We believe these partials should be easy to update and configurable without writing new code.

Read more about partials

Browser support

Chopstick aims to support all modern browsers. This includes latest versions of Chrome, Firefox and Safari and the latest mobile browsers on Android, iPhone and Windows Phone. Internet explorer is currently supported starting from IE10 and up.

Why we make Chopstick framework

  • Maintain sensible defaults
  • Enforce a global coding style
  • Create a scalable system for both small and big web projects

Contributions

You are free to contribute to Chopstick via GitHub Pull Requests. We have a couple of simple guidelines we try to follow, of which most are taken from the CSS Tricks Sass Style Guide. Please refer to the CONTRIBUTING.md for more information

chopstick-boilerplate's People

Contributors

adeggermont avatar dietr avatar driesstandaert avatar fspin avatar herpoelaertw avatar jessedobbelaere avatar jnnck avatar jonasdegeest avatar jonathandcstr avatar simoncoudeville avatar woutersioen avatar xavez avatar zofie 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  avatar  avatar

chopstick-boilerplate's Issues

.holder for most of background color?

Just found out about Chopstick in Responsive Design Weekly, and I'm tempted to try. Beginner of everything web here, so sorry for the question.

I saw the example of Chopstick and the default theme of the SCSS file, and spotted a background-color on the html which is not the primary background color. Why does the primary color get moved to .holder?

Move all media queries to inline media queries

In stead of having all the media queries at the bottom of the file, we need to use inline media queries so they appear in a more logical place.

Preferably, we use the @include mq($bpn) mixin for all media queries.

Rename repository

I feel we should rename this repo from chopstick-demo to something more suiting now that we still can: chopstick-skeleton, chopstick-boilerplate or chopstick-styleguide would all make more sense I think :).

Anyone else has any suggestion?

Jekyll US-ASCII

Unable to build with Jekyll.
Keep getting error:
Liquid Exception: invalid byte sequence in US-ASCII in grid.html

Jekyll version
jekyll 1.2.1
Ruby version
2.0.0

Meetup?

How about nailing a date and discuss new goals?

Improve first-run experience

Improve first-run experience by making sure a screen.css file is generated on the first install/run of Chopstick.

Create list pattern

A pattern for a navigation list = a vertical list of links with dividers.

Idea: add colours

Maybe we can add more colour variables in a _colours.scss file? We can work with smart defaults like: http://clrs.cc. Could be useful for quickly prototyping things with a nicer colour palette?

Just a brainfart :).

grey-scale of your alpha-ui-color

Should I add this to the color settings?

$grey-00 : hsl(hue($alpha-ui-color),10,45);
$grey-01 : hsl(hue($alpha-ui-color),10,55);
$grey-02 : hsl(hue($alpha-ui-color),15,65);
$grey-03 : hsl(hue($alpha-ui-color),15,75);
$grey-04 : hsl(hue($alpha-ui-color),15,85);
$grey-05 : hsl(hue($alpha-ui-color),25,95);

Create more elaborate pattern for forms

I think we need to cover some more complex form cases as well, such as inline forms.

  • Simple form: basic comment style form > e-mail, name, comment, opt-in, submit
  • Advanced form: multiple fieldsets > select, radiobutton, date picker, number, ... , submit
  • Inline forms: multiple examples of inline form elements > radiobuttons, select, text, …

Gemfile ruby version error with bundler install

If your Ruby version is different then the one specified in the gemfile. Bundle install returns an error. It's easily fixed when you change the version in the gemfile. Is there a way this error can be avoided?

Use gulp as the build system?

We are using gulp for some time now and it seems like a more flexible solution for generating our scss, javascript, etc.

I'm open to discuss the pro's and con's.

Extending _media.scss to a more generic _objects.scss

Maybe it's a good idea to extend the current media.scss file to a more generic objects.scss? I am thinking more modular layout classes like holders, inline-listing options, reverse floating, islands, ... being placed there . Maybe we should introduce the naming method described in SMACCS for these things? For example .l-float-rev and so on ...

Comprehensive prototyping components

I am missing some essential components while prototyping. For example, modal windows, a good tabs component, ... . Should we choose to keep Chopstick as a base and combine it with Bootstrap? Or should we create our own components which we could implement separatly from core?

Git subtree replacement?

The git subtree system is not working properly or is too difficult to maintain. This causes some difficulties to keep chopstick in sync with potnoodle.

I like the use of bower in the new version of Inuit CSS. This means splitting our functions and patterns into separate repositories and then loading them into the boilerplate and potnoodle with bower.

Any other ideas on changing or fixing this system?

Scales for everything

This probably needs to be split up into multiple issues, but it would be nice to have scales for:

We would preferably decide on:

  • What kind of system/terminology will we use for the scales? Simple example: $color, $color-dark, $color-darker or something more generic like $color-alpha, $color-beta . . .
  • Can we automate all those scales by default and allow a user to override them?
  • . . .

Use single line comments as file heading

I understand that it's no primary goal of Sass to generate readable css. But I usually compile the css in expanded output style to make it a "little bit" readable for other developers. I noticed that most of the shared Sass files start with a multiline comment on top. But these are mixins, so the only thing that is inserted in order of appearance in the screen.css is the multiline comment. If you open the screen.css, here's what I see:

/*
    Grid
*/
/*
    Typography
*/
/*
    User Interface Elements
*/

Only the comments are inserted because the other content of the file are mostly just mixins. Would it be better to use single line comments for this, because they are omitted in the screen.css? Chopstick uses this notation a lot:

// 
// Title
// 

Use autoprefixer

We can easily integrate autoprefixer (https://github.com/ai/autoprefixer) into Compass. Additionally we could remove all vendor prefixes in our code.

  1. Add autoprefixer to the gemfile
    gem install autoprefixer-rails
  2. Require autoprefixer in compass
require 'autoprefixer-rails'

on_stylesheet_saved do |file|
  css = File.read(file)
  File.open(file, 'w') do |io|
    io << AutoprefixerRails.process(css)
  end
end

Island pattern

A pattern for islands (aka callout aka panel aka wells). Multiple variations based on grey and the brand color.

Hide-text alternative

I never use the hide-text extend because if often doesn't seem to work (strange). I actually replace the hide-text extend with this instead:

%hide-text {
    font: 0/0 serif;
    text-shadow: none;
    color: transparent;
}

After much deliberation over here the people of HTML5 Boilerplate settled on this. So is there a chance that chopstick approves this too?

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.