After doing a new git clone of the code, run
npm run build at the command line from the root directory.
Getting started with the code
UPDATE: Storyteller seems to work just fine with io.js as well, but please tell us if you encounter any issues developing with io.js instead of node.js.
rake, or if you'd rather not use a Ruby-based build, the
build.cmd script will set up both the Node.js and .Net dependencies and run most of the unit tests. Running these commands will:
- Install all the necessary npm packages for the client side
- Installs the necessary Nuget dependencies for the .Net code
- Builds and tests the .Net code
npm run build-client- precompile the JSX files, do ES6 to ES5 transformations, and bundle the files
npm run watch- same as above, but watches for changes and builds automatically
npm run harness- hosts the client code with a stubbed in backend at
http://localhost:3000using the React hot loader for rapid UI work
npm run test-mocha- run the unit tests against the /lib folder
npm run tdd-mocha- run the unit tests against the /lib folder in watched mode
npm run test-karma- run the karma tests against the JSX components
npm run tdd-karma- run the karma tests against the JSX components in watched mode
npm run smoke-test- runs a series of karma tests against all the sample specifications
and as stated earlier,
- /components - All the React.js components as JSX files
- /component-tests - Karma tests against the React.js components
- /lib-tests - Mocha tests against the lib code
Working on the .Net Code
The source code is in the /src folder. For the moment, we're using Visual Studio.Net and the solution file is at src/Storyteller.sln. As DNX matures we will probably move to eliminate the .sln and .csproj files in the code repository. You will need to run the command line build at least once before opening the C# code in Visual Studio.
From the command line, you can run the
rake test command to run all the .Net unit tests.
UPDATE: Storyteller will transition to xUnit.Net for unit testing at some point prior to starting work on CoreCLR & DNX support.