Compare commits

...

6 Commits

27 changed files with 188 additions and 31 deletions

30
build/asset-manifest.json Normal file
View File

@ -0,0 +1,30 @@
{
"files": {
"main.css": "/static/css/main.b49307a1.chunk.css",
"main.js": "/static/js/main.dc39c219.chunk.js",
"main.js.map": "/static/js/main.dc39c219.chunk.js.map",
"runtime-main.js": "/static/js/runtime-main.0c55ef23.js",
"runtime-main.js.map": "/static/js/runtime-main.0c55ef23.js.map",
"static/js/2.c57af0e2.chunk.js": "/static/js/2.c57af0e2.chunk.js",
"static/js/2.c57af0e2.chunk.js.map": "/static/js/2.c57af0e2.chunk.js.map",
"static/js/3.0f3a97fa.chunk.js": "/static/js/3.0f3a97fa.chunk.js",
"static/js/3.0f3a97fa.chunk.js.map": "/static/js/3.0f3a97fa.chunk.js.map",
"static/js/4.2052373c.chunk.js": "/static/js/4.2052373c.chunk.js",
"static/js/4.2052373c.chunk.js.map": "/static/js/4.2052373c.chunk.js.map",
"static/js/5.2342b456.chunk.js": "/static/js/5.2342b456.chunk.js",
"static/js/5.2342b456.chunk.js.map": "/static/js/5.2342b456.chunk.js.map",
"index.html": "/index.html",
"static/css/main.b49307a1.chunk.css.map": "/static/css/main.b49307a1.chunk.css.map",
"static/js/2.c57af0e2.chunk.js.LICENSE.txt": "/static/js/2.c57af0e2.chunk.js.LICENSE.txt",
"static/media/App.css": "/static/media/background.fb4e663d.jpg",
"static/media/discord.500e04f6.png": "/static/media/discord.500e04f6.png",
"static/media/england.f9404ee2.png": "/static/media/england.f9404ee2.png",
"static/media/gitea.7c847944.png": "/static/media/gitea.7c847944.png"
},
"entrypoints": [
"static/js/runtime-main.0c55ef23.js",
"static/js/2.c57af0e2.chunk.js",
"static/css/main.b49307a1.chunk.css",
"static/js/main.dc39c219.chunk.js"
]
}

BIN
build/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

1
build/index.html Normal file
View File

@ -0,0 +1 @@
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="Personal website from Alexander Roese"/><link rel="apple-touch-icon" href="/logo192.png"/><link rel="manifest" href="/manifest.json"/><title>Alexander Röse</title><link href="/static/css/main.b49307a1.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function t(t){for(var n,i,a=t[0],c=t[1],l=t[2],s=0,p=[];s<a.length;s++)i=a[s],Object.prototype.hasOwnProperty.call(o,i)&&o[i]&&p.push(o[i][0]),o[i]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(f&&f(t);p.length;)p.shift()();return u.push.apply(u,l||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,a=1;a<r.length;a++){var c=r[a];0!==o[c]&&(n=!1)}n&&(u.splice(t--,1),e=i(i.s=r[0]))}return e}var n={},o={1:0},u=[];function i(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.e=function(e){var t=[],r=o[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=o[e]=[t,n]}));t.push(r[2]=n);var u,a=document.createElement("script");a.charset="utf-8",a.timeout=120,i.nc&&a.setAttribute("nonce",i.nc),a.src=function(e){return i.p+"static/js/"+({}[e]||e)+"."+{3:"0f3a97fa",4:"2052373c",5:"2342b456"}[e]+".chunk.js"}(e);var c=new Error;u=function(t){a.onerror=a.onload=null,clearTimeout(l);var r=o[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),u=t&&t.target&&t.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,r[1](c)}o[e]=void 0}};var l=setTimeout((function(){u({type:"timeout",target:a})}),12e4);a.onerror=a.onload=u,document.head.appendChild(a)}return Promise.all(t)},i.m=e,i.c=n,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)i.d(r,n,function(t){return e[t]}.bind(null,n));return r},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/",i.oe=function(e){throw console.error(e),e};var a=this["webpackJsonpmy-website"]=this["webpackJsonpmy-website"]||[],c=a.push.bind(a);a.push=t,a=a.slice();for(var l=0;l<a.length;l++)t(a[l]);var f=c;r()}([])</script><script src="/static/js/2.c57af0e2.chunk.js"></script><script src="/static/js/main.dc39c219.chunk.js"></script></body></html>

