Micromata BorgBackup-Butler
===========================
Micromata GmbH, Kai Reinhard
:toc:
:toclevels: 4

Copyright (C) 2018-2021

ifdef::env-github,env-browser[:outfilesuffix: .adoc]


== Build and start from command line

=== Build distribution and start with Gradle
1. `cd borgbackup-butler/borgbutler-webapp`
2. `npm install`
3. `cd ..`
4. `gradle distZip`
5. `unzip borgbutler-server/build/distributions/borgbutler-server-0.1-SNAPSHOT.zip`
6. Start BorgButler: `borgbutler-server-0.1-SNAPSHOT/bin/borgbutler-server`

Now the default webbrowser is started on default port `9042`. Enjoy it!


== Build and start inside your IDE

=== Start borgbutler-server
1. `cd borgbutler-webapp`
2. `npm install`
3. `gradle npmBuild` (builds the web archive)
4. Start `de.micromata.borgbutler.server.Main`

=== Start borgbutler-server for web development
For using hot code replacement of your web files, you should use `npm start` or `yarn start`:

1. `cd borgbutler-webapp`
2. `npm install`
3. `npm start` (opens the web browser on port 3000)
4. Start `de.micromata.borgbutler.server.Main` (ignore the opened browser window for port 9042)

=== Profiling heap, cpu and everything using JProfiler
JProfiler is an excellent tool for analysing your software. BorgButler was optimized regarding heap memory and CPU usage by
using https://www.ej-technologies.com/products/jprofiler/overview.html[JProfiler from EJ Technologies^]

== Ideas
=== 2 factor authentication
https://github.com/j256/two-factor-auth

== Install server
=== Debian
tbd.
