plone/plone-react

Name: plone-react

Owner: Plone Foundation

Description: React-based front-end for plone.restapi

Created: 2016-05-15 15:29:14.0

Updated: 2018-04-02 18:24:57.0

Pushed: 2018-04-02 18:24:56.0

Homepage:

Size: 4108

Language: Jupyter Notebook

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Plone in React

Build Status Coverage Dependencies Dev Dependencies NPM

Installation
Prerequisites
Install dependencies
$ yarn
Install backend
$ cd api
$ ./bootstrap.sh
Development
Run backend
$ cd api
$ ./bin/instance fg

or

$ docker-compose -f api/docker-compose.yml up
Run frontend
$ yarn dev
Browsing

Go to http://localhost:4300 in your browser.

Testing
$ yarn test
Acceptance testing
$ make test-acceptance

Alternatively individual acceptances test case files can be run with a pure Robot Framework virtual environment, assuming that backend and frontend is running

$ docker-compose -f api/docker-compose.yml up
$ yarn && yarn build && API_PATH=http://localhost:55001/plone yarn start

$ virtualenv robotenv --no-site-packages
$ robotenv/bin/pip install robotframework robotframework-seleniumlibrary robotframework-webpack
$ robotenv/bin/pybot tests/test_login.robot

Another alternative for developing Robot Framework acceptane tests is to use Jupyter notebook

$ make -C api/jupyter
Static Code Analysis
Prettier

Please refer this link for all usages.

CLI

Run Prettier through the CLI with this script. Run it without any arguments to see the options.

To format a file in-place, use --write. You may want to consider committing your code before doing that, just in case. prettier [opts] [filename ...] In practice, this may look something like:
prettier --single-quote --trailing-comma es5 --write "{app,__{tests,mocks}__}/**/*.js"

Using Plugins

Plugins are automatically loaded if you have them installed in your package.json. Prettier plugin package names must start with @prettier/plugin- or prettier-plugin- to be registered. If the plugin is unable to be found automatically, you can load them with:

  1. The CLI, via the –plugin flag:

prettier --write main.foo --plugin=./foo-plugin

  1. Or the API, via the plugins field:
rser: "foo",
ugins: ["./foo-plugin"]

Pre commit hook

You can use Prettier with a pre-commit tool. This can re-format your files that are marked as “staged” via git add before you commit.

  1. Lint staged Use Case: Useful for when you need to use other tools on top of Prettier (e.g. ESLint)

Install it along with husky:

yarn add lint-staged husky --dev

and add this config to your package.json:


cripts": {
"precommit": "lint-staged"

int-staged": {
"*.{js,json,css,md}": ["prettier --write", "git add"]


  1. Pretty-quick Use Case: Great for when you want an entire file formatting on your changed/staged files.

yarn add pretty-quick husky --dev

and add this config to your package.json:


cripts": {
"precommit": "pretty-quick --staged"


More Precommit hooks can be found here

License

MIT License. Copyrights hold the Plone Foundation. See LICENSE.md for details.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.