2015-06-10 00:40:42 +08:00
|
|
|
matrix-react-sdk
|
|
|
|
================
|
|
|
|
|
|
|
|
This is a react-based SDK for inserting a Matrix chat client into a web page
|
2015-06-24 23:33:53 +08:00
|
|
|
|
2015-07-03 22:56:04 +08:00
|
|
|
Getting started with the trivial example
|
|
|
|
========================================
|
2015-06-25 00:58:13 +08:00
|
|
|
|
|
|
|
1. Install or update `node.js` so that your `npm` is at least at version `2.0.0`
|
|
|
|
2. Clone the repo: `git clone https://github.com/matrix-org/matrix-react-sdk.git`
|
2015-07-03 22:56:04 +08:00
|
|
|
3. Switch to the example directory: `cd matrix-react-sdk/examples/trivial`
|
|
|
|
4. Install the prerequisites: `npm install`
|
|
|
|
5. Build the example and start a server: `npm start`
|
2015-06-25 00:58:13 +08:00
|
|
|
|
2015-07-03 22:56:04 +08:00
|
|
|
Now open http://127.0.0.1:8080/ in your browser to see your newly built
|
|
|
|
Matrix client.
|
2015-06-25 00:58:13 +08:00
|
|
|
|
|
|
|
Using the example app for development
|
|
|
|
=====================================
|
|
|
|
|
2015-07-03 23:15:23 +08:00
|
|
|
To work on the CSS and Javascript and have the bundle files update as you
|
|
|
|
change the source files, you'll need to do two extra things:
|
2015-06-25 00:58:13 +08:00
|
|
|
|
2015-07-03 23:15:23 +08:00
|
|
|
1. Link the react sdk package into the example:
|
2015-07-07 01:29:24 +08:00
|
|
|
`cd matrix-react-sdk/examples/trivial; npm link ../../`
|
2015-07-03 23:15:23 +08:00
|
|
|
2. Start a watcher for the CSS files:
|
|
|
|
`cd matrix-react-sdk; npm run start:css`
|
2015-07-03 22:56:04 +08:00
|
|
|
|
|
|
|
Note that you may need to restart the CSS builder if you add a new file. Note
|
|
|
|
that `npm start` builds debug versions of the the javascript and CSS, which are
|
|
|
|
much larger than the production versions build by the `npm run build` commands.
|
2015-06-24 23:33:53 +08:00
|
|
|
|
2015-07-06 21:13:02 +08:00
|
|
|
IMPORTANT: If you customise components in your application (and hence require
|
|
|
|
react from your app) you must be sure to:
|
|
|
|
|
|
|
|
1. Make your app depend on react directly
|
|
|
|
2. If you `npm link` matrix-react-sdk, manually remove the 'react' directory
|
|
|
|
from matrix-react-sdk's `node_modules` folder, otherwise browserify will
|
|
|
|
pull in both copies of react which causes the app to break.
|