From 5520883f0092ac9d3747fbb951961205c2d39493 Mon Sep 17 00:00:00 2001 From: Wanjohi <71614375+wanjohiryan@users.noreply.github.com> Date: Fri, 30 Aug 2024 10:35:24 +0300 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20feat:=20Add=20SEO=20stuff?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/www/public/favicon.ico | Bin 0 -> 365 bytes apps/www/public/favicon.svg | 15 +++- apps/www/public/manifest.json | 23 ++++-- .../www/public/seo/android-chrome-192x192.png | Bin 0 -> 618 bytes .../www/public/seo/android-chrome-512x512.png | Bin 0 -> 1289 bytes apps/www/public/seo/apple-touch-icon.png | Bin 0 -> 625 bytes .../{images/next.png => seo/banner.png} | Bin apps/www/public/seo/browserconfig.xml | 9 +++ apps/www/public/seo/favicon-16x16.png | Bin 0 -> 573 bytes apps/www/public/seo/favicon-32x32.png | Bin 0 -> 608 bytes apps/www/public/seo/favicon.ico | Bin 0 -> 15086 bytes apps/www/public/seo/mstile-150x150.png | Bin 0 -> 696 bytes apps/www/public/seo/safari-pinned-tab.svg | 19 +++++ apps/www/public/seo/site.webmanifest | 18 +++++ apps/www/src/components/router-head/index.tsx | 69 ++++++++++++++++++ .../components/router-head/router-head.tsx | 48 ------------ apps/www/src/root.tsx | 2 +- apps/www/src/routes/index.tsx | 13 +--- apps/www/tsconfig.json | 2 +- 19 files changed, 150 insertions(+), 68 deletions(-) create mode 100644 apps/www/public/favicon.ico create mode 100644 apps/www/public/seo/android-chrome-192x192.png create mode 100644 apps/www/public/seo/android-chrome-512x512.png create mode 100644 apps/www/public/seo/apple-touch-icon.png rename apps/www/public/{images/next.png => seo/banner.png} (100%) create mode 100644 apps/www/public/seo/browserconfig.xml create mode 100644 apps/www/public/seo/favicon-16x16.png create mode 100644 apps/www/public/seo/favicon-32x32.png create mode 100644 apps/www/public/seo/favicon.ico create mode 100644 apps/www/public/seo/mstile-150x150.png create mode 100644 apps/www/public/seo/safari-pinned-tab.svg create mode 100644 apps/www/public/seo/site.webmanifest create mode 100644 apps/www/src/components/router-head/index.tsx delete mode 100644 apps/www/src/components/router-head/router-head.tsx diff --git a/apps/www/public/favicon.ico b/apps/www/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..a907041f4fb7a5ad69b186f5cd7f49cf54d57474 GIT binary patch literal 365 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC&H|6fVg?2sFA!!duPX5c3QCr^ zMwA5SrERP@W!#W5tK@$C#nzC#WIuK#uB zEa2;QQxufAaDa6On^5BusThV25-dWkY?0TcFF2Z(aH!;Z{Mvoe=KEyP|EiPU<+z3l z8aKv1h>vOL<=#-pXcjwJY*Skc<4SK+ll_V7XDdZ9o{(5Id71T9=Sf9fbuD0JopA^1 z+(LsK-Y?M;op?p1{=$Tf$|jQ)nI_4n-*)Wdao;O;k&ERfQ^t2K!2%|O+T$mH=IR|d z#(LvMwZipK5%EaQ`>i)_2+k@mYv}Wc)lw3dnRi+#lJTNkL*3=6uNL+rS@huX`z`Yn u6@S-lQO&5+c8^!Rv4cTcJmE1@PMoj0QOm0~mv~?(FnGH9xvX \ No newline at end of file + + + + + + diff --git a/apps/www/public/manifest.json b/apps/www/public/manifest.json index c18e75f7..931df68f 100644 --- a/apps/www/public/manifest.json +++ b/apps/www/public/manifest.json @@ -1,9 +1,22 @@ { "$schema": "https://json.schemastore.org/web-manifest-combined.json", - "name": "qwik-project-name", - "short_name": "Welcome to Qwik", + "name": "Nestri", + "short_name": "Nestri - Your games. Your rules.", "start_url": ".", "display": "standalone", - "background_color": "#fff", - "description": "A Qwik project app." -} + "background_color": "#fafafa", + "description": "Nestri - Your games. Your rules.", + "icons": [ + { + "src": "/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#fafafa" +} \ No newline at end of file diff --git a/apps/www/public/seo/android-chrome-192x192.png b/apps/www/public/seo/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..28422101bab5a6a8b3b8ea34f9933ab92511e00e GIT binary patch literal 618 zcmeAS@N?(olHy`uVBq!ia0vp^2SAvE8Azrw%`pX1Ea{HEjtmSN`?>!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$XBC}9@h6XN>+?bH9yZvVf1 z`v2Cc|5KIzuj%;j&-j1G%>P-M|FgCJzqtGV!R7zY?)<-Z{{Qyr|1(toXR7`G|6eHZ zqXf_d#w2fd7r{qcZFd1V>?NMQuIw*3M1)1;Q~2u71BK3cx;TbZ+x0R@K! zB*uTy4QswLU0Z6IP(5XXDLX^Ksed|&`Fs_!@0t3-iygjio&Z$rB``rv!Pj9{g9&3M z(l-ewVHYv|@?^rdnTzsA`Ar{)cweUuJ{2 zj^RVH-GgGIn4GDWw}B$6C9V-ADTyViR>?)FK#IZ0z{o_`z(Uu^AjHtp%E-XV*ihTR zz{nC}Q!>*kach|Nc^(T;LwHq4L`hI$xk5ovep+TuszOO+L8?M#K}j+L zL&coOpLjS5!!$Hb`JX=H`80@uS(#fenOj&{*n6@Fv#^3ogUR6(X64Nx3a4*eIdSC7 i5t$?GryD#LcLqiJ#!!Mvv!wUw6QUeBtR|yOZRx=nF#0%!^3bX-A_yzccxc-0p^#AL} z|Li^%L@&C&Q{|~SHzoz5=+Rp!Pp8S9H z@c+d<{|_$ve`xvtr?>u3i2ENc^gmwW|NsB5mSkiAO=e8;c6X6{lee`4$YC$>^mS!_ z!670nBA>!nf1ZJXIn>j|F{I+w+uPn@N`VY6j*N_38Gmx@_&@aJ@~@bhawYfWumToi*dr-C0tAybF2 z!yJZ3ECT8c7K}#*rO=M)yblU&YK?ba{%BD3QuDbew?+RwNkqW>Sgm*cHvi_`vHCy{ z7S!9+&%FD&P=4`qjL`2aE=DEF!0_JEz$;+(q9jXvob^$xN%ntzp{dc`QH;;Z-3K zB|(Yh3I#>^X_+~x3MG{VsS23|CCLm76>}bc;^8O^)6h8OfBKB)(;xZee9% z@5v&}!U`@8CWlj)l{bedoW618#E~;cWR9?(Ztz&(rN{6}T(IPmlj&5D|2!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$XBDB%&{6XN>+?bH9y@BH60 z@BgL=|L>jupP~BSpYeaX%K!Tp{}-A3j}rVJBmDo>!~a(g|G&8B|I7RTPj38wX!-v` zEB@cR@IOcUe=z(15YGSq|C?m5I}S9HG0EHAMV$NEjD8@8y~NYkmHh>Wh_Hy9FsFYc zQ0TCyi(^Q|t+#h>@-{p0I5;W@^f~OfT)#4tajnQ&nKZ46`O|cFY5*02z`v+S+fA!Z zwY=C>nRfMx=EdB5FT%EDTwLVZEv6d?)FK#IZ0z{o_`z(Uu^AjHtp%E-XV z*g)IBz{C<#g|S12gTPs_|nRVb+}NL9!z zC`o2usF?Hk6AwpWn1;qF|I=qYp9V27D|725a| + + + + + #ffede5 + + + diff --git a/apps/www/public/seo/favicon-16x16.png b/apps/www/public/seo/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..9f22bfef3ffc9e1b194cef0611e30b93050445fd GIT binary patch literal 573 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU$g(vPY0F z14ES>14Ba#1H&(%P{RubhEf9thF1v;3|2E37{m+a>K7^r@(X5Qvv3tV^XrHBCBE8OGr6J*^3CUDivndClf2zsgn4$yOapQ_3p^r= z85nOAfH3328#;%8g6t)pzOL*qI7Ea+BY{HBo-U3d5|>-gd2%r*@Hk(zI3Kn5 zf8t$HMeh5XK6p3iC*M6R^+RBC*Foj!pEV@6eqC6#dWQG5Nv4(ynN`0`5t4GdykD>X z4ad|iAMZ8;jZ-agjVMV;EJ?LWE=mPb3`PbehL%=F23E!f+6D$z1_q8d zb$L)UsHgKi%N5z)O$emAGKZCnwXXKr0wL MUHx3vIVCg!0LK5h761SM literal 0 HcmV?d00001 diff --git a/apps/www/public/seo/favicon-32x32.png b/apps/www/public/seo/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..79e1cce5d950c91806e2fe53e53577a312ac6c5b GIT binary patch literal 608 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10!ZpAr#1%;Y_h+OC{r^8B zbJkj*L82u=e!&b3tWo8q+(!=l`^9YKKn09R-tI19H5XS%0y&%o z9+AZij5i8Em~r6^okKuD_7YEDSN0biBEll_DSY+kfkIK9E{-7|b}6lzf5ak%i^mm7I|4cqSWNG@(X84r*gyuQM>0F}o zny($_?YSrRQo%0BCYVQcS=_?rFPY^Zm`+7&P8B-72xtj|YKdz^NlIc#s#S7PDv)9@ zGB7gHHL%b%G6*rWv@$ZVGB(sUFt9Q(c)m_;2a1N={FKbJO57TzeV)ex)F276Aviy+ zq&%@Gm7%=6TrV>(yEr+qAXP8FD1G)j8!4co@T!oAlAy$Lg@U5|w9K4Tg_6pGRE5lf zl4J&kiaC!z@o*G|X=t4CKYhmYX%GXmGPhnbx3IFX_hb=fVFi~4lfx;@%9}$JPT#n4 m;>ejJGDp}?H+U@Y(qnifE?Dx($#g2v3IzGa?cM(Q#Si5qV{# zJipl|a)<&`C<7DO0L-s#6ZJ%YRRL8%6;K6!S%FHJkxH0#oJ_l`&Q!u2*ahd{%uyH{ zW6Z^`0eN|F2|~wVjCqaU+I>>}?Y0rs-%b7d&@UZ<2XN;ojEym3meaZ+zXV1dr_>s` z|2fb+3+BKoSaB4_#u&44#gWJH!v)~@;muJP8)MY*gS|dfpI`R0XZ=_G-PPac{?qH{ zSNwVA<1yN{x8pa&?)CVYV~VJ6)%BBf`&WH_rK|5(^;h**{lBUs-OhKaKVGk&*TxGT zzrXNtyrVIz0;+&2U{isxwu$^SeP-|@B2P>Qex7#n@9N(**WD@ZUi0~#Rsa@2<2x;U z%cYwt;F7XS4s+_W!@zKi^StOlW2NX`VxxssewlKz%)-^|vaLi(^W~^UZO$^X6PU zG&^PphS+Mv`XhYjEa058McX$VBr1d9J{k7QiYOceOYsqyE@SjGc RiWw~P%rWEKwBRS~* z{~YHXOMv=?N`m}?86>SNv%h>Q{HGZgtLWpM_xtCZv$u`{Wf_ya-CcxvcE?Nua@b2e zeO=jKaEJ(t$fxktp9c#4@N{tuskrs_j-ybMfq<){gMg#Jhkxy*vSyK%&8gpc|3xoV zn7WJ+s1g-4)L$suZV)?r@3vL)?-JYWs&lXY;4?{EKh>Gf^2r1cv4aQ70P{|$AJ;st ze1`wYjA!XHDo@36GaQ`uRWvPj)Ag|2--2oPfwbk4(~9jfMJK?-M1Pn$Anl)imc)EW zW@OlRB6Md{_mt%_d@rHuK#Ef)!!4cQ+*dO%U$^3pII45ecn^&1W(oeCqOW(l7$~D! z;u=wsl30>zm0Xkxq!^40j7)S5EOd3oE!Zm>f=FR^A+ + + + +Created by potrace 1.14, written by Peter Selinger 2001-2017 + + + + + + + diff --git a/apps/www/public/seo/site.webmanifest b/apps/www/public/seo/site.webmanifest new file mode 100644 index 00000000..4853690e --- /dev/null +++ b/apps/www/public/seo/site.webmanifest @@ -0,0 +1,18 @@ +{ + "name": "Nestri", + "short_name": "Nestri", + "icons": [ + { + "src": "/icons/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/icons/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#fafafa", + "background_color": "#fafafa", + "display": "standalone"} diff --git a/apps/www/src/components/router-head/index.tsx b/apps/www/src/components/router-head/index.tsx new file mode 100644 index 00000000..2c32f9c5 --- /dev/null +++ b/apps/www/src/components/router-head/index.tsx @@ -0,0 +1,69 @@ +import { component$ } from "@builder.io/qwik"; +import { useDocumentHead, useLocation } from "@builder.io/qwik-city"; + +/** + * The RouterHead component is placed inside of the document `` element. + */ +export const RouterHead = component$(() => { + const head = useDocumentHead(); + const loc = useLocation(); + const domain = loc.url.origin; + + return ( + <> + {loc.url.pathname === "/" ? "Nestri – Your games. Your rules." : `${loc.url.pathname.split("/")[1].charAt(0).toUpperCase() + loc.url.pathname.split("/")[1].slice(1)} – Nestri`} + + + + {/**For SEO optimisation purposes refrain from SVG favicons and use PNG instead */} + {/* */} + {/* + + + */} + + + + + {/**@ts-ignore */} + + + + + + + + + + + + {head.meta.map((m) => ( + + ))} + + {head.links.map((l) => ( + + ))} + + {head.styles.map((s) => ( +