BIN
build/logo192.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

25
build/manifest.json Normal file
View File

@ -0,0 +1,25 @@
{
"short_name": "My website",
"name": "Alexander Röse",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "logo192.png",
"type": "image/png",
"sizes": "192x192"
},
{
"src": "logo512.png",
"type": "image/png",
"sizes": "512x512"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}

3
build/robots.txt Normal file
View File

@ -0,0 +1,3 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:

View File

@ -0,0 +1,2 @@
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}#root{background-image:url(/static/media/background.fb4e663d.jpg);height:100vh;background-position:50%;background-repeat:no-repeat;background-size:cover}.nav{list-style-type:none;margin:0;padding:0;overflow:hidden}.nav li{float:left;text-align:center;padding:14px 16px}.nav li,.nav li a{display:block;color:#fff}.nav li a{text-decoration:none;margin:0 20px}.nav li a.active{background-color:#04aa6d}.nav li.right{float:right}.nav .icon{display:none}@media screen and (max-width:940px){#modal-contact,#modal-projects{width:70vw!important}}@media screen and (max-width:600px){.nav .icon{float:right;font-weight:700;font-size:24px;display:block;margin-right:20px}.nav li{display:none}.nav-mobile li,.nav-mobile ul{display:block}#modal-home{width:80vw}#modal-home h1{font-size:10vw}#modal-home p{font-size:5vw}#modal-projects h2{font-size:9vw}#modal-projects p{font-size:5vw}#modal-projects table td,#modal-projects table th{font-size:4vw}#modal-contact{width:80vw}#modal-contact h1{font-size:10vw}#modal-contact button,#modal-contact label{font-size:5vw!important}}.nav-mobile{height:0;width:100%;position:fixed;z-index:1;top:0;left:0;background-color:rgba(0,0,0,.9);overflow-x:hidden;transition:.4s}.nav-mobile button{position:absolute;right:30px;top:8px;font-size:34px;border:0;color:#fff;background-color:transparent;cursor:pointer}.nav-mobile.open{height:100%}.nav-mobile ul a{display:block;color:#fff;text-decoration:none;margin:20px 0}.nav-mobile ul{position:relative;top:25%;width:100%;text-align:center;margin-top:30px;padding:0}.nav-mobile div{padding:20px 45% 0}.nav-mobile div li{margin-bottom:10px;cursor:pointer;transition:-webkit-transform .1s;transition:transform .1s;transition:transform .1s,-webkit-transform .1s}.nav-mobile div a{margin:0}.nav-mobile div li{margin:10px 0}.nav-mobile div li:hover{-webkit-transform:scale(1.1);transform:scale(1.1)}.nav-mobile img{width:50px}.nav-mobile hr{margin:0 7px;border:1px solid #4d4d4d}.sidebar{position:absolute;top:50%;left:10px;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);border-radius:10px;background-color:rgba(34,34,34,.9);box-shadow:0 10px 10px #000}.sidebar hr{margin:0 2px 0 7px;border:1px solid #4d4d4d}.sidebar img{width:50px}.sidebar ul{margin:0}.sidebar li{margin:10px;cursor:pointer;transition:-webkit-transform .1s;transition:transform .1s;transition:transform .1s,-webkit-transform .1s}.sidebar li:hover{-webkit-transform:scale(1.1);transform:scale(1.1)}.modal{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);padding:20px;border-radius:10px;font-size:32px;color:#fff;background-color:rgba(34,34,34,.9);box-shadow:0 10px 10px #000}.modal h1,.modal h2{margin-top:10px;letter-spacing:3.6px}#modal-home p{color:hsla(0,0%,98.8%,.705)}#modal-projects{width:80%}#modal-projects h2{text-align:center;margin-bottom:0}#modal-projects p{text-align:center;color:hsla(0,0%,98.8%,.705);margin-top:0}#modal-projects th{text-align:left}#modal-projects div{overflow-x:auto}#modal-projects table{width:100%;border-collapse:collapse;font-size:26px}#modal-projects th{border-bottom:4px solid #4d4d4d;border-right:3px solid #4d4d4d}#modal-projects th:last-child{border-right:0}#modal-projects td{border-top:3px solid #4d4d4d;border-right:3px solid #4d4d4d}#modal-projects td:last-child{border-right:0}#modal-projects a{color:#fff;text-decoration:none}#modal-projects a:hover{text-decoration:underline}#modal-contact,#modal-contact h2{text-align:center}#modal-contact p{color:hsla(0,0%,98.8%,.705)}#modal-contact div{overflow-x:auto}#modal-contact a{color:#00acd3;font-weight:700;text-decoration:none}
/*# sourceMappingURL=main.b49307a1.chunk.css.map */

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,50 @@
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
/** @license React v0.20.2
* scheduler.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/** @license React v17.0.2
* react-dom.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/** @license React v17.0.2
* react-jsx-runtime.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/** @license React v17.0.2
* react.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,2 @@
(this["webpackJsonpmy-website"]=this["webpackJsonpmy-website"]||[]).push([[3],{38:function(e,t,c){"use strict";c.r(t),c.d(t,"default",(function(){return s}));c(1);var n=c(7),a=c(0);function s(){return Object(a.jsx)(n.a.Consumer,{children:function(e){var t=e.language;return Object(a.jsxs)("div",{id:"modal-contact",className:"modal",children:[Object(a.jsx)("h2",{children:t.pages.contact.title}),Object(a.jsx)("p",{children:t.pages.contact.text}),Object(a.jsx)("div",{children:Object(a.jsx)("a",{href:"mailto:alexander@roese.dev",children:"alexander@roese.dev"})})]})}})}}}]);
//# sourceMappingURL=3.0f3a97fa.chunk.js.map

View File

@ -0,0 +1 @@
{"version":3,"sources":["routes/Contact.js"],"names":["Contact","Consumer","language","id","className","pages","contact","title","text","href"],"mappings":"+GAAA,sEAGe,SAASA,IACtB,OACE,cAAC,IAAgBC,SAAjB,UACG,gBAAGC,EAAH,EAAGA,SAAH,OACC,sBAAKC,GAAG,gBAAgBC,UAAU,QAAlC,UACE,6BAAKF,EAASG,MAAMC,QAAQC,QAC5B,4BAAIL,EAASG,MAAMC,QAAQE,OAC3B,8BACE,mBAAGC,KAAK,6BAAR","file":"static/js/3.0f3a97fa.chunk.js","sourcesContent":["import React from \"react\";\nimport { LanguageContext } from \"../component/Language/LanguageContext\";\n\nexport default function Contact() {\n return (\n <LanguageContext.Consumer>\n {({ language }) => (\n <div id=\"modal-contact\" className=\"modal\">\n <h2>{language.pages.contact.title}</h2>\n <p>{language.pages.contact.text}</p>\n <div>\n <a href=\"mailto:alexander@roese.dev\">alexander@roese.dev</a>\n </div>\n </div>\n )}\n </LanguageContext.Consumer>\n );\n}\n\n/*\n<form>\n <label>Name</label>\n <input\n type=\"text\"\n name=\"name\"\n placeholder={language.pages.contact.name.placeholder}\n required\n />\n\n <label>Email</label>\n <input\n type=\"email\"\n name=\"email\"\n placeholder={language.pages.contact.email.placeholder}\n required\n />\n\n <label>{language.pages.contact.subject.text}</label>\n <input\n type=\"text\"\n name=\"subject\"\n placeholder={language.pages.contact.subject.placeholder}\n required\n />\n\n <label>{language.pages.contact.message.text}</label>\n <textarea\n name=\"message\"\n placeholder={language.pages.contact.message.placeholder}\n required\n />\n\n <button type=\"submit\">{language.pages.contact.submit}</button>\n </form>\n*/\n"],"sourceRoot":""}

