Loop/Development: Difference between revisions
No edit summary |
(→Firefox Desktop: Add npm install instructions) |
||
Line 33: | Line 33: | ||
First, [https://developer.mozilla.org/en-US/docs/Simple_Firefox_build build Firefox]. | First, [https://developer.mozilla.org/en-US/docs/Simple_Firefox_build build Firefox]. | ||
Make sure you have npm installed | Make sure you have npm installed: | ||
brew install npm | |||
and install react: | |||
npm install -g react-tools | npm install -g react-tools |
Revision as of 11:20, 2 January 2015
Bug Tracking and Repositories
Tracking
Bugs are stored in bugzilla:
- Desktop & Standalone (aka 'link clicker'): 'Loop' product, 'Client' component
- Server: 'Loop' product, 'Server' component
- FFOS Client: 'Firefox OS' product, 'Gaia:Loop' component
Tracking section to be added elsewhere, with a reference here
Repositories
Loop is contained across several repositories:
- Master repository for Desktop and Standalone UI: mozilla-central (there's a git mirror of it as well)
- Loop server
- Firefox OS Loop client
Getting started with Firefox Desktop and Standalone development
Directories
All files, apart from desktop locales are in mozilla-central, under browser/components/loop/
. Within that directory there is:
- *.jsm - Various modules used within Firefox desktop
- build-jsx used to build the required jsx files
- content/ - These files are all used on the desktop for the Loop panel and conversation window. They are loaded into content space rather than chrome
- content/shared - Used for Firefox desktop, but also used for the standalone UI
- standalone/ - Files used by the standalone application, including commands to make and run a standalone server (see below)
- standalone/content - The content files for the standalone application
- ui/ - A UI showcase, used to aid development and layout of styles for the various parts of the UI
Firefox Desktop
First, build Firefox.
Make sure you have npm installed:
brew install npm
and install react:
npm install -g react-tools
Standalone (aka link clicker) client
This also needs npm to run.
To run the server on localhost, do:
cd browser/components/loop/standalone make install
Then to run the server:
make runserver
You'll also need to run a Loop server:
git checkout https://github.com/mozilla-services/loop-server cd loop-server make install
You'll then need to copy sample.json to dev.json. Ask in #loop if you need help. Then run:
make runserver
In a Firefox profile, you'll need to set the loop.server
pref to http://localhost:5000
Developing
If you're altering any of the javascript files, you need to make sure you alter the jsx versions if they exist. Running:
cd browser/components/loop ./build-jsx
will generate the js versions of the file. Even better you can use:
./build-jsx -w
to keep watching the jsx files and updating them as the change.