interface ITechnologyListItem { name : string, icon : string, alt? : string } let technologyListMap : Map = new Map(); technologyListMap.set( "deno", { name : "Deno", icon : "https://deno.land/logo.svg" } ); technologyListMap.set( "react", { name : "React", icon : "./assets/img/3rd/favicon-react.svg", alt : "React Library" } ); technologyListMap.set( "typescript", { name : "TypeScript", icon : "./assets/img/3rd/favicon-typescript.ico" } ); technologyListMap.set( "javascript", { name : "JavaScript", icon : "./assets/img/3rd/favicon-javascript.png" } ); technologyListMap.set( "less", { name : "Less", icon : "./assets/img/3rd/favicon-less.ico" } ); technologyListMap.set( "angular", { name : "Angular", icon : "./assets/img/3rd/favicon-angular.ico", alt : "Angular Framework" } ); // technologyListMap.set( "mongodb", { // name : "MongoDB", // icon : "https://www.mongodb.com/assets/images/global/favicon.ico", // alt : "MongoDB - NoSQL Database" // } ); technologyListMap.set( "sql", { name : "SQL", icon : "./assets/img/3rd/favicon-sql.png", alt : "SQL Database Language" } ); technologyListMap.set( "redis", { name : "Redis", icon : "./assets/img/3rd/favicon-redis.png", alt : "Redis Database" } ); technologyListMap.set( "laravel", { name : "Laravel", icon : "./assets/img/3rd/favicon-laravel.ico", alt : "Laravel PHP Framework" } ); // technologyListMap.set( "jquery", { // name : "JQuery", // icon : "./assets/img/3rd/favicon-jquery.ico", // alt : "JQuery Library" // } ); // technologyListMap.set( "html", { // name : "Html", // icon : "./assets/img/3rd/favicon-html.png" // } ); // technologyListMap.set( "css", { // name : "CSS", // icon : "./assets/img/3rd/favicon-css.svg" // } ); technologyListMap.set( "googlecharts", { name : "Google Charts", icon : "./assets/img/3rd/favicon-googlecharts.png", alt : "Google Charts JS Library" } ); technologyListMap.set( "nodejs", { name : "NodeJS", icon : "./assets/img/3rd/favicon-nodejs.ico" } ); technologyListMap.set( "socketio", { name : "Socket.IO", icon : "./assets/img/3rd/favicon-socketio.png" } ); technologyListMap.set( "git", { name : "Git", icon : "./assets/img/3rd/favicon-git.ico" } ); technologyListMap.set( "docker", { name : "Docker", icon : "./assets/img/3rd/favicon-docker.png" } ); technologyListMap.set( "webpack", { name : "Webpack", icon : "https://raw.githubusercontent.com/webpack/media/master/logo/icon-square-small.png" } ); technologyListMap.set( "yarn", { name : "Yarn", icon : "https://yarnpkg.com/favicon-32x32.png" } ); technologyListMap.set( "npm", { name : "Npm", icon : "https://static.npmjs.com/3dc95981de4241b35cd55fe126ab6b2c.png" } ); technologyListMap.set( "instagramapi", { name : "Instagram - API", icon : "./assets/img/3rd/favicon-instagram.png" } ); interface IProjectListItem { name : string; previewImg? : string; link : { github? : string; live? : string }, date : number; status : boolean | null; description : string clientSideList? : Array; serverSideList? : Array; } const projectsListMap : Map = new Map(); projectsListMap.set( "reactinstafeed", { name : "Instagram User Media Feed Widget", link : { github : "https://github.com/Hellsos/insta-feed-widget" }, date : 2021, status : true, description : `Instagram User Media Feed Widget using React.js.`, serverSideList : [ technologyListMap.get( "react" )!, technologyListMap.get( "typescript" )!, technologyListMap.get( "javascript" )!, technologyListMap.get( "git" )!, ] } ); projectsListMap.set( "denoinstafeed", { name : "Instagram User Media Feed", link : { github : "https://github.com/Hellsos/deno-insta-feed" }, date : 2021, status : true, description : `Instagram User Media Feed API using Deno TypeScript Runtime.`, serverSideList : [ technologyListMap.get( "deno" )!, technologyListMap.get( "typescript" )!, technologyListMap.get( "javascript" )!, technologyListMap.get( "sql" )!, technologyListMap.get( "git" )!, technologyListMap.get( "instagramapi" )!, ] } ); projectsListMap.set( "denodotenvfile", { name : "DotEnv File for Deno", link : { github : "https://github.com/Hellsos/deno-dotenv-file" }, date : 2020, status : true, description : `A library for Deno parsing .env file into object-oriented structure making it more friendly for working in IDEs.`, serverSideList : [ technologyListMap.get( "deno" )!, technologyListMap.get( "typescript" )!, technologyListMap.get( "javascript" )!, technologyListMap.get( "git" )! ] } ); projectsListMap.set( "blogmihmanli", { name : "Blog - Mihmanli", previewImg : "./assets/img/asset_mihmanli.png", link : { live : "https://kristyna.mihmanli.com/" }, date : 2017, status : true, description : `Personal blog with administration allowing logged user to create groups, posts, galleries publicly accessible or privately accessible with custom code.
Data feed from Instagram is every hour synchronized via Instagram - API providing images, videos and its data. Images are stored on storage server and data are inserted into SQL database.`, clientSideList : [ technologyListMap.get( "jquery" )!, technologyListMap.get( "html" )!, technologyListMap.get( "css" )! ], serverSideList : [ technologyListMap.get( "laravel" )!, technologyListMap.get( "sql" )!, technologyListMap.get( "redis" )!, technologyListMap.get( "instagramapi" )!, ] } ); projectsListMap.set( "weatherstation", { name : "WeatherStation Stats", previewImg : "./assets/img/asset_weather_station.png", link : { live : "http://meteostanice-dev.kumpacka.eu" }, date : 2016, status : true, description : `Web Application which shows data stored in redis cache collected by weather station.
Shell script on server inserts current weather data to SQL database each 5 minutes and then refreshes views in redis cache.
Sun/Moon moves around according to the time of last record :)`, clientSideList : [ technologyListMap.get( "jquery" )!, technologyListMap.get( "html" )!, technologyListMap.get( "css" )!, technologyListMap.get( "googlecharts" )!, ], serverSideList : [ technologyListMap.get( "laravel" )!, technologyListMap.get( "sql" )!, technologyListMap.get( "redis" )!, ] } ); export const template = ` Jan Rabčan - Front End Developer - Angular, React, Deno

