An early test version of Altinn Studio is available at https://altinn.studio.
Use the documentation to get started using Altinn Studio.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
- .NET Core 3.0 SDK
- Node.js (Version 10.*)
- Newest Git
- A code editor - we like Visual Studio Code
- Docker CE
127.0.0.1 altinn3.noin the hosts file (C:/Windows/System32/drivers/etc/hosts)
On MacOS: Add
127.0.0.1 altinn3.noto /private/etc/hosts.
sudo nano /private/etc/hosts
- Make sure your C drive is shared with docker, Docker Settings -> Shared Drives
On MacOS: Change docker-compose.yml (both)to:
volumes: - "C:/AltinnCore/Repos:/AltinnCore/Repos"
volumes: - "/Users/<yourname>/AltinnCore/Repos:/AltinnCore/Repos"
- World Wide Web Publishing Service must be disabled, Services -> "World Wide Web Publishing Service" rigth click and choose "stop"
Clone Altinn Studio repo and navigate to the folder.
git clone https://github.com/Altinn/altinn-studio cd altinn-studio
Run all parts of the solution in containers (Make sure docker is running)
docker-compose up -d --build
The solution is now available locally at altinn3.no
If you make changes and want to rebuild a specific project using docker-compose this can be done using
docker-compose up -d --build <container>
docker-compose up -d --build altinn_designer
Running Designer and/or Runtime component locally
The Designer and Runtime components can be run locally when developing/debugging. The rest of the solution (Repository and LoadBalancer) will still have to be running in containers. Follow the install steps above if this has not already been done.
Stop the container running Designer
docker stop altinn-designer
Navigate to the Designer folder. The first time running, or after any package changes, get the latest packages.
cd src/AltinnCore/Designer npm ci npm run gulp-install-deps
Build and run the code.
dotnet build npm run gulp # first time only npm run gulp-develop
If you are not going to edit the designer react app you can use
cd src\AltinnCore\Designer npm ci npm run gulp dotnet run
Which will build the Designer .net backend and the designer react app, but not listen to changes to the react app.
Stop the container running Runtime.
docker stop altinn-runtime
Navigate to the Runtime folder. Build and run the code.
Important: First you must have executed the Designer commands in order to successfully execute both the following command sequences on the Runtime component.
cd src/AltinnCore/Runtime npm ci npm run gulp # first time only npm run gulp-develop
If you are not going to edit the runtime react app you can use
cd src/AltinnCore/Runtime npm ci npm run gulp dotnet run
Which will build the runtime .net backend and runtime react app, but not listen for changes to our react app.
Building other react apps
If you need to rebuild other react apps, for instance Dashboard or ServiceDevelopment, this can be done by navigating to their respective folders, example
src/react-apps/applications/dashboard and then run the following build script
npm run build
Some of the react projects also have various other predefined npm tasks, which can be viewed in the
package.json file which is located in the root folder of each react project, example
The platform receipt component can run locally, both in docker and manually.
- Open a terminal in
npm run gulp(if running for the first time, otherwise this can be skipped)
npm run gulp-install-deps
npm run gulp-develop
This will build and run receipt back end, and build and copy the receipt frontend to the
The application should now be available at
The script wil also listen to changes in the receipt react app, rebuild and copy the new react app to the
- Open a terminal in
docker compose up
- The application should now be available at
Running the tests
End to end tests
Automated end to end tests are currently being developed.
Coding style tests
Coding style tests are available for the React front end application, using tslint.
Navigate to the React front end application and run linting.
cd src/react-apps/applications/ux-editor npm run lint
The current build is deployed in Kubernetes on Azure.
Automated build/deploy process is being developed.
- React/Redux - The front-end framework
- .NET Core/C# - The back-end framework
- npm - Package management
- Docker - Container platform
- Kubernetes - Container orchestration
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
- Altinn Studio development team - If you want to get in touch, just create a new issue.
See also the list of contributors who participated in this project.
This project is licensed under the 3-Clause BSD License - see the LICENSE.md file for details.