View File

@ -0,0 +1,2 @@
(this["webpackJsonpmy-website"]=this["webpackJsonpmy-website"]||[]).push([[4],{36:function(e,n,t){"use strict";t.r(n),t.d(n,"default",(function(){return r}));t(1);var s=t(7),c=t(0);function r(){return Object(c.jsxs)("div",{id:"modal-home",className:"modal",children:[Object(c.jsx)("h1",{children:"Alexander R\xf6se"}),Object(c.jsx)(s.a.Consumer,{children:function(e){var n=e.language;return Object(c.jsx)("p",{children:n.pages.home.text})}})]})}}}]);
//# sourceMappingURL=4.2052373c.chunk.js.map

View File

@ -0,0 +1 @@
{"version":3,"sources":["routes/Home.js"],"names":["Home","id","className","Consumer","language","pages","home","text"],"mappings":"+GAAA,sEAGe,SAASA,IACtB,OACE,sBAAKC,GAAG,aAAaC,UAAU,QAA/B,UACE,mDACA,cAAC,IAAgBC,SAAjB,UACG,gBAAGC,EAAH,EAAGA,SAAH,OAAkB,4BAAIA,EAASC,MAAMC,KAAKC","file":"static/js/4.2052373c.chunk.js","sourcesContent":["import React from \"react\";\nimport { LanguageContext } from \"../component/Language/LanguageContext\";\n\nexport default function Home() {\n return (\n <div id=\"modal-home\" className=\"modal\">\n <h1>Alexander Röse</h1>\n <LanguageContext.Consumer>\n {({ language }) => <p>{language.pages.home.text}</p>}\n </LanguageContext.Consumer>\n </div>\n );\n}\n"],"sourceRoot":""}

