All Projects → NevinhaJS → nevinha-js

NevinhaJS / nevinha-js

Licence: MIT License
More than just framework... A component framework to make the web animations development easier

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to nevinha-js

solar-components
Web Components Implementation of Solar Design System
Stars: ✭ 16 (-36%)
Mutual labels:  webcomponents
operationcode-pybot
Operation Code's Official Slackbot
Stars: ✭ 29 (+16%)
Mutual labels:  hacktoberfest2018
css-toggle-component
Pure CSS Toggle Buttons as a Web component
Stars: ✭ 69 (+176%)
Mutual labels:  webcomponents
starter-simba
Lion-based Design System
Stars: ✭ 18 (-28%)
Mutual labels:  webcomponents
vite-plugin-sloth
Fresh take on static site generation, using HTML-first approach to build website. Powered by ⚡️ Vite
Stars: ✭ 39 (+56%)
Mutual labels:  webcomponents
cwco
Powerful and Fast Web Component Library with a Simple API
Stars: ✭ 27 (+8%)
Mutual labels:  webcomponents
capacitor-vue-ionicv4-app
sample app using capacitor vuejs and ionicv4 components
Stars: ✭ 70 (+180%)
Mutual labels:  webcomponents
micro-frontends-demo
Demo of a micro frontend approach with Web Components. From CodeOne 2019 presentation: Micro Front Ends: Breaking Up the Front-End Monolith
Stars: ✭ 24 (-4%)
Mutual labels:  webcomponents
vaadin-checkbox
The Web Component for customized checkboxes. Part of the Vaadin components.
Stars: ✭ 18 (-28%)
Mutual labels:  webcomponents
dom-repeat-n
[Polymer 1.x] A template element that repeat n times its content.
Stars: ✭ 20 (-20%)
Mutual labels:  webcomponents
domy
Custom Elements Storage
Stars: ✭ 77 (+208%)
Mutual labels:  webcomponents
fritz
Take your UI off the main thread
Stars: ✭ 39 (+56%)
Mutual labels:  webcomponents
custom-elements-manifest
Custom Elements Manifest is a file format that describes custom elements in your project.
Stars: ✭ 81 (+224%)
Mutual labels:  webcomponents
vaadin-split-layout
The Web Component which allows you to partition a layout into resizeable areas. Part of the Vaadin components.
Stars: ✭ 40 (+60%)
Mutual labels:  webcomponents
Demo-Portfolio-Website
A very simple portfolio website where you can find explanation to every line of code.
Stars: ✭ 59 (+136%)
Mutual labels:  hacktoberfest2018
The-HTML-and-CSS-Workshop
A New, Interactive Approach to Learning HTML and CSS
Stars: ✭ 65 (+160%)
Mutual labels:  webcomponents
greenwood
Greenwood is your workbench for the web, focused on supporting modern web standards and development to help you create your next project.
Stars: ✭ 48 (+92%)
Mutual labels:  webcomponents
vue3-spring
A spring-physics based animation library, and more
Stars: ✭ 30 (+20%)
Mutual labels:  animation-components
base-starter-angular
Base Starter for Vaadin components with Angular
Stars: ✭ 13 (-48%)
Mutual labels:  webcomponents
prettier-webpack-plugin
Process your Webpack dependencies with Prettier
Stars: ✭ 47 (+88%)
Mutual labels:  hacktoberfest2018

NevinhaJS

What's NevinhaJS?

A component render as React that goes beyond static methods and component lifecycles, including state, props and improving the way you make meaningful animations, providing an amazing experience.

🚨 Importants Notes

  • NevinhaJS uses the virtual DOM as base of their diff.
  • NevinhaJS uses CSS Typed OM API, which improves arround 30% the performance of your browser's css manipulations. You can learn more in this google article

Actually, we're implementing new features and animations to make this framework more powerful and sexy for your projects.

GitHub last commit GitHub last commit License

Quickly create components for motion animation.

🤔 What's Missing?

  • Web Animations API
  • Parallax animations
  • Include All Animations CSS3
  • Unit tests
  • Pre-commit tasks
  • ...

Table of Contents

Install

We'll put NevinhaJS in NPM as soon as possible.

Usage

With a bundler like rollup or webpack, use:

// using ES6 modules
import {NevinhaComponent, render} from 'nevinha-js';

class App extends NevinhaComponent {
  constructor(){
    super();
    this.state.name = "NevinhaJS"
  }

  customEvent(){
    console.log('this is a custom event')
  }

  render() {
    const {name} = this.state;
    const {customEvent} = this.props;

    return (
      <div>
          <SomeNevinhaComponent />

          <AnotherComponent>
            <p>Don't forget to declare this component, because it wasn't declared yet</p>
          </AnotherComponent>

          // Yeah it has some effects inside our architecture,
          // you just need to call the effect name  😉
          <h1 fadeIn>
            <p>Hello! This is the new: {name}</p>
            {name}
          </h1>

          <AnotherComponentWithProps myEvent={customEvent} myProp="anything" />
      </div>
    );
  }
}

You can learn more about how to use NevinhaJs in the NevinhaJs Examples repo

We're taking special care with browser animation performance. We're always following google developer's documentation and developers group to ensure performance compatibility

Contributing

First of all, thank you for your contribution. If you want to contribute, feel free to search for open issues or our project roadmap, we have a lot of work to do, and of course we'll need you.

Reporting Issues

Did you find a problem? Do you want a new feature? First check if your problem or idea has been reported. If there is a new question, please be clear and descriptive.

🚨 Check issue open and closed.

Submitting pull requests

Make sure your pull requests are within scope and that you follow the project assumptions.

🚨 Submit your pull solipsies with tests if necessary.

  • Fork it!
  • Clone your fork: git clone https://github.com/<your-username>/NevinhaJS
  • Navigate to the newly cloned directory: cd NevinhaJS
  • Create a new branch for the new feature: git checkout -b new-feature
  • Install the tools necessary for development: yarn
  • Make your changes.
  • yarn run build to verify your change doesn't increase output size.
  • Commit your changes: git commit -am 'Add new feature'
  • Push to the branch: git push origin new-feature
  • Submit a pull request with full remarks documenting your changes.

License

MIT License © NevinhaJS

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].