GithubHelp home page GithubHelp logo

zeva-ui / zeva Goto Github PK

View Code? Open in Web Editor NEW
62.0 4.0 8.0 734 KB

a modern and minimalist ui framework for building responsive and modern frontends

Home Page: https://zeva-ui.github.io

License: MIT License

CSS 74.75% JavaScript 25.25%
ui-components ui-framework framework css-frame css html minimalist modern scss

zeva's Introduction

Zeva logo

Zeva

A modern and minimalist framework for building responsive and modern frontend
Explore Zeva docs »

Report bug · Request feature

Version License: MIT Discord

Table of contents

Getting Started

Introduction

Get started with zeva, a modern and minimalist framework for building responsive and modern front ends. Below are different ways of using zeva on your project:

  1. Download the zip file from here
  2. Clone it from here
  3. Use one of our two CDN links:
  4. npm i zeva (coming soon)
  5. yarn add zeva (coming soon)
  6. bower install zeva (coming soon)

Content

Within the downloaded file you'll find the following directories and files, logically grouping common assets and providing both compiled and minified variations:

zeva/
└── dist/
    └── css/
        ├── zeva.css
        ├── zeva.css.map
        ├── zeva.min.css
        └── zeva.min.css.map
    └── js/
        └── index.min.js

Theming:

Zeva Theming helps you Customize Zeva for changing the overall look of your Project. Light Theme

<body class="body-light">

Custom Theme

<body class="body --bg-{your background color here} --text-{your main text color here}">

Responsive

Include this <meta> tag inside <head> before stylesheet link to ensure proper rendering and touch zooming for all devices.

<meta name="viewport" content="width=device-width, initial-scale=1.0">

Usage:

CDN Usage

Include the stylesheet <link> inside <head>, same for other cdn links too

<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/zeva-ui/zeva/dist/css/zeva.css">

<!-- Or you could try to use the minified version -->

<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/zeva-ui/zeva/dist/css/zeva.min.css">

Zip Usage: CSS files

  1. Unzip the file wherever you want;
  2. Go to dist/css/;
  3. Import/Copy either the regular or minified CSS file.
<link rel="stylesheet" href="./dist/css/zeva.css">

<!-- Or you could try to use the minified version -->

<link rel="stylesheet" href="./dist/css/zeva.min.css">

Zip Usage: Sass files

Before anything, you should import our variables. To do so, follow these steps:

  1. Unzip the .zip wherever you want;
  2. Go to src/scss/;
  3. Import ./abstracts/variables/variables to the top of your main Sass file. Always remember to import variables, before anything!

Now, you're free to import any .scss file that you need.

// Zeva's required files
@import './abstracts/variables/variables';

// Chosen components
@import './components/button',
        './components/form',
        './components/table';

Zip Usage: JS file

  1. Unzip the files
  2. Go to dist/js/
  3. Import/Copy the minified js file to your working directory
<script type="text/javascript" src="index.min.js"></script>

Theming Usage

Include the <script> tag after all the content inside <body>

<script type="text/javascript" src="https://cdn.jsdelivr.net/gh/zeva-ui/zeva/dist/js/index.min.js"></script>

Include this for using icons

Icons provided by fontawesome

<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">

Styling

Typography

We use Poppins as font-family, made by ITF on Google fonts

    <a>link</a>
    <i>italic</i>
    <b>bold</b>
    <u>underline</u>
    <strike>strike</strike>
    <small>small</small>
    <sup>superscript</sup>
    <sub>subscript</sub>

    <h1>This is a heading</h1>
    <h2>This is a heading</h2>
    <h3>This is a heading</h3>
    <h4>This is a heading</h4>
    <h5>This is a heading</h5>
    <h6>This is a heading</h6>

Font size

Zeva uses "rem" unit for font-size, it's relative to font-size of the root element.

$font-size: 1rem; /* normal font */
$font-size-small: 0.8rem; /* smaller font */
$font-size-big: 1.2rem;  /* bigger font */

Components

Helpers

Helpers make it easy to customize components as per your needs. Helpers can be used with mostly all components. The 'h' prefix, in the class names of helpers, means 'helper'.

.h-border-all - Creates a border around a component .h-border-pill - Used for rounded borders .h-border-bottom - Creates a border but only on bottom .h-display-block - Displays a component as a block element (like <p>). .h-text-right - Aligns the text to right .h-text-center - Aligns the text to Center .h-width-full - Sets a component width to 100% of it's parent .h-weight-bold - Changes font weight to bold

Buttons

Different button styles

<button class="button">simple button</button>
<button class="button button--filled">filled button</button>
<button class="button h-border-pill">rounded button</button>
<button class="button h-border-pill button--filled">rounded filled button</button>

Button Sizes

<button class="button -size-small">small button</button>
<button class="button">normal button</button>
<button class="button -size-large">large button</button>

Button Theme

<button class="button -theme-danger">danger button</button>
<button class="button -theme-warn h-border-pill">warn button rounded</button>
<button class="button button--filled -theme-success">success button filled</button>

Button with Icons

<button class="button">Search &nbsp; <i class="fas fa-search"></i></button>
<button class="button -h-border-pill button--filled">Download &nbsp; <i class="fas fa-download"></i></button>
<button class="button -theme-danger -h-border-pill"><i class="fas fa-skull-crossbones"></i> &nbsp; Danger </button>

Tables

Simple Table

