Skip to content

Instantly share code, notes, and snippets.

@chrisryana
Last active May 27, 2020 18:15
Show Gist options
  • Save chrisryana/531c351d5efbc582edcfef979699ace8 to your computer and use it in GitHub Desktop.
Save chrisryana/531c351d5efbc582edcfef979699ace8 to your computer and use it in GitHub Desktop.
Список библиотек для разработки

Разработка без боли

  • nanoid — генерирует уникальные id, запрещено использовать в keys react (уточнить чем лучше Symbol)
import React, { Component } from 'react';
import nanoid from 'nanoid'

class InputWithLabel extends Component {
  constructor(props){
    super(props)
    this.id = nanoid()
  }
  render() {
    return (
      <div>
        <label htmlFor={this.id}>My label</label>
        <input id={this.id} type="text"/>
      </div>
    );
  }
}

export default InputWithLabel;
  • classnames — для удобного назначения классов
import cn from 'classnames'

cn('menu','active')//'menu active'
let isActive = true
cn('menu',{'active':isActive})//'menu active'
isActive = false
cn('menu',{'active':isActive})//'menu'
  • strapi – cmsка на node.js
  • recompose – библиотека готовых hoc
  • bemto – библиотека готовых миксинов pug для разработки по БЭМ
  • Animate.css – библиотека готовых анимаций
  • Wow.js – библиотека для анимаций при скролле
  • AOS - библиотека для анимаций при скролле
  • utility types - для typescript
  • browserslist
  • autoprefixer
  • detect.js – распарсить браузер
  • object-path – удобная навигация по json с глубокой вложенностью
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment