Loop/Development: Difference between revisions
(In progress page for how to get started on Loop.) |
No edit summary |
||
| Line 18: | Line 18: | ||
== Getting started with Firefox Desktop and Standalone development == | == Getting started with Firefox Desktop and Standalone development == | ||
=== Directories === | |||
All files, apart from desktop locales are in [http://hg.mozilla.org/mozilla-central/ mozilla-central], under <code>browser/components/loop/</code>. 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, [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, 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 [https://github.com/mozilla-services/loop-server 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 <code>loop.server</code> pref to <code>http://localhost:5000</code> | |||
=== 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. | |||
Revision as of 11:34, 26 September 2014
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, 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.