HedgeDoc - Ideas grow better together
Find a file
Philip Molares c410a58573
Add emoji picker (#329)
* Added emoji-mart as emoji-picker
* Fixed JSON to TypeScript-object parsing
* added fork awesome to emoji-picker
added ForkAwesomeIcons enum, because it's not possible to iterate over a typescript type consisting of strings [1]. This is a bit unfortunate since we now have two lists of all the fork awesome icons, but sadly it can not be done another way.
added fork awesome as a custom category to the emoji picker.

[1]: https://stackoverflow.com/questions/40863488/how-to-iterate-over-a-custom-literal-type-in-typescript
* made picker close, when clicking away
added react-use dependency for useClickAway hook
* Fixed emoji-picker loading images from unpkg instead of using font
* fixed addEmoji function
added tests
* Extract customIcons into useMemo

Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
Co-authored-by: Erik Michelson <github@erik.michelson.eu>
Co-authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
2020-08-07 18:54:37 +02:00
.github Update dependency cypress to v4.11.0 (#340) 2020-07-25 13:59:56 +02:00
.idea/dictionaries Add codimd to jetbrains dictionary (#235) 2020-06-20 16:47:30 +02:00
cypress rework how the frontend is started (#361) 2020-07-29 22:58:01 +02:00
icon Replace react icon with default codimd icon 2020-05-31 19:17:24 +02:00
public Add emoji picker (#329) 2020-08-07 18:54:37 +02:00
src Add emoji picker (#329) 2020-08-07 18:54:37 +02:00
.editorconfig better linting (#72) 2020-05-27 15:43:28 +02:00
.gitignore Add .idea directory to .gitignore (#362) 2020-07-28 22:21:42 +02:00
CHANGELOG.md Add emoji picker (#329) 2020-08-07 18:54:37 +02:00
cypress.json rework how the frontend is started (#361) 2020-07-29 22:58:01 +02:00
LICENSE Add AGPL 3.0 2020-05-26 17:19:37 +02:00
package.json Add emoji picker (#329) 2020-08-07 18:54:37 +02:00
README.md Minor README improvements (#382) 2020-08-04 21:29:17 +02:00
renovate.json Add automerge config to renovatebot 2020-08-01 15:49:41 +02:00
tsconfig.json imported current state of the mockup into the public repo 2020-05-14 15:41:38 +02:00
yarn.lock Add emoji picker (#329) 2020-08-07 18:54:37 +02:00

CodiMD - React Client

lint and build e2e

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

Preparation

You'll need at least Node 10 (we recommend 12). We use yarn for our dependencies.

Development mode

  1. Clone this repo (e.g. git clone https://github.com/codimd/react-client.git codimd-react-client)
  2. Go inside the repo (e.g. cd codimd-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

Production mode

  1. Clone this repo (e.g. git clone https://github.com/codimd/react-client.git codimd-react-client)
  2. Go inside the repo (e.g. cd codimd-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.