View File

@ -0,0 +1,2 @@
(this["webpackJsonpmy-website"]=this["webpackJsonpmy-website"]||[]).push([[5],{37:function(e,t,a){"use strict";a.r(t),a.d(t,"default",(function(){return c}));var n=a(7),i=(a(1),a(0)),r={german:[{link:"https://git.krakatoa.umbach.dev/Alex/lawn-mower",name:"Rasenroboter",description:"Autonom fahrender Rasenroboter",language:"Go, Python, React, WebSocket, ZeroMQ",date:"02/2022 - jetzt"},{name:"Serverentwicklung",description:"Erweiterungen entwickelt f\xfcr ein Spiel",language:"Go, Java, Redis, MongoDB",date:"09/2021 - 01/2022"},{name:"Mobile App",description:"Swipe-App \xe4hnlich wie TikTok",language:"ReactNative (Android & iOS), Go, RabbitMQ",date:"05/2021 - 08/2021"},{link:"https://git.krakatoa.umbach.dev/Alex/my-website",name:"Pers\xf6nliche Webseite",description:"Veranschaulichung von Informationen",language:"React, JavaScript, CSS, HTML",date:"07/2021"},{link:"https://github.com/AlexanderRoese/PasswordManager",name:"Password Manager",description:"Selbstgehosteter verschl\xfcsselter Passwort-Manager",language:"JavaScript, CSS, HTML, Node.JS",date:"03/2020 - 12/2020"}],english:[{link:"https://git.krakatoa.umbach.dev/Alex/lawn-mower",name:"Lawn mower",description:"Autonomous driving lawn mower",language:"Go, Python, React, WebSocket, ZeroMQ",date:"02/2022 - now"},{name:"Server development",description:"Extensions developed for a game",language:"Go, Java, Redis, MongoDB",date:"09/2021 - 01/2022"},{name:"Mobile App",description:"Swipe app similar to tiktok",language:"ReactNative (Android & iOS), Go, RabbitMQ",date:"05/2021 - 08/2021"},{link:"https://git.krakatoa.umbach.dev/Alex/my-website",name:"This website",description:"Visualization of information",language:"React, JavaScript, CSS, HTML",date:"07/2021"},{link:"https://github.com/AlexanderRoese/PasswordManager",name:"Password Manager",description:"Self-hosted encrypted password manager",language:"JavaScript, CSS, HTML, Node.JS",date:"03/2020 - 12/2020"}]};function s(e){return e.language===n.b.german?r.german.map((function(e,t){return Object(i.jsxs)("tr",{children:[Object(i.jsx)("td",{children:void 0===e.link?e.name:Object(i.jsx)("a",{href:e.link,children:e.name})},"b"+t),Object(i.jsx)("td",{children:e.description},"c"+t),Object(i.jsx)("td",{children:e.language},"d"+t),Object(i.jsx)("td",{children:e.date},"e"+t)]},"a"+t)})):r.english.map((function(e,t){return Object(i.jsxs)("tr",{children:[Object(i.jsx)("td",{children:void 0===e.link?e.name:Object(i.jsx)("a",{href:e.link,children:e.name})},"b"+t),Object(i.jsx)("td",{children:e.description},"c"+t),Object(i.jsx)("td",{children:e.language},"d"+t),Object(i.jsx)("td",{children:e.date},"e"+t)]},"a"+t)}))}function c(){return Object(i.jsx)(n.a.Consumer,{children:function(e){var t=e.language;return Object(i.jsxs)("div",{id:"modal-projects",className:"modal",children:[Object(i.jsx)("h2",{children:t.pages.projects.title}),Object(i.jsx)("p",{children:t.pages.projects.description}),Object(i.jsx)("div",{children:Object(i.jsx)("table",{children:Object(i.jsxs)("tbody",{children:[Object(i.jsxs)("tr",{children:[Object(i.jsx)("th",{children:"Name"}),Object(i.jsx)("th",{children:t.pages.projects.tableTh.description}),Object(i.jsx)("th",{children:t.pages.projects.tableTh.language}),Object(i.jsx)("th",{children:t.pages.projects.tableTh.date})]}),Object(i.jsx)(s,{language:t})]})})})]})}})}}}]);
//# sourceMappingURL=5.2342b456.chunk.js.map

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,2 @@
!function(e){function t(t){for(var n,i,a=t[0],c=t[1],l=t[2],s=0,p=[];s<a.length;s++)i=a[s],Object.prototype.hasOwnProperty.call(o,i)&&o[i]&&p.push(o[i][0]),o[i]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(f&&f(t);p.length;)p.shift()();return u.push.apply(u,l||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,a=1;a<r.length;a++){var c=r[a];0!==o[c]&&(n=!1)}n&&(u.splice(t--,1),e=i(i.s=r[0]))}return e}var n={},o={1:0},u=[];function i(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.e=function(e){var t=[],r=o[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=o[e]=[t,n]}));t.push(r[2]=n);var u,a=document.createElement("script");a.charset="utf-8",a.timeout=120,i.nc&&a.setAttribute("nonce",i.nc),a.src=function(e){return i.p+"static/js/"+({}[e]||e)+"."+{3:"0f3a97fa",4:"2052373c",5:"2342b456"}[e]+".chunk.js"}(e);var c=new Error;u=function(t){a.onerror=a.onload=null,clearTimeout(l);var r=o[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),u=t&&t.target&&t.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,r[1](c)}o[e]=void 0}};var l=setTimeout((function(){u({type:"timeout",target:a})}),12e4);a.onerror=a.onload=u,document.head.appendChild(a)}return Promise.all(t)},i.m=e,i.c=n,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)i.d(r,n,function(t){return e[t]}.bind(null,n));return r},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/",i.oe=function(e){throw console.error(e),e};var a=this["webpackJsonpmy-website"]=this["webpackJsonpmy-website"]||[],c=a.push.bind(a);a.push=t,a=a.slice();for(var l=0;l<a.length;l++)t(a[l]);var f=c;r()}([]);
//# sourceMappingURL=runtime-main.0c55ef23.js.map

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 324 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -1,11 +1,10 @@
import React from "react";
import { LanguageContext } from "./Language/LanguageContext";
import React from "react";
import discord from "../img/discord.png";
import englandFlag from "../img/england.png";
import germanyFlag from "../img/germany.png";
import gitea from "../img/gitea.png";
import github from "../img/github.png";
import discord from "../img/discord.png";
import germanyFlag from "../img/germany.png";
import englandFlag from "../img/england.png";
export default class Sidebar extends React.Component {
render() {
@ -27,12 +26,20 @@ export function SidebarElements(props) {
return (
<>
<li>
<a href="https://git.umbach.dev/Alex" target="_blank" rel="noreferrer">
<a
href="https://git.krakatoa.umbach.dev/Alex"
target="_blank"
rel="noreferrer"
>
<img src={gitea} alt="gitea" />
</a>
</li>
<li>
<a href="https://github.com/RuisPipe" target="_blank" rel="noreferrer">
<a
href="https://github.com/AlexanderRoese"
target="_blank"
rel="noreferrer"
>
<img src={github} alt="github" />
</a>
</li>

View File

@ -1,32 +1,40 @@
import React from "react";
import {
LanguageContext,
languages,
} from "../component/Language/LanguageContext";
import React from "react";
const list = {
german: [
{
name: "Privat",
description: "Privates Projekt",
language: "ReactNative (Android & iOS)",
date: "05/2021 - jetzt",
link: "https://git.krakatoa.umbach.dev/Alex/lawn-mower",
name: "Rasenroboter",
description: "Autonom fahrender Rasenroboter",
language: "Go, Python, React, WebSocket, ZeroMQ",
date: "02/2022 - jetzt",
},
{
name: "Privat",
description: "Privates Projekt",
language: "GoLang",
date: "05/2021 - jetzt",
name: "Serverentwicklung",
description: "Erweiterungen entwickelt für ein Spiel",
language: "Go, Java, Redis, MongoDB",
date: "09/2021 - 01/2022",
},
{
link: "https://git.umbach.dev/Alex/my-website",
name: "Mobile App",
description: "Swipe-App ähnlich wie TikTok",
language: "ReactNative (Android & iOS), Go, RabbitMQ",
date: "05/2021 - 08/2021",
},
{
link: "https://git.krakatoa.umbach.dev/Alex/my-website",
name: "Persönliche Webseite",
description: "Veranschaulichung von Informationen",
language: "React.js, JavaScript, CSS, HTML",
language: "React, JavaScript, CSS, HTML",
date: "07/2021",
},
{
link: "https://github.com/alexanderroese/PasswordManager",
link: "https://github.com/AlexanderRoese/PasswordManager",
name: "Password Manager",
description: "Selbstgehosteter verschlüsselter Passwort-Manager",
language: "JavaScript, CSS, HTML, Node.JS",
@ -35,26 +43,33 @@ const list = {
],
english: [
{
name: "Private",
description: "Private project",
language: "ReactNative (Android & iOS)",
date: "05/2021 - now",
link: "https://git.krakatoa.umbach.dev/Alex/lawn-mower",
name: "Lawn mower",
description: "Autonomous driving lawn mower",
language: "Go, Python, React, WebSocket, ZeroMQ",
date: "02/2022 - now",
},
{
name: "Private",
description: "Private project",
language: "GoLang",
date: "05/2021 - now",
name: "Server development",
description: "Extensions developed for a game",
language: "Go, Java, Redis, MongoDB",
date: "09/2021 - 01/2022",
},
{
link: "https://git.umbach.dev/Alex/my-website",
name: "Mobile App",
description: "Swipe app similar to tiktok",
language: "ReactNative (Android & iOS), Go, RabbitMQ",
date: "05/2021 - 08/2021",
},
{
link: "https://git.krakatoa.umbach.dev/Alex/my-website",
name: "This website",
description: "Visualization of information",
language: "React.js, JavaScript, CSS, HTML",
language: "React, JavaScript, CSS, HTML",
date: "07/2021",
},
{
link: "https://github.com/alexanderroese/PasswordManager",
link: "https://github.com/AlexanderRoese/PasswordManager",
name: "Password Manager",
description: "Self-hosted encrypted password manager",
language: "JavaScript, CSS, HTML, Node.JS",
@ -68,7 +83,11 @@ function RenderProjects(props) {
return list.german.map((project, index) => (
<tr key={"a" + index}>
<td key={"b" + index}>
<a href={project.link}>{project.name}</a>
{project.link === undefined ? (
project.name
) : (
<a href={project.link}>{project.name}</a>
)}
</td>
<td key={"c" + index}>{project.description}</td>
<td key={"d" + index}>{project.language}</td>