HedgeDoc - Ideas grow better together
Find a file
Erik Michelson 5574f09ef5
Replace emoji-mart with emoji-picker-element (#620)
* Change dependencies

* Use emoji-picker-element instead of emoji-mart

* Optimize emoji-picker appeareance and data-source

* Add twemoji font to emoji-picker

* Add missing useEffect dependency

* Add emoji-shortcode map

* Include emoji-data into bundle and remove dynamic fetch

* Rename shortcode-map

* Fix emoji-picker being hidden on second attempt to open it

* Add support for skin-tone short-codes

* Remove whitespace line

* Don't reinitialize the picker on every open

* Fixed linting and test issues

* Update CHANGELOG entry
2020-10-10 23:12:17 +02:00
.github
.idea/dictionaries
cypress Replace emoji-mart with emoji-picker-element (#620) 2020-10-10 23:12:17 +02:00
icon
public Add access token management to profile (#653) 2020-10-10 11:38:32 +02:00
src Replace emoji-mart with emoji-picker-element (#620) 2020-10-10 23:12:17 +02:00
.editorconfig
.gitignore Fix missed code (#530) 2020-09-02 21:57:31 +02:00
CHANGELOG.md Replace emoji-mart with emoji-picker-element (#620) 2020-10-10 23:12:17 +02:00
CONTRIBUTING.md
craco.config.js Replace emoji-mart with emoji-picker-element (#620) 2020-10-10 23:12:17 +02:00
cypress.json
LICENSE
package.json Replace emoji-mart with emoji-picker-element (#620) 2020-10-10 23:12:17 +02:00
README.md Add webpack-bundle-analyzer as dev-tool (#591) 2020-09-20 23:22:37 +02:00
renovate.json
tsconfig.json
yarn.lock Replace emoji-mart with emoji-picker-element (#620) 2020-10-10 23:12:17 +02:00

HedgeDoc - React Client

test, build e2e lint

This is the new, improved and better looking frontend for HedgeDoc 2.0. Our goal is to recreate the current frontend in react and to improve it.

Preparation

You'll need at least Node 12. We use yarn for our dependencies.

Development mode

  1. Clone this repo (e.g. git clone https://github.com/codimd/react-client.git hedgedoc-react-client)
  2. Go inside the repo (e.g. cd hedgedoc-react-client)
  3. Run yarn install
  4. Either run

This should run the app in the development mode and open http://localhost:3001 in your browser.

The page will reload if you make edits. You will also see any lint errors in the console.

Tests

Unit

Unit testing is done via jest.

  1. Run yarn test

End2End

We use cypress for e2e tests.

  1. Start the frontend with yarn start
  2. Run yarn cy:open to open the cypress test loader
  3. Choose your browser and test
  4. Let the tests run

Bundle analysis

You can inspect the generated production-bundle files to look for optimization issues.

  1. Run yarn analyze
  2. Open the generated build/report.html in your favourite browser

Production mode

  1. Clone this repo (e.g. git clone https://github.com/codimd/react-client.git hedgedoc-react-client)
  2. Go inside the repo (e.g. cd hedgedoc-react-client)
  3. Run yarn install
  4. Run yarn build

Builds the app for production to the build folder. It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include a hash value of the content.