Handover Report - neuron-team/vscode-ipe GitHub Wiki
New Developer Guide
We encourage new developers to read through the documentation to get a strong grasp of our technology stack and development strategy. The source code contains a full version history that spans from the onset to the close of the project and each release highlights new features that were added. To view an overview of the teams progression throughout the project, please have a look at the project timeline. New developers can refer to the documentation below to get up and running and contribute to the extension.
Project structure
package.json
- this is the manifest file in which we declare our extension and commandssrc-common
- this contains common type declarations between backend and frontendsrc-backend
- this contains the logic of the program, includingextension.ts
src-frontend
- this contains the UI of the webview
Preparing the development environment
- Open a terminal and navigate to the project root (where this file is)
- Run
npm install
- Navigate to
src-frontend
- Run
npm install
there too
Building the project for iterative development
- Open a terminal and navigate to the project root (where this file is)
- Execute
npm run watch-frontend
- Open the project in VS Code
- Press
F5
to open a new window with the extension loaded - Set breakpoints in your code inside
src-backend
to debug the backend - Find output from the extension in the debug console
- Changes you make to
src-frontend
are automatically re-compiled
Building the project for distribution
- Open a terminal and navigate to the project root (where this file is)
- Execute
npm run compile
- Find the outputs in
/out
and/html
Testing
From the root folder, run:
- To run backend tests, execute
npm run test
- To run frontend tests, execute
cd src-frontend && ng test
List of all build commands
npm install
- Installs node dependencies.npm run clean
- Cleans the build output.npm run build-types
- Builds src-common and makes it available to the backend and frontend projects. Do this every time you edit src-common.npm run compile-frontend
- Compiles the Angular project for production.npm run watch-frontend
- Compiles the Angular project and watches the directory for changes, automatically recompiling any.npm run compile-backend
- Compiles the VS Code Typescript extension.npm run watch-backend
- Compiles the VS Code Typescript extension and watches the directory for changes.npm run compile
- Compiles types, backend, and frontend.npm run watch
- Compiles types, then watches backend. Does not compile frontend.npm run test
- Runs the unit tests.