diff --git a/assets/favicon/android-chrome-192x192.png b/assets/favicon/android-chrome-192x192.png new file mode 100644 index 0000000..c8aed28 Binary files /dev/null and b/assets/favicon/android-chrome-192x192.png differ diff --git a/assets/favicon/android-chrome-512x512.png b/assets/favicon/android-chrome-512x512.png new file mode 100644 index 0000000..c046f0b Binary files /dev/null and b/assets/favicon/android-chrome-512x512.png differ diff --git a/assets/favicon/apple-touch-icon.png b/assets/favicon/apple-touch-icon.png new file mode 100644 index 0000000..90b6db1 Binary files /dev/null and b/assets/favicon/apple-touch-icon.png differ diff --git a/assets/favicon/browserconfig.xml b/assets/favicon/browserconfig.xml new file mode 100644 index 0000000..153c99b --- /dev/null +++ b/assets/favicon/browserconfig.xml @@ -0,0 +1,12 @@ + + + + + + + + + #dc0067 + + + diff --git a/assets/favicon/favicon-16x16.png b/assets/favicon/favicon-16x16.png new file mode 100644 index 0000000..62c4991 Binary files /dev/null and b/assets/favicon/favicon-16x16.png differ diff --git a/assets/favicon/favicon-32x32.png b/assets/favicon/favicon-32x32.png new file mode 100644 index 0000000..a4907a6 Binary files /dev/null and b/assets/favicon/favicon-32x32.png differ diff --git a/assets/favicon/favicon.ico b/assets/favicon/favicon.ico new file mode 100644 index 0000000..fc79f4e Binary files /dev/null and b/assets/favicon/favicon.ico differ diff --git a/assets/favicon/manifest.json b/assets/favicon/manifest.json new file mode 100644 index 0000000..e7e10e0 --- /dev/null +++ b/assets/favicon/manifest.json @@ -0,0 +1,18 @@ +{ + "name": "Meshviewer", + "icons": [ + { + "src": "./android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "./android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#dc0067", + "background_color": "#dc0067", + "display": "standalone" +} diff --git a/assets/favicon/mstile-144x144.png b/assets/favicon/mstile-144x144.png new file mode 100644 index 0000000..4be7a27 Binary files /dev/null and b/assets/favicon/mstile-144x144.png differ diff --git a/assets/favicon/mstile-150x150.png b/assets/favicon/mstile-150x150.png new file mode 100644 index 0000000..2ea0c5f Binary files /dev/null and b/assets/favicon/mstile-150x150.png differ diff --git a/assets/favicon/mstile-310x150.png b/assets/favicon/mstile-310x150.png new file mode 100644 index 0000000..b4bcb75 Binary files /dev/null and b/assets/favicon/mstile-310x150.png differ diff --git a/assets/favicon/mstile-310x310.png b/assets/favicon/mstile-310x310.png new file mode 100644 index 0000000..b2a9f39 Binary files /dev/null and b/assets/favicon/mstile-310x310.png differ diff --git a/assets/favicon/mstile-70x70.png b/assets/favicon/mstile-70x70.png new file mode 100644 index 0000000..82ea876 Binary files /dev/null and b/assets/favicon/mstile-70x70.png differ diff --git a/assets/favicon/safari-pinned-tab.svg b/assets/favicon/safari-pinned-tab.svg new file mode 100644 index 0000000..a732bc7 --- /dev/null +++ b/assets/favicon/safari-pinned-tab.svg @@ -0,0 +1,134 @@ + + + + +Created by potrace 1.11, written by Peter Selinger 2001-2013 + + + + + diff --git a/assets/faviconData.json b/assets/faviconData.json new file mode 100644 index 0000000..d4b60d2 --- /dev/null +++ b/assets/faviconData.json @@ -0,0 +1 @@ +{"result":{"status":"success"},"favicon":{"package_url":"https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/favicons.zip","files_urls":["https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/android-chrome-192x192.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/android-chrome-512x512.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/apple-touch-icon.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/browserconfig.xml","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/favicon-16x16.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/favicon-32x32.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/favicon.ico","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/manifest.json","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/mstile-144x144.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/mstile-150x150.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/mstile-310x150.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/mstile-310x310.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/mstile-70x70.png","https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/package_files/safari-pinned-tab.svg"],"html_code":"\n\n\n\n\n\n\n\n\n\n\n","compression":"true","overlapping_markups":["link[rel=\"apple-touch-icon\"]","meta[name=\"apple-mobile-web-app-title\"]","link[rel=\"shortcut\"]","link[rel=\"shortcut icon\"]","link[rel=\"icon\",sizes=\"16x16\"]","link[rel=\"icon\",sizes=\"32x32\"]","meta[name=\"msapplication-TileColor\"]","meta[name=\"msapplication-TileImage\"]","meta[name=\"msapplication-config\"]","meta[name=\"application-name\"]","link[rel=\"manifest\"]","meta[name=\"theme-color\"]","link[rel=\"mask-icon\"]"]},"files_location":{"type":"path","path":"."},"preview_picture_url":"https://realfavicongenerator.net/files/03dc81277d21a8ed4bb836b4c05ada2ee75b9e3c/favicon_preview.png","version":"0.14"} diff --git a/assets/logo.svg b/assets/logo.svg new file mode 100644 index 0000000..b8d9c32 --- /dev/null +++ b/assets/logo.svg @@ -0,0 +1,7 @@ + + + Meshviewer + + + + diff --git a/gulp/config.js b/gulp/config.js index 15413cb..f34cd8e 100644 --- a/gulp/config.js +++ b/gulp/config.js @@ -3,6 +3,7 @@ module.exports = function () { return { build: build, + faviconData: 'assets/faviconData.json', src: { sass: 'scss/**/*.scss', javascript: ['app.js', 'lib/**/*.js'], diff --git a/gulp/tasks/copy.js b/gulp/tasks/copy.js index ee2fb4c..b01325a 100644 --- a/gulp/tasks/copy.js +++ b/gulp/tasks/copy.js @@ -2,6 +2,8 @@ module.exports = function (gulp, plugins, config) { return function copy() { gulp.src(['html/*.html', 'assets/favicon/*']) .pipe(gulp.dest(config.build)); + gulp.src(['assets/logo.svg']) + .pipe(gulp.dest(config.build)); gulp.src('node_modules/promise-polyfill/promise.js') .pipe(gulp.dest(config.build + '/vendor')); return gulp.src(['assets/fonts/*', 'assets/icons/fonts/*']) diff --git a/gulp/tasks/favicon.js b/gulp/tasks/favicon.js new file mode 100644 index 0000000..cabe0f6 --- /dev/null +++ b/gulp/tasks/favicon.js @@ -0,0 +1,65 @@ +module.exports = function (gulp, plugins, config) { + return function javascript(cb) { + plugins.realFavicon.generateFavicon({ + masterPicture: 'assets/logo.svg', + dest: 'assets/favicon', + iconsPath: '.', + design: { + ios: { + pictureAspect: 'backgroundAndMargin', + backgroundColor: '#000000', + margin: '14%', + assets: { + ios6AndPriorIcons: false, + ios7AndLaterIcons: false, + precomposedIcons: false, + declareOnlyDefaultIcon: true + }, + appName: 'Meshviewer' + }, + desktopBrowser: {}, + windows: { + pictureAspect: 'noChange', + backgroundColor: '#dc0067', + onConflict: 'override', + assets: { + windows80Ie10Tile: false, + windows10Ie11EdgeTiles: { + small: true, + medium: true, + big: true, + rectangle: false + } + }, + appName: 'Meshviewer' + }, + androidChrome: { + // pictureAspect: 'shadow', + themeColor: '#dc0067', + manifest: { + name: 'Meshviewer', + display: 'standalone', + orientation: 'notSet', + onConflict: 'override', + declared: true + }, + assets: { + legacyIcon: false, + lowResolutionIcons: false + } + }, + safariPinnedTab: { + pictureAspect: 'silhouette', + themeColor: '#dc0067' + } + }, + settings: { + compression: 2, + scalingAlgorithm: 'Mitchell', + errorOnImageTooSmall: false + }, + markupFile: config.faviconData + }); + return cb(); + }; +}; diff --git a/gulp/tasks/html.js b/gulp/tasks/html.js index e675513..4994e6d 100644 --- a/gulp/tasks/html.js +++ b/gulp/tasks/html.js @@ -1,3 +1,4 @@ +const fs = require('fs'); module.exports = function (gulp, plugins, config, env) { return function html() { return gulp.src(env.production() ? config.build + '/*.html' : 'html/*.html') @@ -13,6 +14,7 @@ module.exports = function (gulp, plugins, config, env) { } })) .pipe(env.production(plugins.kyhInlineSource({ compress: false }))) + .pipe(plugins.realFavicon.injectFaviconMarkups(JSON.parse(fs.readFileSync(config.faviconData)).favicon.html_code)) .pipe(plugins.cacheBust({ type: 'timestamp' })) diff --git a/gulpfile.js b/gulpfile.js index b8d0d8d..e217c8f 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -14,6 +14,10 @@ function getTask(task) { return require('./gulp/tasks/' + task)(gulp, plugins, config, env); } +gulp.task('generate-favicon', + getTask('favicon') +); + require('./gulp/serve')(gulp, plugins, config, env); gulp.task('serve', gulp.series( diff --git a/html/index.html b/html/index.html index 57d4051..b44227d 100644 --- a/html/index.html +++ b/html/index.html @@ -15,7 +15,8 @@

Lade
-
+ +
Karten & Knoten...