FAQs
Regarding code style, are there any linting standards that we should follow to be consistent with other projects at Te Papa?
We use the ESLint AirBnB style guide for JavaScript development
(see https://www.npmjs.com/package/eslint-config-airbnb for details).
We use the default ESLint and add a some customization (via .eslintrc) to the project:
{
"parser": "babel-eslint",
"extends": [
"airbnb"
],
"rules": {
"react/jsx-filename-extension": 0,
"no-console": 0,
"no-underscore-dangle": 0,
"react/prop-types": 0
},
"globals": {
"fetch": true
},
"env": {
"jest": true,
"browser": true,
"es6": true
}
}
Would your development team mind if we use Typescript instead of JavaScript?
We would prefer JavaScript ES6. Typescript in general is good, but for us we would need to consider another component in the build process. We would appreciate it if we could use JavaScript ES6 instead.
When and how will we get access to the DEDs player system, so we can test our game on the player?
We will supply a player that can be used locally – there is a configuration option to point the player at a local folder, rather than our deployment system.
The player is an electron based project which will allow you to run the interactive within a sandbox. We use the player as well for deployments to our production environment.
Would we be able to get access to your Jenkins build system?
The Jenkins server is currently not accessible externally, but we are in the process of shifting projects to Travis CI. It is likely that this WILL be possible – more discussion is required.
Should we base our project architecture directly on some other Te Papa project? This would be helpful in knowing how exactly to integrate our code into Te Papa's systems.
If you are using React JS then there is a starter kit that can be used. The starter kit is on our GITHUB account and can be shared once we set you up. We use Electron (https://electronjs.org/) as the core framework for the player which runs on MS Windows 10. Te Papa uses the player for running the interactives.
Our experience with the player is that testing the application on the Electron player is important as the electron player behaves different compared to view the project via the web-browser.
Is there some way we can easily test that our code successfully integrates with Te Papa's build system, and DEDs runtime system?
We encourage automated testing and with Travis-CI. You would have the ability to verify that changes are not breaking your existing test suite. We are happy to set up Travis-CI build steps to support you in the development process and to provide the GitHub repository.
What version of NodeJS is being used for the DEDs build system?
The build system (Travis) is currently building the application on Node.JS Version 8.2.1 using Yarn Version 0.27.5 ( https://yarnpkg.com/en/ ).
Current available versions are Node.JS v8.11 and Yarn v1.5.1.