docker/development run docker-compose --build -d backend/burning-okr run ./gradlew.bat
home | documentation (de) | documentation (en)
Burning OKR is our vision to help consistently establish focus and alignment around company goals and embed transparency into the corporate culture.
BurningOKR has been developed as a web application with an Angular Frontend and Java Spring Boot Backend. As a database, Postgres SQL is used.
You can install BurningOKR standalone using the following technologies (not for development).
- Please follow our Code Guidelines and General information about implementations 0.1 You may also read the Frontend-Readme
- Install PostgreSQL or MSSQL
- Install JDK 8. The Open JDK 8 can be downloaded here.
- Install the (!) LTS Version of node & npm here
- Download the following Batch-Script and put it in the folder, where you want the project to be. Execute the script.
Or execute the following command:
curl https://raw.githubusercontent.com/BurningOKR/BurningOKR/master/docs/scripts/SetupBurningOKR_windows.bat > temp.bat && temp.bat && DEL temp.bat
The following tasks will be done by the script:
-
Clone the Repository with
git clone https://github.com/BurningOKR/BurningOKR
. (The whole repository, including frontend and backend) -
Install NodeJS (optional)
-
Install Docker (optional)
-
Install Angular
npm install @angular/cli -g
-
Install Dependencies (in the frontend folder)
npm install
-
Install Postgres (optional via Docker)
-
Open the frontend-folder and the backend-folder in seperate windows in your IDE. (We recommend IntelliJ, VS Code should also do the trick)
-
Configure the backend.
-
Start the frontend with
npm start
-
Start the backend with the gradle
Start backend
configuration.
The source code of the project consists of two parts. A Frontend SPA with the framework Angular and a Spring Boot project for the backend.
With git clone https://github.com/BurningOKR/BurningOKR
the complete repository (including frontend and backend) is cloned.
With IntelliJ, you can now import the frontend project.
Next, you have to run npm install
on the command line to download the dependencies.
With npm start
the application is started and can now be called via http://localhost:4200
.
To open the project in IntelliJ, go to Import Project and select the file build.gradle in the folder backend. In the dialog that opens you have to select the field use auto-import.
If a configuration was not created automatically to start the project in IntelliJ, a gradle configuration must be created. For the gradle project, okr-tool must be selected, and for tasks, bootRun must be entered. The backend project uses Project Lombok. To use Project Lombok in your IDE, please refer to using Lombok.
If PostgresSQL has already been successfully installed and configured in the previous step, the Spring Boot application can now be started.
To start the application without IntelliJ, switch to backend/burning-okr and run ./gradlew bootRun --scan --scan -Dspring.profiles.active=local
. On some UNIX systems there might be some issues with gradle regarding finding the JDK.
If some weird exceptions occur, try running export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home
(replace the path with the actual path of your JDK). Then, restart your shell or run source ~/.bash_profile
.
The REST interfaces are listed under localhost:8080/swagger-ui.html
and can be called there.
With gradlew build
the backend can be built.
With ng build
the frontend can be built.
-
I get some errors with npm install (python2, node-sass, node-gyp):
Use the LTS version of node, not the current! https://nodejs.org/en/download/ -
I get a entityManagerFactory Persistence Exception / error on instancing entityManagerFactory when starting the backend
Please make sure to use JDK8 on Tomcat. You can check the JDK Version onlocalhost:8080/manager
. Then you can log in with the tomcat user for the gui. It should look like this -
I can't log in into the tomcat manager gui Create a tomcat user for the web management console. You need to do this to access the manager app, that comes with tomcat. Start by editing the
tomcat-users.xml
file. Then add the following lines above</tomcat-users>
(at the bottom of the file)<role rolename="manager-gui"/> <role rolename="admin-gui"/> <user username="username" password="password" roles="manager-gui,admin-gui"/> </tomcat-users>
Change
username
andpassword
to a secure account.
Thank you to all the people and bots who already contributed to BurningOKR!
Made with contributors-img.
The current user documentation is available at https://burning-okr.gitbook.io/burningokr
You can write an E-Mail or mention our Twitter account @BurningOKR.
BurningOKR was initially developed as part of a training project at BROCKHAUS AG in Lünen.
Only an Open Source solution can unfold its true potential. That's why we released it on GitHub as an open-source project under the Apache 2.0 license.
See LICENSE.txt