Skip to content
Snippets Groups Projects
ORGANIZATION.md 1.63 KiB

Several node.js servers are implemented in this repostiory, each is implemented on top of the express framework and they share the following directory structure:

  • bin/ - Contains the BrowserID servers (browserid, dbwriter, keysgner, and verifier) and CLI tools.

  • Each node.js application is the "entry point" for that app and is a typical express app.

  • scripts/ - Contains more CLI tools

  • run_locally.js - Script to run all the node.js servers server - typically bound against a well known localhost port.

  • lib/ - Server side JavaScript modules

  • var/ - A demand created directory with ephemeral files generated during the run (keys, logs, etc).

  • resources/

  • views/ - Express views (server side), served before static/ (if present)

  • static/ - Files served verbatim without any substitution nor server side logic in them

  • include.js - The JS file included by all RPs.

  • dialog/ - The meat of the BID dialog, a client side MVC architecture with a state machine

  • views/ - Client side EJS templates, not executed by ejs.js server side

  • resources/ - State machine and other logic powering the dialog

  • pages/ - Client side business logic for dialog

  • shared/ - JavaScript which is re-used across dialogs

  • test/ - QUnit tests

  • tests/ - Tests written using vows

  • Run via scripts/run_all_tests.sh