diff --git a/list of cv b/list of cv new file mode 100644 index 0000000..f42b968 --- /dev/null +++ b/list of cv @@ -0,0 +1,13 @@ +lista delle cose da mettere in cv +Laurea in scienze informatiche all'università di Padova. +Questo sito web +Greenpass scanner web; with Marco Celadin +GoCart project; with Marco Celadin +Server in casa - {server git, reverse proxy} +Tirocinio di due mesi ad Athesys. +Stampante 3d rpi +swe typescript, docker, serverless-framework - { latex multi compiler, serverless service, docker } +Pao c++ - Qontainer +Antrlr parser 1 e 2; with Mariano Sciacco +Telegram bot alternativestudio +Progetto Leonardo - ICT in Saxon Hill Academy Dean diff --git a/package-lock.json b/package-lock.json index d81c410..f3fea13 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,9 +8,12 @@ "name": "mycv", "version": "0.0.1", "dependencies": { - "json-schema-to-typescript": "^10.1.5" + "@fortawesome/fontawesome-free": "^5.15.4", + "json-schema-to-typescript": "^10.1.5", + "milligram": "^1.4.1" }, "devDependencies": { + "@sveltejs/adapter-static": "^1.0.0-next.20", "@sveltejs/kit": "next", "@typescript-eslint/eslint-plugin": "^4.31.1", "@typescript-eslint/parser": "^4.31.1", @@ -22,6 +25,7 @@ "svelte": "^3.42.6", "svelte-check": "^2.2.6", "svelte-preprocess": "^4.9.4", + "svelte-preprocess-markdown": "^2.7.3", "tslib": "^2.3.1", "typescript": "^4.4.3" } @@ -185,6 +189,15 @@ "node": ">= 4" } }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "5.15.4", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.15.4.tgz", + "integrity": "sha512-eYm8vijH/hpzr/6/1CJ/V/Eb1xQFW2nnUKArb3z+yUWv7HTwj6M7SP957oMjfZjAHU6qpoNc2wQvIxBLWYa/Jg==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", @@ -258,6 +271,12 @@ "node": ">= 8.0.0" } }, + "node_modules/@sveltejs/adapter-static": { + "version": "1.0.0-next.20", + "resolved": "https://registry.npmjs.org/@sveltejs/adapter-static/-/adapter-static-1.0.0-next.20.tgz", + "integrity": "sha512-vutVoloX35E6QnnrNofToOWn/er/Li2yoR15NbTPZ26Gp3M6A2ckQJNMJrDbBA5XZsktNIXchIVGaADnKIJrow==", + "dev": true + }, "node_modules/@sveltejs/kit": { "version": "1.0.0-next.179", "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.179.tgz", @@ -1531,6 +1550,15 @@ "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", "dev": true }, + "node_modules/front-matter": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-3.2.1.tgz", + "integrity": "sha512-YUhgEhbL6tG+Ok3vTGIoSDKqcr47aSDvyhEqIv8B+YuBJFsPnOiArNXTPp2yO07NL+a0L4+2jXlKlKqyVcsRRA==", + "dev": true, + "dependencies": { + "js-yaml": "^3.13.1" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -1689,6 +1717,20 @@ "node": ">= 4" } }, + "node_modules/import-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-3.0.0.tgz", + "integrity": "sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "import-from": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -1705,6 +1747,31 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/import-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz", + "integrity": "sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-from/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -1908,6 +1975,17 @@ "node": ">= 0.8.0" } }, + "node_modules/lilconfig": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.3.tgz", + "integrity": "sha512-EHKqr/+ZvdKCifpNrJCKxBTgk5XupZA3y/aCPY9mxfgBzmgh93Mt/WqjjQ38oMxXuvDokaKiM3lAgvSH2sjtHg==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -1960,6 +2038,18 @@ "sourcemap-codec": "^1.4.4" } }, + "node_modules/marked": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/marked/-/marked-1.2.9.tgz", + "integrity": "sha512-H8lIX2SvyitGX+TRdtS06m1jHMijKN/XjfH6Ooii9fvxMlh8QdqBfBDkGUpMWH2kQNrtixjzYUa3SH8ROTgRRw==", + "dev": true, + "bin": { + "marked": "bin/marked" + }, + "engines": { + "node": ">= 8.16.2" + } + }, "node_modules/memoizee": { "version": "0.4.15", "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz", @@ -2002,6 +2092,14 @@ "node": ">=8.6" } }, + "node_modules/milligram": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/milligram/-/milligram-1.4.1.tgz", + "integrity": "sha512-RCgh/boHhcXWOUfKJWm3RJRoUeaEguoipDg0mJ31G0tFfvcpWMUlO1Zlqqr12K4kAXfDlllaidu0x7PaL2PTFg==", + "dependencies": { + "normalize.css": "~8.0.1" + } + }, "node_modules/min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -2102,6 +2200,11 @@ "node": ">=0.10.0" } }, + "node_modules/normalize.css": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz", + "integrity": "sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==" + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -2209,6 +2312,34 @@ "url": "https://opencollective.com/postcss/" } }, + "node_modules/postcss-load-config": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.0.tgz", + "integrity": "sha512-ipM8Ds01ZUophjDTQYSVP70slFSYg3T0/zyfII5vzhN6V57YSxMgG5syXuwi5VtS8wSf3iL30v0uBdoIVx4Q0g==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "import-cwd": "^3.0.0", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -2437,6 +2568,23 @@ "rimraf": "bin.js" } }, + "node_modules/sass": { + "version": "1.42.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.42.1.tgz", + "integrity": "sha512-/zvGoN8B7dspKc5mC6HlaygyCBRvnyzzgD5khiaCfglWztY99cYoiTUksVx11NlnemrcfH5CEaCpsUKoW0cQqg==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=8.9.0" + } + }, "node_modules/semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -2713,6 +2861,16 @@ } } }, + "node_modules/svelte-preprocess-markdown": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/svelte-preprocess-markdown/-/svelte-preprocess-markdown-2.7.3.tgz", + "integrity": "sha512-KJkIDNp41r1qfdKY6dRtYnADV0anYKYlJ2k+DX5SbXRDqKxZJN8UlFiuW/c1XoT1lQ1bE5QQe9uzWJgJrQPnzw==", + "dev": true, + "dependencies": { + "front-matter": "^3.2.1", + "marked": "^1.0.0" + } + }, "node_modules/table": { "version": "6.7.2", "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", @@ -2953,6 +3111,17 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">= 6" + } } }, "dependencies": { @@ -3091,6 +3260,11 @@ } } }, + "@fortawesome/fontawesome-free": { + "version": "5.15.4", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.15.4.tgz", + "integrity": "sha512-eYm8vijH/hpzr/6/1CJ/V/Eb1xQFW2nnUKArb3z+yUWv7HTwj6M7SP957oMjfZjAHU6qpoNc2wQvIxBLWYa/Jg==" + }, "@humanwhocodes/config-array": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", @@ -3149,6 +3323,12 @@ "picomatch": "^2.2.2" } }, + "@sveltejs/adapter-static": { + "version": "1.0.0-next.20", + "resolved": "https://registry.npmjs.org/@sveltejs/adapter-static/-/adapter-static-1.0.0-next.20.tgz", + "integrity": "sha512-vutVoloX35E6QnnrNofToOWn/er/Li2yoR15NbTPZ26Gp3M6A2ckQJNMJrDbBA5XZsktNIXchIVGaADnKIJrow==", + "dev": true + }, "@sveltejs/kit": { "version": "1.0.0-next.179", "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.179.tgz", @@ -4056,6 +4236,15 @@ "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", "dev": true }, + "front-matter": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-3.2.1.tgz", + "integrity": "sha512-YUhgEhbL6tG+Ok3vTGIoSDKqcr47aSDvyhEqIv8B+YuBJFsPnOiArNXTPp2yO07NL+a0L4+2jXlKlKqyVcsRRA==", + "dev": true, + "requires": { + "js-yaml": "^3.13.1" + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -4165,6 +4354,17 @@ "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true }, + "import-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-3.0.0.tgz", + "integrity": "sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "import-from": "^3.0.0" + } + }, "import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -4175,6 +4375,27 @@ "resolve-from": "^4.0.0" } }, + "import-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-3.0.0.tgz", + "integrity": "sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "resolve-from": "^5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "optional": true, + "peer": true + } + } + }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -4335,6 +4556,14 @@ "type-check": "~0.4.0" } }, + "lilconfig": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.3.tgz", + "integrity": "sha512-EHKqr/+ZvdKCifpNrJCKxBTgk5XupZA3y/aCPY9mxfgBzmgh93Mt/WqjjQ38oMxXuvDokaKiM3lAgvSH2sjtHg==", + "dev": true, + "optional": true, + "peer": true + }, "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -4384,6 +4613,12 @@ "sourcemap-codec": "^1.4.4" } }, + "marked": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/marked/-/marked-1.2.9.tgz", + "integrity": "sha512-H8lIX2SvyitGX+TRdtS06m1jHMijKN/XjfH6Ooii9fvxMlh8QdqBfBDkGUpMWH2kQNrtixjzYUa3SH8ROTgRRw==", + "dev": true + }, "memoizee": { "version": "0.4.15", "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz", @@ -4422,6 +4657,14 @@ "picomatch": "^2.2.3" } }, + "milligram": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/milligram/-/milligram-1.4.1.tgz", + "integrity": "sha512-RCgh/boHhcXWOUfKJWm3RJRoUeaEguoipDg0mJ31G0tFfvcpWMUlO1Zlqqr12K4kAXfDlllaidu0x7PaL2PTFg==", + "requires": { + "normalize.css": "~8.0.1" + } + }, "min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -4501,6 +4744,11 @@ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true }, + "normalize.css": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz", + "integrity": "sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==" + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -4577,6 +4825,19 @@ "source-map-js": "^0.6.2" } }, + "postcss-load-config": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.0.tgz", + "integrity": "sha512-ipM8Ds01ZUophjDTQYSVP70slFSYg3T0/zyfII5vzhN6V57YSxMgG5syXuwi5VtS8wSf3iL30v0uBdoIVx4Q0g==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "import-cwd": "^3.0.0", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + } + }, "prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -4721,6 +4982,17 @@ } } }, + "sass": { + "version": "1.42.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.42.1.tgz", + "integrity": "sha512-/zvGoN8B7dspKc5mC6HlaygyCBRvnyzzgD5khiaCfglWztY99cYoiTUksVx11NlnemrcfH5CEaCpsUKoW0cQqg==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "chokidar": ">=3.0.0 <4.0.0" + } + }, "semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -4886,6 +5158,16 @@ "strip-indent": "^3.0.0" } }, + "svelte-preprocess-markdown": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/svelte-preprocess-markdown/-/svelte-preprocess-markdown-2.7.3.tgz", + "integrity": "sha512-KJkIDNp41r1qfdKY6dRtYnADV0anYKYlJ2k+DX5SbXRDqKxZJN8UlFiuW/c1XoT1lQ1bE5QQe9uzWJgJrQPnzw==", + "dev": true, + "requires": { + "front-matter": "^3.2.1", + "marked": "^1.0.0" + } + }, "table": { "version": "6.7.2", "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", @@ -5062,6 +5344,14 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "optional": true, + "peer": true } } } diff --git a/package.json b/package.json index 431b815..183cccc 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "mycv", "version": "0.0.1", "scripts": { - "update-model":"json2ts ./src/model/schema.json ./src/model/job.d.ts", + "update-model": "json2ts ./src/model/schema.json ./src/model/job.d.ts", "dev": "svelte-kit dev", "build": "svelte-kit build", "preview": "svelte-kit preview", @@ -12,6 +12,7 @@ "format": "prettier --ignore-path .gitignore --write --plugin-search-dir=. ." }, "devDependencies": { + "@sveltejs/adapter-static": "^1.0.0-next.20", "@sveltejs/kit": "next", "@typescript-eslint/eslint-plugin": "^4.31.1", "@typescript-eslint/parser": "^4.31.1", @@ -23,11 +24,14 @@ "svelte": "^3.42.6", "svelte-check": "^2.2.6", "svelte-preprocess": "^4.9.4", + "svelte-preprocess-markdown": "^2.7.3", "tslib": "^2.3.1", "typescript": "^4.4.3" }, "type": "module", "dependencies": { - "json-schema-to-typescript": "^10.1.5" + "@fortawesome/fontawesome-free": "^5.15.4", + "json-schema-to-typescript": "^10.1.5", + "milligram": "^1.4.1" } } diff --git a/src/app.html b/src/app.html index e759c4a..08fe4c7 100644 --- a/src/app.html +++ b/src/app.html @@ -3,6 +3,8 @@ + + %svelte.head% diff --git a/src/app.scss b/src/app.scss new file mode 100644 index 0000000..65a0846 --- /dev/null +++ b/src/app.scss @@ -0,0 +1,3 @@ +:root { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; +} diff --git a/src/elements/aboutMe.svelte b/src/elements/aboutMe.svelte index e69de29..c7ddbb7 100644 --- a/src/elements/aboutMe.svelte +++ b/src/elements/aboutMe.svelte @@ -0,0 +1,60 @@ + +
+ profile +
+

