import React from 'react';
 import { ProgressBar } from 'react-bootstrap';
+import { useTranslation } from 'react-i18next';
 
-const Loading = () => <div className="loading">
-       <ProgressBar animated now={100} variant="info" />
-</div>;
+const Loading = () => {
+       const { t } = useTranslation();
+
+       return <div className="loading">
+               <div className="circle">
+                       <span className="text">{t('general.loading')}</span>
+               </div>
+       </div>;
+};
 
 export default Loading;
 
                                fr: 'Französisch',
                        },
                        loadError: 'Fehler beim Laden',
+                       loading: 'Laden',
                        loadSuccess: 'Geladen',
                        pleaseSelect: 'Bitte wählen',
                        resetError: 'Fehler beim Zurücksetzen',
 
                                fr: 'French',
                        },
                        loadError: 'Error loading',
+                       loading: 'Loading',
                        loadSuccess: 'Loading successful',
                        pleaseSelect: 'Please select',
                        resetError: 'Error resetting',
 
        }
 }
 
+@keyframes loading-pulse {
+       from {
+               box-shadow: 0 0 0 2em #aaa;
+       }
+       to {
+               box-shadow: 0 0 1em 4em #aaa;
+       }
+}
+
+.loading {
+       display: flex;
+       align-items: center;
+       justify-content: center;
+       height: 80vh;
+       .circle {
+               display: flex;
+               align-items: center;
+               justify-content: center;
+               content: "";
+               background: #888;
+               width: min(30vw, 30vh);
+               height: min(30vw, 30vh);
+               border-radius: min(15vw, 15vh);
+               line-height: min(15vw, 15vh);
+               animation-name: loading-pulse;
+               animation-duration: 2s;
+               animation-iteration-count: infinite;
+               animation-direction: alternate;
+       }
+       .text {
+               font-size: min(4vw, 4vh);
+               min-font-size: 200%;
+       }
+}
+
 .modal-90w {
        width: 90%;
        max-width: none !important;