Loop/Development: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(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:

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.