Gianmarco Pettinato

+

Back-end developer GNU/Linux user

+
+ + + + +
+
+
+ \ No newline at end of file diff --git a/src/elements/header.svelte b/src/elements/header.svelte index e69de29..1be6924 100644 --- a/src/elements/header.svelte +++ b/src/elements/header.svelte @@ -0,0 +1,12 @@ + +
+ +
+ \ No newline at end of file diff --git a/src/elements/jobs.svelte b/src/elements/jobs.svelte index e69de29..a142aa7 100644 --- a/src/elements/jobs.svelte +++ b/src/elements/jobs.svelte @@ -0,0 +1,109 @@ + +
+ {#each jobs as job } +
+

{job.title[currentLanguage]}

+
+ {job.year.start} - {job.year.end} +
+
+
+ {#each job.images as image } + realtive to the article + {/each} +
+
+

{job.content[currentLanguage]}

+
+
+ {#each job.collaborators as collaborator} + {collaborator.name}{collaborator.surname} + {/each} +
+
+ {#each job.languages as language} + {language+" "} + {/each} +
+
+ {#each job.tecnologies as tecnology} + {tecnology+" "} + {/each} +
+
+
+
+
+ {/each} +
+ \ No newline at end of file diff --git a/src/elements/jobsExperience.svelte b/src/elements/jobsExperience.svelte deleted file mode 100644 index e69de29..0000000 diff --git a/src/model/data.json b/src/model/data.json index d9a77c1..044bd01 100644 --- a/src/model/data.json +++ b/src/model/data.json @@ -1,18 +1,93 @@ -{ - "year": { - "start": "2021-10-01", - "end": "2021-10-02" +[ + { + "year": { + "start": "2021-10-01", + "end": "2021-10-02" + }, + "title": {"en":"This web site","it":"Questo sito web"}, + "content": {"en":"I'have created this web site as CV","it":"Ho creato questo sito web per raccogliere, in maniera semplice ed efficiente, tutti i miei lavori ed esperienze. Ho realizzato questa pagina utilizzando Typescript con il framework Svelte e le classi css invece le ho gestite a mano"}, + "collaborators": [], + "languages": [ + "typescript", + "JSON-schema" + ], + "tecnologies": [ + "Svelte", + "Nodejs" + ], + "images":["https://via.placeholder.com/500"] }, - "title": {"en":"This web site","it":"Questo sito web"}, - "content": {"en":"I'have created this web site as CV","it":"Ho creato questo sito web come curriculum"}, - "collaborators": [], - "languages": [ - "typescript", - "JSON-schema" - ], - "tecnologies": [ - "Svelte", - "Nodejs" - ], - "immagies":[] -} \ No newline at end of file + { + "year": { + "start": "2021-10-01", + "end": "2021-10-02" + }, + "title": {"en":"This web site","it":"Questo sito web"}, + "content": {"en":"I'have created this web site as CV","it":"Ho creato questo sito web per raccogliere, in maniera semplice ed efficiente, tutti i miei lavori ed esperienze. Ho realizzato questa pagina utilizzando Typescript con il framework Svelte e le classi css invece le ho gestite a mano"}, + "collaborators": [], + "languages": [ + "typescript", + "JSON-schema" + ], + "tecnologies": [ + "Svelte", + "Nodejs" + ], + "images":["https://via.placeholder.com/500"] + }, + { + "year": { + "start": "2021-10-01", + "end": "2021-10-02" + }, + "title": {"en":"This web site","it":"Questo sito web"}, + "content": {"en":"I'have created this web site as CV","it":"Ho creato questo sito web per raccogliere, in maniera semplice ed efficiente, tutti i miei lavori ed esperienze. Ho realizzato questa pagina utilizzando Typescript con il framework Svelte e le classi css invece le ho gestite a mano"}, + "collaborators": [], + "languages": [ + "typescript", + "JSON-schema" + ], + "tecnologies": [ + "Svelte", + "Nodejs" + ], + "images":["https://via.placeholder.com/500"] + }, + { + "year": { + "start": "2021-10-01", + "end": "2021-10-02" + }, + "title": {"en":"This web site","it":"Questo sito web"}, + "content": {"en":"I'have created this web site as CV","it":"Ho creato questo sito web per raccogliere, in maniera semplice ed efficiente, tutti i miei lavori ed esperienze. Ho realizzato questa pagina utilizzando Typescript con il framework Svelte e le classi css invece le ho gestite a mano"}, + "collaborators": [], + "languages": [ + "typescript", + "JSON-schema" + ], + "tecnologies": [ + "Svelte", + "Nodejs" + ], + "images":["https://via.placeholder.com/500"] + }, + { + "year": { + "start": "2021-10-01", + "end": "2021-10-02" + }, + "title": {"en":"This web site","it":"Questo sito web"}, + "content": {"en":"I'have created this web site as CV","it":"Ho creato questo sito web per raccogliere, in maniera semplice ed efficiente, tutti i miei lavori ed esperienze. Ho realizzato questa pagina utilizzando Typescript con il framework Svelte e le classi css invece le ho gestite a mano"}, + "collaborators": [], + "languages": [ + "typescript", + "JSON-schema" + ], + "tecnologies": [ + "Svelte", + "Nodejs" + ], + "images":["https://via.placeholder.com/500"] + } + +] \ No newline at end of file diff --git a/src/model/data.ts b/src/model/data.ts new file mode 100644 index 0000000..84c2fc5 --- /dev/null +++ b/src/model/data.ts @@ -0,0 +1,3 @@ +import * as data from './data.json'; + +export default data as unknown[]; \ No newline at end of file diff --git a/src/model/job.d.ts b/src/model/job.d.ts index 5ffe9e0..c9ad2e8 100644 --- a/src/model/job.d.ts +++ b/src/model/job.d.ts @@ -5,7 +5,7 @@ * and run json-schema-to-typescript to regenerate this file. */ -export type Schema = { +export interface Schema { year: { start: string; end: string; @@ -29,6 +29,6 @@ export type Schema = { }[]; languages: string[]; tecnologies: string[]; - immagies: string[]; + images: string[]; [k: string]: unknown; -}[]; +} diff --git a/src/model/schema.json b/src/model/schema.json index 93d407a..16c022e 100644 --- a/src/model/schema.json +++ b/src/model/schema.json @@ -1,103 +1,100 @@ { "$schema": "http://json-schema.org/draft-04/schema#", - "type": "array", - "items": { - "type": "object", - "properties": { - "year": { + "type": "object", + "properties": { + "year": { + "type": "object", + "properties": { + "start": { + "type": "string" + }, + "end": { + "type": "string" + } + }, + "required": [ + "start", + "end" + ] + }, + "title": { + "type": "object", + "properties": { + "en": { + "type": "string" + }, + "it": { + "type": "string" + } + }, + "required": [ + "en", + "it" + ] + }, + "content": { + "type": "object", + "properties": { + "en": { + "type": "string" + }, + "it": { + "type": "string" + } + }, + "required": [ + "en", + "it" + ] + }, + "collaborators": { + "type": "array", + "items": { "type": "object", "properties": { - "start": { + "name": { "type": "string" }, - "end": { + "surname": { + "type": "string" + }, + "ref": { "type": "string" } }, "required": [ - "start", - "end" + "name", + "surname", + "ref" ] - }, - "title": { - "type": "object", - "properties": { - "en": { - "type": "string" - }, - "it": { - "type": "string" - } - }, - "required": [ - "en", - "it" - ] - }, - "content": { - "type": "object", - "properties": { - "en": { - "type": "string" - }, - "it": { - "type": "string" - } - }, - "required": [ - "en", - "it" - ] - }, - "collaborators": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "surname": { - "type": "string" - }, - "ref": { - "type": "string" - } - }, - "required": [ - "name", - "surname", - "ref" - ] - } - }, - "languages": { - "type": "array", - "items": { - "type": "string" - } - }, - "tecnologies": { - "type": "array", - "items": { - "type": "string" - } - }, - "immagies": { - "type": "array", - "items": { - "type": "string" - } } }, - "required": [ - "year", - "title", - "content", - "collaborators", - "languages", - "tecnologies", - "immagies" - ] - } -} + "languages": { + "type": "array", + "items": { + "type": "string" + } + }, + "tecnologies": { + "type": "array", + "items": { + "type": "string" + } + }, + "images": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "year", + "title", + "content", + "collaborators", + "languages", + "tecnologies", + "images" + ] +} \ No newline at end of file diff --git a/src/routes/index.svelte b/src/routes/index.svelte index 5982b0a..f459ebe 100644 --- a/src/routes/index.svelte +++ b/src/routes/index.svelte @@ -1,2 +1,51 @@ -

Welcome to SvelteKit

-

Visit kit.svelte.dev to read the documentation

+ +
+
+ +
+
+ +
+ +
+ \ No newline at end of file diff --git a/static/Exo2-BlackCondensed.otf b/static/Exo2-BlackCondensed.otf new file mode 100755 index 0000000..1d7d430 Binary files /dev/null and b/static/Exo2-BlackCondensed.otf differ diff --git a/static/Exo2-BoldCondensed.otf b/static/Exo2-BoldCondensed.otf new file mode 100755 index 0000000..1c78c89 Binary files /dev/null and b/static/Exo2-BoldCondensed.otf differ diff --git a/static/Exo2-ExtraBoldCondensed.otf b/static/Exo2-ExtraBoldCondensed.otf new file mode 100755 index 0000000..504a05d Binary files /dev/null and b/static/Exo2-ExtraBoldCondensed.otf differ diff --git a/static/Exo2-ExtraLightCondensed.otf b/static/Exo2-ExtraLightCondensed.otf new file mode 100755 index 0000000..fd365a9 Binary files /dev/null and b/static/Exo2-ExtraLightCondensed.otf differ diff --git a/static/Exo2-LightCondensed.otf b/static/Exo2-LightCondensed.otf new file mode 100755 index 0000000..5c7fb79 Binary files /dev/null and b/static/Exo2-LightCondensed.otf differ diff --git a/static/Exo2-MediumCondensed.otf b/static/Exo2-MediumCondensed.otf new file mode 100755 index 0000000..b723418 Binary files /dev/null and b/static/Exo2-MediumCondensed.otf differ diff --git a/static/Exo2-RegularCondensed.otf b/static/Exo2-RegularCondensed.otf new file mode 100755 index 0000000..491a432 Binary files /dev/null and b/static/Exo2-RegularCondensed.otf differ diff --git a/static/Exo2-SemiBoldCondensed.otf b/static/Exo2-SemiBoldCondensed.otf new file mode 100755 index 0000000..832e1b4 Binary files /dev/null and b/static/Exo2-SemiBoldCondensed.otf differ diff --git a/static/Exo2-ThinCondensed.otf b/static/Exo2-ThinCondensed.otf new file mode 100755 index 0000000..4c99a66 Binary files /dev/null and b/static/Exo2-ThinCondensed.otf differ diff --git a/static/colors.scss b/static/colors.scss new file mode 100644 index 0000000..2704552 --- /dev/null +++ b/static/colors.scss @@ -0,0 +1,8 @@ +/* SCSS HEX */ +$cultured: #f2f2f2ff; +$rich-black-fogra-29: #011627ff; +$navajo-white: #ffddadff; +$middle-blue-green: #9ad5d3ff; +$steel-blue: #3a7ca5ff; + +/* SCSS Gradient */ diff --git a/static/elements.scss b/static/elements.scss new file mode 100644 index 0000000..1a876bf --- /dev/null +++ b/static/elements.scss @@ -0,0 +1,12 @@ +// @import url(./static/colors.scss); + +.box-with-shadow { + background-color: $cultured; + border-style: solid; + border-width: 0.1px; + border-color: $sonic-silver ; + border-radius: 10px; + box-shadow: -12px 26px 25px -14px $sonic-silver; + -webkit-box-shadow: -12px 26px 25px -14px $sonic-silver; + -moz-box-shadow: -12px 26px 25px -14px $sonic-silver; +} diff --git a/static/fonts.scss b/static/fonts.scss new file mode 100644 index 0000000..83d21e9 --- /dev/null +++ b/static/fonts.scss @@ -0,0 +1,39 @@ +@font-face { + font-family: Exo2-BlackCondensed; + src: url(Exo2-BlackCondensed.otf); +} + +@font-face { + font-family: Exo2-BoldCondensed; + src: url(Exo2-BoldCondensed.otf); +} + +@font-face { + font-family: Exo2-ExtraBoldCondensed; + src: url(Exo2-ExtraBoldCondensed.otf); +} + +@font-face { + font-family: Exo2-ExtraLightCondensed; + src: url(Exo2-ExtraLightCondensed.otf); +} + +@font-face { + font-family: Exo2-MediumCondensed; + src: url(Exo2-MediumCondensed.otf); +} + +@font-face { + font-family: Exo2-RegularCondensed; + src: url(Exo2-RegularCondensed.otf); +} + +@font-face { + font-family: Exo2-SemiBoldCondensed; + src: url(Exo2-SemiBoldCondensed.otf); +} + +@font-face { + font-family: Exo2-ThinCondensed; + src: url(Exo2-ThinCondensed.otf); +} \ No newline at end of file diff --git a/static/main.css b/static/main.css new file mode 100644 index 0000000..415e88d --- /dev/null +++ b/static/main.css @@ -0,0 +1,7 @@ +body{ + height: 100%; + width: 100%; + padding: 0; + margin: 0; + font-family: CortisasPro-Regular; +} \ No newline at end of file diff --git a/static/profile_pic.jpg b/static/profile_pic.jpg new file mode 100644 index 0000000..0ba2ca9 Binary files /dev/null and b/static/profile_pic.jpg differ diff --git a/svelte.config.js b/svelte.config.js index 5eb051a..1ee16c5 100644 --- a/svelte.config.js +++ b/svelte.config.js @@ -1,14 +1,34 @@ import preprocess from 'svelte-preprocess'; +import adapter from '@sveltejs/adapter-static'; +import {markdown} from 'svelte-preprocess-markdown'; +import path from 'path'; /** @type {import('@sveltejs/kit').Config} */ const config = { // Consult https://github.com/sveltejs/svelte-preprocess // for more information about preprocessors - preprocess: preprocess(), + preprocess: [preprocess({ + sass: true, + typescript: true + }), markdown()], kit: { // hydrate the
element in src/app.html - target: '#svelte' + target: '#svelte', + vite:{ + resolve:{ + alias:{ + $elem: path.resolve('src/elements'), + // $model: path.resolve('src/model') + } + } + }, + adapter: adapter({ + // default options are shown + pages: 'build', + assets: 'build', + fallback: null + }), } }; diff --git a/tsconfig.json b/tsconfig.json index 773bd1f..4f9244b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -24,7 +24,9 @@ "checkJs": true, "paths": { "$lib": ["src/lib"], - "$lib/*": ["src/lib/*"] + "$lib/*": ["src/lib/*"], + "$elem":["src/elements"], + // "$model":["src/model"] } }, "include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.ts", "src/**/*.svelte"]