Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 113 lines (75 sloc) 4.5 kb
7bae598 Upgrade license to MPL 2. (closes #859)
Gervase Markham authored
1 <!-- This Source Code Form is subject to the terms of the Mozilla Public
2 - License, v. 2.0. If a copy of the MPL was not distributed with this
3 - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
4
9236a51 @callahad Review and clean up the README
callahad authored
5 This repository contains the core [Mozilla Persona][] services.
6 Persona is a login system based on the [BrowserID protocol][].
9cbaaf6 @lloyd document how to get started and the planned Connect dependency
lloyd authored
7
9236a51 @callahad Review and clean up the README
callahad authored
8 To learn about using Persona on your site, check out [our documentation][Persona Docs] on MDN.
f33b044 @lloyd a pass at the top level README
lloyd authored
9
9236a51 @callahad Review and clean up the README
callahad authored
10 [Mozilla Persona]: https://login.persona.org
11 [BrowserID protocol]: https://github.com/mozilla/id-specs
12 [Persona Docs]: https://developer.mozilla.org/docs/persona
f33b044 @lloyd a pass at the top level README
lloyd authored
13
9236a51 @callahad Review and clean up the README
callahad authored
14 ## Repository Contents
f33b044 @lloyd a pass at the top level README
lloyd authored
15
9236a51 @callahad Review and clean up the README
callahad authored
16 This repository contains several projects related to Persona:
1aacecc @lloyd improve language in top level readme, add mustache.js as a dep
lloyd authored
17
9236a51 @callahad Review and clean up the README
callahad authored
18 * __The Persona Fallback IdP__:
19 A fallback Identity Provider (IdP) for users without native support for Persona via their email provider. Written in node.js, hosted at https://login.persona.org.
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
20
9236a51 @callahad Review and clean up the README
callahad authored
21 * __The Persona Remote Verification Service__:
22 A stateless node.js server which handles cryptographic verification of identity assertions. Hosted at verifier.login.persona.org, but easy to run locally.
1aacecc @lloyd improve language in top level readme, add mustache.js as a dep
lloyd authored
23
9236a51 @callahad Review and clean up the README
callahad authored
24 * __The Cross-Browser Persona Support Library__:
25 The `include.js` file that provides the `navigator.id` API for browsers without native support for Persona. This also includes the code for the dialog shown to users of those browsers.
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
26
9236a51 @callahad Review and clean up the README
callahad authored
27 * __Sample and Test Code__:
28 For all of the above.
1aacecc @lloyd improve language in top level readme, add mustache.js as a dep
lloyd authored
29
9236a51 @callahad Review and clean up the README
callahad authored
30 ## Getting Started
1aacecc @lloyd improve language in top level readme, add mustache.js as a dep
lloyd authored
31
9236a51 @callahad Review and clean up the README
callahad authored
32 The Persona team uses Git and GitHub for all of our development and issue tracking.
33 If you'd like to contribute code back to us, please do so using a [Pull Request][].
34 If you get stuck and need help, you can find the core team on our [public mailing list][dev-identity] or in #identity on irc.mozilla.org.
4374d6a @salmonz Exact steps to get someone going with running a local browserid server
salmonz authored
35
9236a51 @callahad Review and clean up the README
callahad authored
36 [Pull Request]: https://help.github.com/articles/using-pull-requests
37 [dev-identity]: https://lists.mozilla.org/listinfo/dev-identity
4374d6a @salmonz Exact steps to get someone going with running a local browserid server
salmonz authored
38
9236a51 @callahad Review and clean up the README
callahad authored
39 ### Install Dependencies
4374d6a @salmonz Exact steps to get someone going with running a local browserid server
salmonz authored
40
9236a51 @callahad Review and clean up the README
callahad authored
41 BrowserID needs the following dependencies before it can run:
4374d6a @salmonz Exact steps to get someone going with running a local browserid server
salmonz authored
42
d8eaed8 @callahad Fix minimum node.js version in README
callahad authored
43 * node.js (>= 0.6.17)
9236a51 @callahad Review and clean up the README
callahad authored
44 * libgmp3
45 * g++
46
47 For detailed instructions for your specific operating system, check out the `SETUP` docs in the `docs/` folder.
4374d6a @salmonz Exact steps to get someone going with running a local browserid server
salmonz authored
48
b524d93 @callahad Tweak README. Move OS-specific info to into docs/
callahad authored
49 ### Running BrowserID Locally
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
50
9236a51 @callahad Review and clean up the README
callahad authored
51 To run the BrowserID service locally:
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
52
9236a51 @callahad Review and clean up the README
callahad authored
53 1. Clone the repository to your machine.
54 2. Run `npm install` from the root of your clone.
55 3. Run `npm start` from the root of your clone.
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
56
9236a51 @callahad Review and clean up the README
callahad authored
57 When you run `npm start`, it will print several URLs to your terminal.
58 You can test that everything is working by visiting the URL for the `example` (RP) site.
59 Look for a line like this in the terminal:
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
60
9236a51 @callahad Review and clean up the README
callahad authored
61 example (10361): running on http://127.0.0.1:10001
303326d @benadida refactored browserid/wsapi to use proper express routes
benadida authored
62
b524d93 @callahad Tweak README. Move OS-specific info to into docs/
callahad authored
63 You can stop the services by typing Control-C in the terminal.
813b3db @ozten Updating Install instructions, reving Vagrant VM, adding update instr…
ozten authored
64
b524d93 @callahad Tweak README. Move OS-specific info to into docs/
callahad authored
65 ### Staying Up to Date
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
66
b524d93 @callahad Tweak README. Move OS-specific info to into docs/
callahad authored
67 To stay up to date with BrowserID:
813b3db @ozten Updating Install instructions, reving Vagrant VM, adding update instr…
ozten authored
68
b524d93 @callahad Tweak README. Move OS-specific info to into docs/
callahad authored
69 1. Use `git pull` to retrieve new changes.
70 2. Delete both the `var` and `node_modules` folders in the root of your local clone.
71 3. Run `npm install` from the root of your local clone.
813b3db @ozten Updating Install instructions, reving Vagrant VM, adding update instr…
ozten authored
72
303326d @benadida refactored browserid/wsapi to use proper express routes
benadida authored
73 ## Testing
74
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
75 ### Local testing:
9236a51 @callahad Review and clean up the README
callahad authored
76 Unit tests can be run by invoking `npm test` at the top level.
77 At present, there are three classes of unit tests to be run:
bfca084 @lloyd by default, run all tests during npm test, and emit clear errors when…
lloyd authored
78
9236a51 @callahad Review and clean up the README
callahad authored
79 * Backend unit tests against a custom, zero-dependency JSON database.
80 * Backend unit tests against MySQL, what we use in production.
81 * Frontend unit tests run headlessly against PhantomJS.
bfca084 @lloyd by default, run all tests during npm test, and emit clear errors when…
lloyd authored
82
9236a51 @callahad Review and clean up the README
callahad authored
83 You can control which tests are run using the `WHAT_TESTS` env var, see `scripts/test` for details.
f33b044 @lloyd a pass at the top level README
lloyd authored
84
ee49724 @salmonz Added package install, git, and browserid forking/cloning instructions.
salmonz authored
85 ### Continuous Integration Testing:
9236a51 @callahad Review and clean up the README
callahad authored
86
87 Integration tests are done with [Travis-CI][].
88 It is recommended that you setup [Travis-CI][] for your BrowserID fork so that tests are automatically run when you push changes.
89 This will give the BrowserID team confidence that your changes both function correctly and do not cause regressions in other parts of the code.
90 Configuration files are already included in the repo but some setup is necessary.
2777bd6 @shane-tomlinson Updating README.md with directions on how to set up Travis-ci
shane-tomlinson authored
91
5963b0f @floatingatoll fix README links to be syntax-correct markdown
floatingatoll authored
92 1. Sign in to [GitHub][]
93 2. Open [Travis-CI][]
2777bd6 @shane-tomlinson Updating README.md with directions on how to set up Travis-ci
shane-tomlinson authored
94 3. Click "Sign in with GitHub" if you are not signed in. If you are signed in, click on your username then "Profile" and go to step 5.
95 4. Click "Allow" if this is your first time signing in.
96 5. Find "browserid" in "Your Repositories"
97 6. Move the switch from "OFF" to "ON"
5963b0f @floatingatoll fix README links to be syntax-correct markdown
floatingatoll authored
98 7. Open your fork of BrowserID on [GitHub][]
2777bd6 @shane-tomlinson Updating README.md with directions on how to set up Travis-ci
shane-tomlinson authored
99 8. Click the "Admin" button
100 9. Click "Service Hooks"
101 10. Ensure that "Travis" has a green radio button
5963b0f @floatingatoll fix README links to be syntax-correct markdown
floatingatoll authored
102 11. Push to your fork and return to [Travis-CI][]. Watch the tests run.
2777bd6 @shane-tomlinson Updating README.md with directions on how to set up Travis-ci
shane-tomlinson authored
103
9236a51 @callahad Review and clean up the README
callahad authored
104 [Travis-CI]: http://travis-ci.org
105 [GitHub]: https://github.com
303326d @benadida refactored browserid/wsapi to use proper express routes
benadida authored
106
ea1e103 @lloyd mention the code license in the README
lloyd authored
107 ## LICENSE
303326d @benadida refactored browserid/wsapi to use proper express routes
benadida authored
108
9236a51 @callahad Review and clean up the README
callahad authored
109 All source code here is available under the [MPL 2.0][] license, unless otherwise indicated.
ea1e103 @lloyd mention the code license in the README
lloyd authored
110
9236a51 @callahad Review and clean up the README
callahad authored
111 [MPL 2.0]: https://mozilla.org/MPL/2.0/
352aac2 @lloyd noop commit to test CI
lloyd authored
112
Something went wrong with that request. Please try again.