Hello, I'm Jan

A Front End Developer living in Czech Republic

Building Web Apps Using

    ${ Array.from( technologyListMap.values() ).map( ( technology ) => { return `
  • ${ technology.alt || technology.name } ${ technology.name }
  • `; } ).join( "\n" ) }

Projects

    ${ Array.from( projectsListMap.values() ).map( ( project ) => { return `
    • Name

      ${ project.name }

    • Date

      ${ project.date } ${ project.status === true ? "Active" : "" } ${ project.status === null ? "In Progress" : "" } ${ project.status === false ? "Inactive" : "" }

    • Description

      ${ project.description }

    • ${ project.clientSideList && project.clientSideList.length > 0 ? `
    • Client Side
        ${ project.clientSideList.map( ( technology ) => { if ( technology == null ) return; return `
      • ${ technology.alt || technology.name } ${ technology.name }
      • `; } ).join( "\n" ) }
    • ` : "" } ${ project.serverSideList && project.serverSideList.length > 0 ? `
    • Server Side
        ${ project.serverSideList.map( ( technology ) => { if ( technology == null ) return; return `
      • ${ technology.alt || technology.name } ${ technology.name }
      • `; } ).join( "\n" ) }
    • ` : "" }
  • `; } ).join( "\n" ) }

Work Experience

`;