diff --git a/ORGANIZATION.md b/ORGANIZATION.md new file mode 100644 index 00000000000..0b3d36d487d --- /dev/null +++ b/ORGANIZATION.md @@ -0,0 +1,29 @@ +# Directory Structure + +- `dist` - Builds for both the stable version and the bleeding-edge version, including minified. Generated with `npm run dist`. +- `docs` - Complete documentation in Markdown. Used to generate the documentation on the [A-Frame Site](https://github.com/aframevr/aframe-site). +- `examples` - Examples. `index.html` lists all of the examples. +- `src` - Source code. + - `components` - Standard components. They are required via `components/index.js`. + - `scene` - Standard components that apply only to the scene. + - `constants` - Common constants. + - `core` - Core custom elements and API. + - `scene` - Scene custom element and modules. + - `extras` - Convenience and abstraction layers such as primitives. + - `primitives` - Code for registering primitive custom elements. + - `primitives` - Standard primitives such as ``. + - `index.js` - Main file that will be exported to `window.AFRAME`. + - `lib` - Integration with third-party modules. + - `shaders` - Standard shaders. They are required via `shaders/index.js`. + - `style` - Core CSS. + - `systems` - Standard systems. They are required via `systems/index.js`. + - `utils` - Utility function and modules. They should all be exposed in `utils/index.js` which is exported to `window.AFRAME.utils`. +- `tests` - Functional and unit tests with Karma, Mocha, Sinon, and Chai. +- `vendor` - Third-party modules not available via NPM. + +# Major Dependencies + +- [document-register-element](https://github.com/WebReflection/document-register-element) - Polyfill for the Custom Elements specification. +- [three.js](https://github.com/mrdoob/three.js) - 3D library. +- [tween.js](https://github.com/tweenjs/tween.js/) - Animation and interpolation library. +- [webvr-polyfill](https://github.com/borismus/webvr-polyfill) - Polyfill for the WebVR specification.