1.8.11 • Published 1 year ago

gfw-components v1.8.11

Weekly downloads
99
License
MIT
Repository
github
Last release
1 year ago

GFW components

A React component library for the Global Forest Watch project built with Emotion CSS in JS styled components. All features have support for Server Side Rendering (SSR), the latest two versions of evergreen browsers and IE>=11. All designs for these components are based on the Global Forest Watch UI kit.

Installation

The library can be installed in two ways:

1. As a module

Install the package

npm install gfw-components

or with yarn

yarn add gfw-components

import and add the global styles component to the root of your app

import React from "react"

import { GlobalStyles } from 'gfw-components';

export const App = () => (
  <>
    <GlobalStyles />
    <Main />
  </>
);

add the font to your html document

<link href="https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500;1,600&display=swap" rel="stylesheet">

then import components and add them to your layout

import React from "react"

import { Header, Footer } from 'gfw-components';

export const MyPage = () => (
  <div className="l-page">
    <Header />
    <div className="content">
      <h1>My page</h1>
    </div>
    <Footer />
  </div>
);

Requirements

If you are using gfw-components as a npm module there are some external requirments:

  • react >= 16.8
  • react-dom >= 16.8

2. As a static script

The static build serves as a minimum requirement for the library providing only the global styles, header, footer, and contact us modal such that is can be injected into your site without the need for a react application. The bundle is passed through the same webpack production environment build to optimize for performance and minimization.

Add the following script tag and font to the head of your app.

<script type="text/javascript" src="https://gfw-assets.s3.amazonaws.com/static/gfw-assets.latest.js" preconnect></script>
<link href="https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500;1,600&display=swap" rel="stylesheet">

And then place inside the html docment tags with the following ids:

<!-- place where you want the header -->
<div id="headerGfw"></div>
<!-- place where you want the footer -->
<div id="footerGfw"></div>
<!-- place at the bottom of your html document -->
<div id="contactGfw"></div>

You can pass props to the <Header /> using the window

window.gfwHeader = {
  languages,
  afterLangSelect,
  customLogo
}

Development

Once you have cloned the repo, install the dependancies and start the styleguide.

yarn && yarn start

If you are using yarn link to develop with the component directly inside your app you can use the development of the bundle. This comes with source maps to help with debugging.

yarn dev

Deployment

To deploy a new version of the library follow these steps:

  1. Semver from master locally and follow the bash intructions for documenting the release.
yarn release [major|minor|patch]
  1. Deploy the new released version to Github pages (styleguide) and to AWS bucket (static scripts).
yarn deploy

NOTE: for AWS you will need to have the creds present in your .env file.

i18n

The <Header /> comes with a default language dropdown component with built in support for Transifex or your choice of translation method. To use the default language selector make sure you add the Transifex Live snippets to the head of your site. If you are using the static script you must add the Transifex script to translate your site.

1.8.11

1 year ago

1.8.9

1 year ago

1.8.10

1 year ago

1.8.8

1 year ago

1.8.7

1 year ago

1.8.6

1 year ago

1.8.5

2 years ago

1.8.4

2 years ago

1.8.3

2 years ago

1.7.11

2 years ago

1.7.8

2 years ago

1.7.7

3 years ago

1.7.6

3 years ago

1.7.4

3 years ago

1.7.3

3 years ago

1.7.1

3 years ago

1.7.0

3 years ago

1.6.16

3 years ago

1.6.15

3 years ago

1.6.14

3 years ago

1.6.13

3 years ago

1.6.12

3 years ago

1.6.10

3 years ago

1.6.9

3 years ago

1.6.8

3 years ago

1.6.6

3 years ago

1.6.7

3 years ago

1.6.5

3 years ago

1.6.4

4 years ago

1.6.3

4 years ago

1.6.2

4 years ago

1.6.1

4 years ago

1.6.0

4 years ago

1.5.2

4 years ago

1.5.1

4 years ago

1.5.0

4 years ago

1.4.2

4 years ago

1.4.1

4 years ago

1.4.0

4 years ago

1.3.11

4 years ago

1.3.10

4 years ago

1.3.9

4 years ago

1.3.8

4 years ago

1.3.7

4 years ago

1.3.6

4 years ago

1.3.5

4 years ago

1.3.4

4 years ago

1.3.3

4 years ago

1.3.2

4 years ago

1.3.1

4 years ago

1.3.0

4 years ago

1.2.8

4 years ago

1.2.9

4 years ago

1.2.7

4 years ago

1.2.5

4 years ago

1.2.4

4 years ago

1.2.2

4 years ago

1.2.1

4 years ago

1.2.0

4 years ago

1.1.0

4 years ago

1.0.1

4 years ago

0.5.2

4 years ago

0.5.1

4 years ago

0.5.0

4 years ago

0.4.0

4 years ago

0.3.0

4 years ago

0.2.17

4 years ago

0.2.16

4 years ago

0.2.15

4 years ago

0.2.14

4 years ago

0.2.13

4 years ago

0.2.12

4 years ago

0.2.11

4 years ago

0.2.10

4 years ago

0.2.9

4 years ago

0.2.8

4 years ago

0.2.7

4 years ago

0.2.6

4 years ago

0.2.4

4 years ago

0.2.3

4 years ago

0.2.0

4 years ago

0.1.0

4 years ago