<table class="table">
    <thead>
        <tr>
            <th>First Name</th>
            <th>Last Name</th>
            <th>Age</th>
            <th>Country</th>
        </tr>
    </thead>
    <tbody>
    <tr>
        <td>Elon</td>
        <td>Musk</td>
        <td>47</td>
        <td>South Africa, Canada, America</td>
    </tr>
    <tr>
        <td>Mark</td>
        <td>Zuckerberg</td>
        <td>34</td>
        <td>America</td>
    </tr>
    </tbody>
</table>

Filled Table with border on bottom of <td> tag

<table class="table">
    <thead class="table__head--filled">
        <tr>
            <th>First Name</th>
            <th>Last Name</th>
            <th>Age</th>
            <th>Country</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Elon</td>
            <td>Musk</td>
            <td>47</td>
            <td>South Africa, Canada, America</td>
        </tr>
        <tr>
            <td>Mark</td>
            <td>Zuckerberg</td>
            <td>34</td>
            <td>America</td>
        </tr>
    </tbody>
</table>

Forms

Input fields

<input type="text" class="input" placeholder="default input field">
<input type="text" class="input" placeholder="another default input field">
<input type="text" class="input h-width-full" placeholder="full-width input field">
<input type="text" class="input h-width-full h-border-all" placeholder="full-width bordered input field">
<input type="text" class="input h-width-full h-weight-bold" placeholder="full-width bold input field">
<input type="text" class="input h-width-full h-weight-bold h-border-pill input--filled" placeholder="full-width bold rounded filled input field">
<input type="text" class="input h-weight-bold h-border-pill h-border-all" placeholder="bold rounded bordered input field">
<input type="text" class="input h-border-pill input--filled" placeholder="rounded filled input field">

Textarea

<textarea class="input" placeholder="this is a textarea">
<textarea class="input h-width-full" placeholder="this is another textarea but longer">

Tip: You can apply all the classes on a textarea applied on input field.

Radio Buttons

<label class="label">Radio button
    <input type="radio" name="radio">
    <span class="radio"></span>
</label>
<label class="label">another radio button
    <input type="radio" name="radio">
    <span class="radio"></span>
</label>
<label class="label">disabled radio button
    <input type="radio" name="radio" disabled>
    <span class="radio"></span>
</label>

Checkboxes

<label class="label">A checkbox
        <input type="checkbox">
        <span class="checkbox"></span>
    </label>
    <label class="label">Another checkbox but checked
        <input type="checkbox" checked>
        <span class="checkbox"></span>
</label>
<label class="label">Disabled checkbox
        <input type="checkbox" disabled>
        <span class="checkbox"></span>
</label>

Select

<select class="input h-weight-bold">
    <option>option one</option>
    <option>option two</option>
    <option>option three</option>
    <option>option four</option>
</select>

<select class="input h-weight-bold h-width-full">
    <option>option one</option>
    <option>option two</option>
    <option>option three<option>
    <option>option four</option>
</select>

more components coming soon...

Bugs and feature requests

Have a bug or a feature request? Please first read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

Contributing

Please read through our contributing guidelines. Included are directions for opening issues, coding standards, and notes on development.

All HTML and CSS should conform to the Code Guide, maintained by Mark Otto.

Editor preferences are available in the editor config for easy use in common text editors. Read more and download plugins at https://editorconfig.org/.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Core Team

imfunny jlammer Kvanrooyen
imfunny jlammer Kvanrooyen

Thanks

zeva's People

Contributors

bojangabric avatar dependabot[bot] avatar hunkjazz avatar imfunniee avatar kvanrooyen avatar oliver-gomes 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

Watchers

 avatar  avatar  avatar  avatar

zeva's Issues

landing page

Newcomers need to be convinced that the framework is worth trying, before going to the docs. For this purpose, we need a beautiful landing page that emphasize Zeva's good attributes.

Navigation styling

Hi All, looking at using this for funzies on a small project, but noticed navigational styling css was/is missing, So I took a look at the source for the documentation and there was tables and iframes and what not, so I was unsure as to whether navigational styling had been implemented properly yet.

I'd like to pull this and work on some nav features that adhere to the styling found in the docs, Thoughts?

animations

It is important to support users with default animations, so they won't need to bother with it.

Although, I should note that this feature must be optional, so users can choose to use it or not by toggling a Sass variable value.

discord server

Gotta discuss creating a discord server for the community.

Responsive Units are not used

For a responsive website, the unit's shouldn't be hard-coded with px. Instead, you should be using em and rem in conjuncture with a root font-size.
image

editorconfig file

By using this file in the repo root, we are able to tell Github the proper identation for commit reviews.

contributing guide

Although we do have one, it is still too poor. This guide should have sections for PR branch, identation and other good practices that ensure consistency.

improve repo meta-tags

The repo meta-tags are still poor.

We could improve that inserting stuff like: "minimalist".

implement BEM

We need consistency for everything we develop. A community well known naming system is the key for making newcomers happy.

changelog file

It is important to provide the users an easy way to know what is happening.

zeva prefix

Creating a custom prefix for class names would avoid conflicts with users code.

Prefixes examples:

  • zv-block--element__modifier;
  • zeva-block--element__modifier.

Typo

image

it shows deafult instead of default

-- Perfection needed

docs

A documentation page to help users understand components usage, Sass customization, CDN, file ordering, brand guidelines, etc.

update CDN file

After the building system development, the project structure is different. Plus: modifications were made to Sass code, so files are now different and CDN must be updated.

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.