diff --git a/package.json b/package.json index 34dcd266..0e2d6dc6 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,7 @@ }, "scripts": { "start": "vite", + "preview": "vite preview", "build:web": "VITE_BUILD_TARGET=web ./script/build.sh", "build:ext": "VITE_BUILD_TARGET=extension ./script/build.sh", "build:firefox": "VITE_BUILD_PLATFORM=firefox ./script/build-firefox.sh", diff --git a/public/base.manifest.json b/public/base.manifest.json index fe10a1b3..13f81829 100644 --- a/public/base.manifest.json +++ b/public/base.manifest.json @@ -1,7 +1,7 @@ { "name": "Hackertab.dev - developer news", "description": "All developer news in one tab", - "version": "1.18.5", + "version": "1.20.1", "chrome_url_overrides": { "newtab": "index.html" }, diff --git a/public/screenshots/screenshot_desktop_1.webp b/public/screenshots/screenshot_desktop_1.webp new file mode 100644 index 00000000..4751ebc0 Binary files /dev/null and b/public/screenshots/screenshot_desktop_1.webp differ diff --git a/public/screenshots/screenshot_mobile_1.webp b/public/screenshots/screenshot_mobile_1.webp new file mode 100644 index 00000000..70ae5836 Binary files /dev/null and b/public/screenshots/screenshot_mobile_1.webp differ diff --git a/public/web_manifest.json b/public/web_manifest.json index ebc90e5b..d59d6f92 100644 --- a/public/web_manifest.json +++ b/public/web_manifest.json @@ -19,6 +19,22 @@ "sizes": "512x512" } ], + "screenshots": [ + { + "src": "/screenshots/screenshot_mobile_1.webp", + "sizes": "485x1024", + "type": "image/webp", + "form_factor": "narrow", + "label": "Hackertab is available on Desktop and Mobile." + }, + { + "src": "/screenshots/screenshot_desktop_1.webp", + "sizes": "1280x720", + "type": "image/webp", + "form_factor": "wide", + "label": "Hackertab is available on Desktop and Mobile." + } + ], "start_url": "/?source=pwa", "background_color": "#000000", "display": "standalone", diff --git a/script/build-chrome.sh b/script/build-chrome.sh index 2bfc9c51..ff6cb156 100755 --- a/script/build-chrome.sh +++ b/script/build-chrome.sh @@ -22,4 +22,4 @@ yarn build:ext # Zip the distribution folder echo 'Zip the extension' -cd dist/ && zip -r ../chrome_extension.zip * -x "*.DS_Store" && cd .. \ No newline at end of file +cd dist/ && zip -r ../chrome_extension.zip * -x "*.DS_Store" "web_manifest.json" "screenshots/*" "images/*" "favicon.ico" "robots.txt" "base.manifest.json" "chrome.manifest.json" "firefox.manifest.json" && cd .. \ No newline at end of file diff --git a/script/build-firefox.sh b/script/build-firefox.sh index 55b6d43e..f6b06f86 100755 --- a/script/build-firefox.sh +++ b/script/build-firefox.sh @@ -27,7 +27,7 @@ yarn build:ext # Zip the distribution folder echo 'Zip the extension' -cd dist/ && zip -r ../firefox_extension.zip * -x "*.DS_Store" && cd .. +cd dist/ && zip -r ../firefox_extension.zip * -x "*.DS_Store" "web_manifest.json" "screenshots/*" "images/*" "favicon.ico" "robots.txt" "base.manifest.json" "chrome.manifest.json" "firefox.manifest.json" && cd .. # echo 'Zip the source code' diff --git a/script/build-web.sh b/script/build-web.sh deleted file mode 100755 index 3851312b..00000000 --- a/script/build-web.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -build() { - echo 'building app for web' - - export INLINE_RUNTIME_CHUNK=false - export GENERATE_SOURCEMAP=false - - craco --max_old_space_size=4096 build - - rm -rf dist - mkdir -p dist - cp -r build/* dist/ -} - -build \ No newline at end of file diff --git a/src/assets/kagi_logo.svg b/src/assets/kagi_logo.svg new file mode 100644 index 00000000..ce322b2e --- /dev/null +++ b/src/assets/kagi_logo.svg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/components/Elements/Panel/panel.css b/src/components/Elements/Panel/panel.css index c45d6227..39938efa 100644 --- a/src/components/Elements/Panel/panel.css +++ b/src/components/Elements/Panel/panel.css @@ -22,7 +22,7 @@ } .dark .panel.information { - background-color: #3b424b; + background-color: #1f242a; color: white; } .light .panel.information { diff --git a/src/components/Layout/Header.tsx b/src/components/Layout/Header.tsx index 386e4a45..749928b7 100644 --- a/src/components/Layout/Header.tsx +++ b/src/components/Layout/Header.tsx @@ -61,8 +61,6 @@ export const Header = () => { setDNDDuration('never') } - console.log('location', location) - return ( <>
diff --git a/src/config/index.tsx b/src/config/index.tsx index 85be9f68..e12d777a 100644 --- a/src/config/index.tsx +++ b/src/config/index.tsx @@ -6,6 +6,7 @@ import { ReactComponent as PhindLogo } from 'src/assets/phind_logo.svg' import { ReactComponent as StartPageLogo } from 'src/assets/startpage_logo.svg' import { ReactComponent as YahooLogo } from 'src/assets/yahoo_logo.svg' import { ReactComponent as YandexLogo } from 'src/assets/yandex_logo.svg' +import { ReactComponent as KagiLogo} from 'src/assets/kagi_logo.svg' // Keys export const ANALYTICS_ENDPOINT = import.meta.env.VITE_AMPLITUDE_URL as string @@ -70,6 +71,11 @@ export const SUPPORTED_SEARCH_ENGINES = [ logo: PhindLogo, className: 'themeAdaptiveFillColor', }, + { + label: 'Kagi', + url: 'https://kagi.com/search?q=', + logo: KagiLogo, + }, ] export const LS_PREFERENCES_KEY = 'hackerTabPrefs' diff --git a/src/features/cards/components/aiCard/ArticleItem.tsx b/src/features/cards/components/aiCard/ArticleItem.tsx index 8fee50ca..4068c5fa 100644 --- a/src/features/cards/components/aiCard/ArticleItem.tsx +++ b/src/features/cards/components/aiCard/ArticleItem.tsx @@ -36,6 +36,13 @@ const ArticleItem = (props: BaseItemPropsType
) => { {item.title}

+ {listingMode === 'compact' && ( +
+ + {item.source} + +
+ )} {listingMode === 'normal' && (
diff --git a/vite.config.ts b/vite.config.ts index 4406939c..028da990 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -37,8 +37,8 @@ export default defineConfig(({ mode }) => { rollupOptions: { output: { entryFileNames: `assets/[name].js`, - chunkFileNames: `assets/[name].js`, - assetFileNames: `assets/[name].[ext]`, + chunkFileNames: `assets/[name]-[hash].js`, + assetFileNames: `assets/[name]-[hash].[ext]`, manualChunks: { core: [ 'react',