Code Monkey home page Code Monkey logo

chopchop's People

Contributors

balloz avatar daveredfern avatar ejrowley avatar iweb-p3mbo avatar jakecobley avatar llapgoch 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chopchop's Issues

Integrate docs

We would like to integrate code previews and docs into ChopChop. This is part of the redesigned #1 interface but I have separated it because I suspect it will need larger structural changed behind the scenes.

I see that by integrating docs we now need a new file per pattern. I propose the following structure for each pattern:

pattern-name
pattern-name/pattern.php
pattern-name/docs.md

For example:

// this is default or base
card
card/pattern.php
card/docs.md

// variations live in nested folders
card/bordered
card/bordered/pattern.php
card/bordered/docs.md

I have attached a basic screenshot of the proposed layout.

unspecified

Consider scoping classes

Consider some scope classes for text colours. As defined by Harry Roberts:

s-: Signify that a class creates a new styling context or Scope. Similar to a Theme, but not necessarily cosmetic, these should be used sparingly—they can be open to abuse and lead to poor CSS if not used wisely.

They can be dangerous and should be used sparingly but they are useful. Especially when inverting a section of a website. With headers often applying their own styling and content being managed it can become difficult adding the colour utility classes everywhere. A wholesale change might be good.

Implications to consider:

  • Button styles will get overridden using this. Should buttons be excluded from scope classes?
  • Link styles may be effected.

Worth a discussion @gazjoy. Found them very useful on latest project.

Remove margin bottom on last child inside grid columns

Add the following the grid items to zero the margin on the last item. This will ensure the spacing between the grid items is correct and the margin of elements inside each column doesn't increase it.

.grid > * *:last-child {
margin-bottom:0;
}

This will keep the margin by default on patterns so they space correctly when not used inside a grid.

Output SVG's as separate files

Currently all svgs are combined into one file. It would be good if they were outputted as separate files – one per folder. This will stop the files being so large. The cards are especially big and most the time they're not used.

Remove Ico Moon Premium

We need to swap out the premium icons with the free versions.

Swaps
arrow-down - circle-down
arrow-up - circle-up
arrow-left - circle-left
arrow-right - circle-right
basket - cart
grid - table2

Renames
star - star-full

Different Icons same name
zoom-in
zoom-out
image
search
lock
phone

Rename include files

We have styles.php which is included in the head and scripts.php which is included in the footer.

Maybe they should be renamed so they refer to their location rather than their contents.

For example, Element queries require scripts to be loaded in the head.

Table borders need revising

The borders on tables seem a little messed up. We have thick borders below the heading and below the footer. They should be above the footer though.

image

image

image

image

Remove all references to gitlab

There are lots of references to gitlab in various files and wiki pages. We should go through and remove these since moving to github.

Clean up chopchop interface

We can probably remove cc-box now as we have u-block in the core interface. We can also look at tidying the colours. I know we go in circles but on brand shades of grey would be nice I think.

What do you think @gazjoy ?

Full height utility class

This pattern keeps cropping up. It's where two divs need to stretch to be the full height. Common case is inside grid columns.

image

I suggest a .u-full-height utility that sets flex onto internal items to stretch them correctly. This is the css I have been using:

.u-full-height {
        display: flex;
        flex-flow: wrap;

        > * {
            width: 100%;
        }
}

Investigate the idea of including templates in WordPress

A very high level and fluffy idea, but a working idea nonetheless. The idea of being able to include ChopChop templates into WordPress using this function:

function iweb_get_chopchop_template( $file, $template_args = array() ) {
extract( $template_args );
include( locate_template( $file ) );
}

It's worth investigating the idea that only high level patterns exist once integrated and that maybe templates and organisms should disappear once integrated into platform of choice. This means we can remove the issues of double updating.

Responsive BX Slider

Grab bx responsive from the iweb-jquery repo and make it work with enquire.js

Check grid gutters

@jakecobley mentioned that vertical spacing on gutters might not be working in Edge. We should browser check this and everything else probably ;)

getLink function to link templates together

A getLink function might be nice so we can make the templates feel more like a website. We would be able to link news items to news detail, product items to product detail etc.

What do you think @gazjoy ?

Allow multiple targets with data-cc-target toggles

The ability to pass through multiple targets inside data-cc-target so we're able to activate multiple things with one click. Example usecase:

<a href="#" data-cc-target="item-1,item-2" data-cc-action="activate">Hello, world</a>

<div id="item-1"></div>
<div id="item-2"></div>

Refactor files and php

The functions.php needs an overhaul, its just a dumping ground for everything at the minute and is hard to understand.

Also as part of this we'd like to move these files/directories into the root

html/index.php
html/.htaccess
html/inc

and rename the html directory to pattern.

Ultimately the structure should look like this:

pattern
src
inc
index.php

Rework cards

At the moment cards are very open to interpretation. We need to make encourage them to be styled in a certain way. Any significant deviations from them become there own patterns then.

Tidy Container Classes

Use css contains selector to apply base container classes then append with -* e.g. u-container-sm to reflect container values.

Data Integration

Idea of using a json or yaml file in the repository.

The problem with that approach is that it is not very dynamic and would be hard for a client to update.
An alternative approach is to pull the data in from somewhere and let it be editable, this would involve having a simple service to store and send the data and some javascript in chopchop. The cool part will be that we could store other data to - like annotations.

Investigate vertical spacing on buttons

I am generally noticing they seem to sit a little low when using default fonts. Might be something to investigate. Very noticeable when adding an SVG icon.

image

image

Add section utility

Add a section utility to ensure the spacing between blocks on a website are consistent. It might be nice to try using vw or vh as a measure so it is responsive.

We will need to experiment in Codepen to make sure we get this right. Ideally we want them margins so they overlap correctly.

Improve menu UI

Show the menu to the left without overlaying any other content. Then add an overlay to other content so when you click it automatically closes. Lovely.

Colour vars

@insom do the thing we discussed, splitting on dashes like . u-fill-grey, u-fill-social, u-fill-brand etc.

Add responsive headings

Currently we don't scale headings, we leave it per site. It's hard to get them right so a base to tinker from would be useful.

Add block spacing

Add block spacing, similar to Bootstrap. Basically like section with with left and right padding. Also allows us to have -sm and -lg.

Example:

.block {
padding: 1em;
}
.block-sm {
padding:0.5em;
.block-lg {
padding: 2em;
}

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.