Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/richardzcode/a-theme-react
AWS Amplify themes for React
https://github.com/richardzcode/a-theme-react
Last synced: about 1 month ago
JSON representation
AWS Amplify themes for React
- Host: GitHub
- URL: https://github.com/richardzcode/a-theme-react
- Owner: richardzcode
- License: mit
- Created: 2017-12-01T05:09:59.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2017-12-03T07:28:20.000Z (about 7 years ago)
- Last Synced: 2024-10-05T18:05:59.739Z (3 months ago)
- Language: JavaScript
- Size: 1.59 MB
- Stars: 21
- Watchers: 3
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# A Theme React
AWS Amplify UI is theme based. Developers are able to customize UI with theme.
Here we build alternative themes for AWS Amplify.
* [Install](#install)
* [Apply](#apply)
* [Themes](#themes)
- [Bootstrap](#bootstrap)
- [Instagram](#instagram)
* [Example](#example)## Install
```
npm install --save a-theme-react
```## Apply
AWS Amplify UI is theme
```
import { Bootstrap } from 'a-theme-react';```
## Themes
### Bootstrap
A theme base on default Bootstrap theme CSS.
```
import { Bootstrap } from 'a-theme-react';```
**FontAwsome Icons**
`Bootstrap` theme uses icons from [Font Awesome](http://fontawesome.io/). [react-fontawesome](https://github.com/danawoodman/react-fontawesome) does not include CSS. So you have to include the CSS by yourself. One way is from [CDN](https://www.bootstrapcdn.com/fontawesome/).
For example add this line to HTML file:
``````
The icons won't display without the CSS file. Everything else is not affected.
A theme imitates [Instagram](https://www.instagram.com)
```
import { Instagram } from 'a-theme-react';```
**CSS Pseudo-Elements**
One of the limitation in React inline styling is no pseudo-elements.
Among CSS pseudo-elements, `::before` and `::after` are the two most frequent used. AWS Amplify UI is made to support these two.
Here we take benefit of `before` and `after` to make this theme possible.
Example:
```
const beforeImg = (
)export const FormSection = {
margin: '0 0 10px',
color: '#262626',
backgroundColor: '#fff',
border: '1px solid #e6e6e6',
borderRadius: '1px',
textAlign: 'center',
width: '350px',
display: 'inline-block',
verticalAlign: 'middle',
before: {
content: beforeImg,
display: 'inline-block',
width: '400px',
height: '560px',
verticalAlign: 'middle',
backgroundImage: 'url(' + home_phone + ')',
backgroundSize: '400px 560px'
}
}
```## Example
`example/` folder is a basic React app with theme
```
git clone https://github.com/richardzcode/a-theme-react.git
cd a-theme-react/example
npm install
npm start
```Then copy `aws-exports.js` file to `src/` folder for AWS Amplify to work.
**Other themes**
The example uses `Bootstrap` theme. Modify `src/index.js` for other themes.
```
import { Instagram as theme } from 'a-theme-react'
```