CINXE.COM
Web Design Agency | Web Design London | Website Design Richmond
<!DOCTYPE html> <html lang='en'> <head> <!-- _<:##B> _.=> /####B>~. :?P@@#/ /#. .6#@#/ /#@@@@@@@@@B>~. :5@@@#/ /#@@| ~#@#/ /#@@@@@@@@@@@@@@B> /&@@#/ /#@@@@| #@#/ /#@@@@@@@@@@@@@@#/ .. #@#/ /#@@@@@@| #/ /#@@@@@@@@@@@@@@#/ /#@@@5. #/ /#@@@@@@@@| /@@@@@@@@@@@@@@@#/ /#@@@@@@B: /#@@@@@@@@#/ |@@@@@@@@@@@@@@#/ /#@@@@@@@@@#. |#@@@@@@@@#/ /# |@@@@@@@@@@@@#/ /#@@@@@@@@@@@# |@@@@@@@#/ /#@# |@@@@@@@@@#/ /#@@@@@@@@@@@@#/ /\ |@@@@@#/ /#@@@# |@@@@@@@#/ /#@@@@@@@@@@@@#/ /#@@| |@@@#/ /#@@@@@# |@@@@@#/ /#@@@@@@@@@@@@#/ /#&@@@| |@#/ /#@@@@@@@# |@@@#/ /#@@@@@@@@@@@@#/ /#@@@@@5 |/ /#@@@@@@@@@# |@#/ /#@@@@@@@@@@@@#/ /#@@@@@@&^ /#@@@@@@@@@@@# |/ /#@@@@@@@@@@@@#/ /#@@@@@@@@7 |@@@@@@@@@@@@# /#@@@@@@@@@@@@#/ /#@@@@@@@@&7 |@@@@@@@@@@#/. .#@@@@@@@@@@@@#/ /#@@@@@@@@&5/ |@@@@@@@@#/ /# |@@@@@@@@@@@#/ /#@@@@@@@@#J^ |@@@@@@#/ /#@# |@@@@@@@@@#/ /#@@@@@@#JB-^ |@@@@#/ /##### |@@@@@@@@/ /#@@@@@#>~ --> <meta http-equiv="content-type" content="text/html; charset=utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="preconnect" href="https://use.typekit.net" crossorigin><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link rel='icon' type='image/png' href='/site/templates/assets/images/favicon.png?h=2b706be5dc7570b9'><!-- rendered 2024-11-26T16:39:56+00:00--><link rel="canonical" href="https://www.netdreams.co.uk/" /> <title>Web Design Agency | Web Design London | Website Design Richmond</title> <meta name="title" content="Web Design Agency | Web Design London | Website Design Richmond" /> <meta name="description" content="London's top web design agency, ID Studio. Award winning website design and web development company with offices in central London and Richmond, Surrey." /> <meta property="og:url" content="https://www.netdreams.co.uk/" /> <meta property="og:title" content="Web Design Agency | Web Design London | Website Design Richmond" /> <meta property="og:description" content="London's top web design agency, ID Studio. Award winning website design and web development company with offices in central London and Richmond, Surrey." /> <meta property="og:site_name" content="ID Studio Web Agency" /> <meta property="og:type" content="website" /> <meta property="og:image" content="https://www.netdreams.co.uk/site/assets/files/1025/id-studio-cover-1200x628.1200x628.png" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="628" /> <meta property="og:image:type" content="image/png" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:title" content="Web Design Agency | Web Design London | Website Design Richmond" /> <meta name="twitter:url" content="https://www.netdreams.co.uk/" /> <meta name="twitter:description" content="London's top web design agency, ID Studio. Award winning website design and web development company with offices in central London and Richmond, Surrey." /> <meta name="twitter:image" content="https://www.netdreams.co.uk/site/assets/files/1025/id-studio-cover-1200x628.200x200.png" /> <script type="application/ld+json">{ "@context": "http:\/\/schema.org", "@type": "WebSite", "alternateName": [ "ID Studio" ], "description": "London's top web design agency, ID Studio. Award winning website design and web development company with offices in central London and Richmond, Surrey.", "image": [ "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.600x600.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.480x540.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.800x450.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.png" ], "name": "ID Studio Web Agency", "url": "https:\/\/www.netdreams.co.uk\/" }</script><script type="application/ld+json">{ "@context": "http:\/\/schema.org", "@type": "Organization", "address": [ { "@type": "PostalAddress", "addressCountry": "UK", "addressLocality": "London South Bank", "addressRegion": "London", "email": "london@netdreams.co.uk", "name": "ID Studio Web Agency Southbank London", "postalCode": "SE1 9LQ", "streetAddress": "30 Stamford Street", "telephone": "02039084428" }, { "@type": "PostalAddress", "addressCountry": "UK", "addressLocality": "Richmond", "addressRegion": "Surrey", "email": "richmond@netdreams.co.uk", "name": "ID Studio Web Agency Richmond Office", "postalCode": "TW9 2PQ", "streetAddress": "56 Kew Road", "telephone": "02089485808" }, { "@type": "PostalAddress", "addressCountry": "UK", "addressLocality": "London Fitzrovia", "addressRegion": "London", "email": "london@netdreams.co.uk", "name": "ID Studio Web Agency Tottenham Court Road London", "postalCode": "W1T 4TQ", "streetAddress": "85 Tottenham Court Road", "telephone": "02039084428" } ], "description": "London's top web design agency, ID Studio. Award winning website design and web development company with offices in central London and Richmond, Surrey.", "email": "richmond@netdreams.co.uk", "image": [ "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.600x600.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.480x540.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.800x450.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.png" ], "logo": "https:\/\/www.netdreams.co.uk\/site\/templates\/assets\/images\/id-logo-black.svg?h=4c2683db45be9bc8", "name": "ID Studio Web Agency", "sameAs": [ "https:\/\/www.linkedin.com\/company\/idstudio-web-agency", "https:\/\/twitter.com\/IDStudio_", "https:\/\/www.facebook.com\/IDStudioWebAgency", "https:\/\/www.instagram.com\/idstudiowebagency\/", "https:\/\/dribbble.com\/idstudiowebagency" ], "telephone": "020 8948 5808", "url": "https:\/\/www.netdreams.co.uk\/" }</script><script type="application/ld+json">{ "@context": "http:\/\/schema.org", "@id": "https:\/\/www.netdreams.co.uk\/#london-south-bank-office", "@type": "LocalBusiness", "address": { "@type": "PostalAddress", "addressCountry": "UK", "addressLocality": "London South Bank", "addressRegion": "London", "postalCode": "SE1 9LQ", "streetAddress": "30 Stamford Street" }, "email": "london@netdreams.co.uk", "image": [ "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.600x600.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.480x540.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.800x450.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.png" ], "name": "ID Studio Web Agency Southbank London", "parentOrganization": { "@type": "Organization", "name": "ID Studio Web Agency" }, "telephone": "02039084428" }</script><script type="application/ld+json">{ "@context": "http:\/\/schema.org", "@id": "https:\/\/www.netdreams.co.uk\/#richmond-office", "@type": "LocalBusiness", "address": { "@type": "PostalAddress", "addressCountry": "UK", "addressLocality": "Richmond", "addressRegion": "Surrey", "postalCode": "TW9 2PQ", "streetAddress": "56 Kew Road" }, "email": "richmond@netdreams.co.uk", "hasMap": "https:\/\/www.google.com\/maps\/place\/ID+Studio+Web+Agency+Ltd\/@51.4636715,-0.3002675,15z\/data=!4m6!3m5!1s0x48760c313fe0c755:0xb26a0289d78650f9!8m2!3d51.4653794!4d-0.2990206!16s%2Fg%2F1tk6zzrd", "image": [ "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.600x600.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.480x540.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.800x450.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.png" ], "name": "ID Studio Web Agency Richmond Office", "parentOrganization": { "@type": "Organization", "name": "ID Studio Web Agency" }, "telephone": "02089485808" }</script><script type="application/ld+json">{ "@context": "http:\/\/schema.org", "@id": "https:\/\/www.netdreams.co.uk\/#london-tottenham-court-road-office", "@type": "LocalBusiness", "address": { "@type": "PostalAddress", "addressCountry": "UK", "addressLocality": "London Fitzrovia", "addressRegion": "London", "postalCode": "W1T 4TQ", "streetAddress": "85 Tottenham Court Road" }, "email": "london@netdreams.co.uk", "image": [ "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.600x600.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.480x540.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.800x450.png", "https:\/\/www.netdreams.co.uk\/site\/assets\/files\/1025\/id-studio-cover-1200x628.png" ], "name": "ID Studio Web Agency Tottenham Court Road London", "parentOrganization": { "@type": "Organization", "name": "ID Studio Web Agency" }, "telephone": "02039084428" }</script><!-- Google tag (gtag.js) --><script async src="https://www.googletagmanager.com/gtag/js?id=G-YSWCLBR2SQ"></script><script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-YSWCLBR2SQ'); gtag('config', 'AW-925328592', { 'allow_enhanced_conversions': true }); </script><script type="text/javascript" charset="UTF-8" src="//cdn.cookie-script.com/s/6b2dea4952e7fd860a3fe27058d5f028.js"></script> <link rel='stylesheet' type='text/css' href='/site/templates/assets/css/main.css?h=39d9b0625f1cc553'/> <link rel='stylesheet' type='text/css' href='/site/assets/generated/use_typekit_net_mtn4npa.css?h=8e12236f15b1e9ba'/> <link rel='stylesheet' type='text/css' href='https://fonts.googleapis.com/css2?family=DM+Mono:wght@500&display=swap'/><style>.grecaptcha-badge { visibility: hidden; } .chatbot-wrapper { max-width: 20em; position: relative; top: 70%; overflow: visible; } .chatbot-wrapper .convo { position: absolute; bottom: 0; left: 0; right: 0; } .chatbot-wrapper .options { position: absolute; top: 0; left: 0; right: 0; text-align: right; } .chatbot-wrapper .option { cursor: pointer; display: inline-block; width: fit-content; min-height: 28px; padding: 10px; border-radius: 5px; margin-bottom: 12px; margin-left: 12px; font-family: 'DM Mono'; font-size: 12px; line-height: 1em; background: #0037FC; color: #fff; } .chatbot-wrapper .message { width: fit-content; min-height: 28px; padding: 10px; border-radius: 5px; margin-bottom: 12px; font-family: 'DM Mono'; font-size: 12px; line-height: 1.2; background: #E9FFFE; color: #1D2027; } .chatbot-wrapper .message span { white-space: pre-wrap; } .chatbot-wrapper .message.response { margin-left: auto; background: #1D2027; color: #fff; } .chatbot-wrapper .message .link { }.irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.1250x620.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.1250x620.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.1250x620.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.1250x620.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.1250x620.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb.1250x620.png'); } @media (max-width: 1600px) and (min-width: 1280px) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.1430x800.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.1430x800.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.1430x800.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.1430x800.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.1430x800.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb.1430x800.png'); }} @media (max-width: 1600px) and (min-width: 1280px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 1600px) and (min-width: 1280px) and (min-resolution: 144dpi) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.1787x1000.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.1787x1000.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.1787x1000.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.1787x1000.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.1787x1000.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb.png'); }} @media (max-width: 1280px) and (min-width: 1024px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 1280px) and (min-width: 1024px) and (min-resolution: 144dpi) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.1875x930.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.1875x930.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.1875x930.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.1875x930.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb.png'); }} @media (max-width: 1280px) and (min-width: 1024px) and (-webkit-min-device-pixel-ratio: 2), (max-width: 1280px) and (min-width: 1024px) and (min-resolution: 192dpi) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.1917x950.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.1917x950.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.1917x950.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.1922x953.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.1917x950.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb.1920x952.png'); }} @media (max-width: 1024px) and (min-width: 991px) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.994x1175.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.994x1175.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.994x1175.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.994x1175.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.994x1175.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb.994x1175.png'); }} @media (max-width: 991px) and (min-width: 768px) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_mobile.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_mobile2.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_mobile.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_mobile.961x1309.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_mobile.961x1309.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb-mob.961x1309.png'); }} @media (max-width: 768px) and (min-width: 414px) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_mobile.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_mobile2.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_mobile.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_mobile.737x1016.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_mobile.737x1016.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb-mob.737x1016.png'); }} @media (max-width: 414px) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_mobile.384x687.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_mobile2.384x687.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_mobile.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_mobile.384x687.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_mobile.384x687.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb-mob.384x687.png'); }} @media (max-width: 2240px) and (min-width: 1600px) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.1750x944.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.1750x944.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.1750x944.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.1750x944.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb.png'); }} @media (max-width: 2240px) and (min-width: 1600px) and (-webkit-min-device-pixel-ratio: 1.5), (max-width: 2240px) and (min-width: 1600px) and (min-resolution: 144dpi) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.1853x1000.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.1853x1000.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.1853x1000.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.1853x1000.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.1853x1000.png'); }} @media (min-width: 2240px) { .irosebank-featured-png-9939 { background-image: url('/site/assets/files/9939/rosebank_featured.png'); } .isn-featured2-png-9874 { background-image: url('/site/assets/files/9874/sn_featured2.png'); } .idiary-featured-png-9865 { background-image: url('/site/assets/files/9865/diary_featured.png'); } .icroud-featured-png-9987 { background-image: url('/site/assets/files/9987/croud_featured.1750x1232.png'); } .ikh-featured-png-9953 { background-image: url('/site/assets/files/9953/kh_featured.1750x1232.png'); } .iid-studio-lb-png-9980 { background-image: url('/site/assets/files/9980/id-studio-lb.1750x1232.png'); }}</style></head><body data-anm=".anm" class='loaded'><a href="/" class="logo-fixed"><svg width="45" height="38" viewBox="0 0 45 38" fill="#fff" xmlns="http://www.w3.org/2000/svg"><path d="M43.9893 15.9488C36.7779 23.104 29.6321 30.1942 22.4207 37.3494C19.9295 37.3494 17.4383 37.3494 14.9471 37.3494C14.9471 34.9427 14.9471 32.6009 14.9471 30.1942C22.9452 22.3234 30.9432 14.3876 39.0069 6.38676C41.7603 8.98867 43.2681 12.3061 43.9893 15.9488Z"/><path d="M15.7339 9.96449C19.0118 6.71211 22.2897 3.45973 25.6331 0.20735C30.6811 -0.117888 35.2046 1.37821 39.2692 4.50049C31.4022 12.3062 23.6008 20.0469 15.7339 27.7875C15.7339 21.9332 15.7339 15.9489 15.7339 9.96449Z"/><path d="M0.655566 36.8942C0.655566 33.1214 0.655566 29.3486 0.655566 25.6409C4.78571 21.5429 8.91586 17.4449 13.046 13.3469C13.046 19.2663 13.046 25.1205 13.046 31.0399C11.0793 32.9913 9.11253 34.9427 7.1458 36.8942C5.04794 36.8942 2.88453 36.8942 0.655566 36.8942Z"/><path d="M24.1252 37.2844C31.0088 30.4544 37.8924 23.6244 44.776 16.8594C44.8415 17.1847 44.8415 17.575 44.9071 17.9002C45.3004 22.0632 44.4482 25.9661 42.2848 29.5437C41.367 31.1049 40.1869 32.3408 38.6791 33.3815C35.8601 35.333 32.7133 36.5689 29.3043 37.1543C28.7143 37.2193 28.0587 37.2844 27.4687 37.2844C26.4853 37.2844 25.502 37.2844 24.5186 37.2844C24.3875 37.2844 24.2564 37.2844 24.1252 37.2844Z"/><path d="M12.3904 12.2411C8.26029 16.3391 4.13015 20.4371 0 24.5351C0 21.2177 0 17.8352 0 14.5178C4.13015 10.4198 8.26029 6.3218 12.3904 2.2238C12.3904 5.54123 12.3904 8.9237 12.3904 12.2411Z"/><path d="M12.7182 0.0772441C8.58809 4.17524 4.45794 8.27324 0.327795 12.3062V12.2411C0.327795 10.8751 0.262237 9.4441 0.327795 8.0781C0.393353 6.45191 1.11449 5.02086 2.16342 3.78496C3.54013 2.15877 5.31019 1.11801 7.40804 0.597625C9.11255 0.142292 10.8171 -0.0528512 12.5216 0.0121964C12.5871 0.0121964 12.6527 0.0772441 12.7182 0.0772441Z"/><path d="M15.1438 8.85848C15.1438 8.53324 15.2093 8.20801 15.2093 7.88277C15.5371 5.67115 16.6516 3.97991 18.3561 2.61391C19.7328 1.5081 21.3718 0.857628 23.0763 0.467342C23.273 0.402294 23.5352 0.402294 23.7319 0.337247L23.7974 0.402294C20.9129 3.19934 18.0939 6.06144 15.1438 8.85848C15.2093 8.85848 15.2093 8.85848 15.1438 8.85848Z"/><path d="M12.5872 38C10.9482 38 9.37483 38 7.867 38C9.44039 36.4389 11.0138 34.8777 12.5872 33.3166C12.5872 34.8127 12.5872 36.3738 12.5872 38Z"/></svg></a><header class=""><div class="container-fluid"><div class="row"><div class="col logo-col"><a href="/" aria-label="ID Studio Homepage"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 109.9 26"><defs><style>.b{fill:#1d2027}</style></defs><path class="b" d="M109.89,13.47h0v0Z"/><polygon class="b" points="7.85 26 7.85 23.68 5.51 26 7.85 26"/><polygon class="b" points="0.81 24.38 5.46 24.38 8.67 21.13 8.67 12.08 0.81 19.92 0.81 24.38"/><path class="b" d="M48.29,13.3h0a6.35,6.35,0,0,0-3-1.1,3.42,3.42,0,0,1-2-.81,1,1,0,0,1,0-1.25c.29-.5,1-.74,2-.74a3,3,0,0,1,2.44,1L49.5,8.7a6,6,0,0,0-1.87-1.3A7.07,7.07,0,0,0,44.82,7a5.21,5.21,0,0,0-3,1,3.26,3.26,0,0,0-1.49,2.77,2.9,2.9,0,0,0,1.31,2.68,7.07,7.07,0,0,0,2.86.95c1.16.12,1.89.42,2.17.91a1.37,1.37,0,0,1,0,1.48c-.28.48-1,.73-2.17.73a4.1,4.1,0,0,1-2.94-1.21l-1.75,1.73a6.7,6.7,0,0,0,2.09,1.39,8,8,0,0,0,3,.52,5.31,5.31,0,0,0,3.34-1.13,3.33,3.33,0,0,0,1.45-2.68A3.25,3.25,0,0,0,48.29,13.3Z"/><path class="b" d="M25.25,6.23c-.12-.14-.25-.26-.38-.39L9.39,21.27v3.92h5.24L27.79,12A11.35,11.35,0,0,0,25.25,6.23Z"/><path class="b" d="M16.32,25.17h1.75a13.58,13.58,0,0,0,7-2.68c3.43-2.57,3.67-7.58,3.67-7.58a12.29,12.29,0,0,0-.06-2.1Z"/><polygon class="b" points="7.86 2.14 0 10.01 0 19.07 7.86 11.24 7.86 2.14"/><path class="b" d="M75.62,7H73v7.53a3.45,3.45,0,0,1-.23,1.31L75.62,13Z"/><path class="b" d="M10.21,18.83l15-15A12.33,12.33,0,0,0,19,1l-8.8,8.77Z"/><path class="b" d="M3.05,1.4A5,5,0,0,0,.81,5.23V7.47L8.26,0A9,9,0,0,0,3.05,1.4Z"/><path class="b" d="M9.39,8.88l8-8h-.16a9.46,9.46,0,0,0-5.62,1.4A4.93,4.93,0,0,0,9.38,6.06V8.88Z"/><path class="b" d="M83.45,7H82.7l-4.27,4.25V20h5q6.06,0,6.08-6.47T83.45,7Zm3.47,6.5c0,2.59-1.16,3.88-3.47,3.85H81V9.57h2.45q3.47,0,3.47,3.9Z"/><rect class="b" x="92.32" y="6.97" width="2.59" height="13"/><path class="b" d="M89.53,13.52v0Z"/><polygon class="b" points="51.31 9.43 55.65 9.43 55.65 19.99 58.25 19.99 58.25 9.43 62.59 9.43 62.59 6.99 51.31 6.99 51.31 9.43"/><path class="b" d="M103.66,7a6.35,6.35,0,1,0,6.23,6.5A6.25,6.25,0,0,0,108,8.84,6.35,6.35,0,0,0,103.66,7Zm-.2,10.15a3.8,3.8,0,1,1,3.8-3.8A3.8,3.8,0,0,1,103.46,17.13Z"/><polygon class="b" points="77.44 7.17 77.44 10.38 80.66 7.17 77.44 7.17"/><path class="b" d="M71,20A6,6,0,0,0,75,18.58a4.33,4.33,0,0,0,1.63-3.38V14l-6,5.93Z"/><path class="b" d="M69.93,17.39a3.36,3.36,0,0,1-2.16-.69,2.56,2.56,0,0,1-.87-2.17V7H64.29v8.22a4.31,4.31,0,0,0,1.63,3.38,5.56,5.56,0,0,0,2.81,1.3v0l2.83-2.83A3.64,3.64,0,0,1,69.93,17.39Z"/></svg></a></div><div class="col nav-col"><nav><ul><li class=""><a href="/our-work/" class="">Showcase</a></li><li class=" services-trigger"><span>Services</span><div class="services-menu"><div class="box"><div class="photo"><img alt="Web Design Services" src="/site/assets/files/5365/v6-icon.svg"></div><div class="details"><a href="/creative-web-design/" target="_self">Creative Web Design</a><p>Award winning, creative web design for leading brands</p></div></div><div class="box"><div class="photo"><img alt="Brand Design" src="/site/assets/files/5364/ui-1.svg"></div><div class="details"><a href="/brand-development-agency/" target="_self">Brand Design, Strategies & UX/UI</a><p>Crafting unique, cohesive brand experiences that resonate with your audience</p></div></div><div class="box"><div class="photo"><img alt="Web Development" src="/site/assets/files/5367/back-1.svg"></div><div class="details"><a href="/web-development-company/" target="_self">Web Development</a><p>Enterprise web development that's powerful and user friendly</p></div></div><div class="box"><div class="photo"><img alt="eCommerce Development" src="/site/assets/files/5368/bag-1.svg"></div><div class="details"><a href="/ecommerce-agency/" target="_self">eCommerce Development</a><p>eCommerce web development engineered to maximises online sales</p></div></div><div class="box"><div class="photo"><img alt="SEO" src="/site/assets/files/5369/seo-1.svg"></div><div class="details"><a href="/seo-agency-london/" target="_self">Organic SEO</a><p>Results driven organic SEO that drives traffic & converts</p></div></div><div class="box"><div class="photo"><img alt="Web Based Applications" src="/site/assets/files/5373/mobile-dev-1.svg"></div><div class="details"><a href="/mobile-app-development/" target="_self">Web Based Applications</a><p>Web based application development for mobile</p></div></div><div class="box"><div class="photo"><img alt="" src="/site/assets/files/11894/pen_testing.svg"></div><div class="details"><a href="/web-app-security-pen-testing/" target="_self">Web App Security</a><p>Ensuring your web apps are pen tested and secure</p></div></div><div class="box"><div class="photo"><img alt="" src="/site/assets/files/14785/maintenance_and_support.svg"></div><div class="details"><a href="/website-support-maintenance/" target="_self">Website Support & Maintenance</a><p>Priority support and maintenance for your website</p></div></div></div></li><li class=""><a href="/blog/" class="">Blog</a></li><li class="contact-btn"><a href="/contact/" class="button"><span>Contact Us <svg width="25" height="23" viewBox="0 0 25 23" fill="white" xmlns="http://www.w3.org/2000/svg"><path d="M24.4766 12.1562L14.8516 21.7812C14.5234 22.1094 13.9219 22.1094 13.5938 21.7812C13.2656 21.4531 13.2656 20.8516 13.5938 20.5234L21.7422 12.375H1.125C0.632812 12.375 0.25 11.9922 0.25 11.5C0.25 11.0625 0.632812 10.625 1.125 10.625H21.7422L13.5938 2.53125C13.2656 2.20312 13.2656 1.60156 13.5938 1.27344C13.9219 0.945312 14.5234 0.945312 14.8516 1.27344L24.4766 10.8984C24.8047 11.2266 24.8047 11.8281 24.4766 12.1562Z"/></svg></span></a></li></ul></nav></div><div class="menu-trigger"><span></span><span></span></div></div></div></header><div class="creed"><a href="/web-design/" target="_self">We make digital things</a></div><div class="coordinates"><a class="length" href="/contact/" target="_self">51.465331</a><a class="width" href="/contact/" target="_self">-0.298946</a></div><section id='hero-1226' class="hero"><div class="container1240"><div class="row"><div class="col-lg-6 content-col no-slider"><h1 class="frame-text">Web Design Agency. Web Design London.</h1><h2 class="f60">Creatively Driven Website Design</h2><p>ID Studio is an award-winning web design agency that combines the skills of talented in-house brand experts, web designers and developers to deliver results-driven websites that elevate your brand and drive conversions.</p><a href="/contact/" class="button"><span>Get in Touch <svg width="25" height="23" viewBox="0 0 25 23" fill="white" xmlns="http://www.w3.org/2000/svg"><path d="M24.4766 12.1562L14.8516 21.7812C14.5234 22.1094 13.9219 22.1094 13.5938 21.7812C13.2656 21.4531 13.2656 20.8516 13.5938 20.5234L21.7422 12.375H1.125C0.632812 12.375 0.25 11.9922 0.25 11.5C0.25 11.0625 0.632812 10.625 1.125 10.625H21.7422L13.5938 2.53125C13.2656 2.20312 13.2656 1.60156 13.5938 1.27344C13.9219 0.945312 14.5234 0.945312 14.8516 1.27344L24.4766 10.8984C24.8047 11.2266 24.8047 11.8281 24.4766 12.1562Z"/></svg></span></a></div><div id='shm-1226' style='min-height:40vh;height:75vw;max-height:65vh;' class='col-lg-6'></div></div></div></section><section class="projects-scroll"><div class="container-fluid"><div class="bg anim-box irosebank-featured-png-9939" style="background-color: #1d2027"><div class="container1650"><div class="row white-font"><div class="col-lg-6" data-aos="fade-up" data-aos-delay="300"><img class="company-logo" alt="" src="/site/assets/files/9939/logo-rosebank.svg"><h2 class="f60">Rosebank Website Design And Development</h2><p>Creative exploration, showcase website design and custom UX/UI. We designed Rosebanks new website to highlight their famous showcase.</p><div class="links-box"><a href="/brand-development-agency/" class="links">UX Design</a><a href="/creative-web-design/" class="links">Web Design</a><a href="/web-development-company/" class="links">Web Development</a></div><a href="/our-work/rosebank-landscaping/" class="button blue small"><span>View Project</span></a></div></div></div></div><div class="bg anim-box isn-featured2-png-9874" style="background-color: #1d2027"><div class="container1650"><div class="row white-font"><div class="col-lg-6" data-aos="fade-up" data-aos-delay="300"><img class="company-logo" alt="" src="/site/assets/files/9874/logo-suzanne-neville.svg"><h2 class="f60">Suzanne Neville eCommerce Website</h2><p>Experience the beauty and elegance of聽Suzanne Neville, with a stunning showcase marketing website, including an eCommerce product and appointment booking system.</p><div class="links-box"><a href="/brand-development-agency/" class="links">UX Design</a><a href="/creative-web-design/" class="links">Web Design</a><a href="/processwire-website-company/" class="links">ProcessWire Company</a><a href="/laravel-development-company/" class="links">Laravel Company</a></div><a href="/our-work/suzanne-neville/" class="button blue small"><span>View Project</span></a></div></div></div></div><div class="bg static-box idiary-featured-png-9865" style="background-color: #1d2027"><div class="container1650"><div class="row white-font"><div class="col-lg-6" data-aos="fade-up" data-aos-delay="300"><img class="company-logo" alt="" src="/site/assets/files/9865/logo-doac.svg"><h2 class="f60">The Diary Website</h2><p>Our web design company provides ongoing digital design and development services聽 across multiple projects for Steven Bartlett.</p><div class="links-box"><a href="/brand-development-agency/" class="links">UX Design</a><a href="/creative-web-design/" class="links">Web Design</a><a href="/web-development-company/" class="links">Web Development</a><a href="/laravel-development-company/" class="links">Laravel</a></div><a href="/our-work/the-diary-by-steven-bartlett/" class="button blue small"><span>View Project</span></a></div></div></div></div></div></section><section class="text-image-bg"><div class="container1650 br10 gr-purple" data-aos="fade-in" data-aos-delay="200"><div class="row flex-row-reverse"><div class="col-lg-6"><div class="photo-box"><img alt="" src="/site/assets/files/14205/if-studio-creative-web-agency.810x803.png"><div class="decor anm" style="top: 22.24%; left: 21.44%;max-width: 13.21%;" data-speed-x="3" data-speed-y="4"><img alt="" src="/site/assets/files/14211/figma.svg"></div><div class="decor anm" style="top: 30.52%; left: 85.06%;max-width: 14.2%;" data-speed-x="2" data-speed-y="-2"><img alt="" src="/site/assets/files/14212/tools.svg"></div><div class="decor anm" style="top: 21.52%; left: 66.02%;max-width: 16.3%;" data-speed-x="3" data-speed-y="1"><img alt="" src="/site/assets/files/14213/photoshop.svg"></div><div class="decor anm" style="top: 77.01%; left: 89.16%;max-width: 10.99%;" data-speed-x="3" data-speed-y="-3"><img alt="" src="/site/assets/files/14214/blue_star.png"></div><div class="decor anm" style="top: 64.69%; left: 54.21%;max-width: 30.49%;" data-speed-x="1" data-speed-y="-4"><img alt="" src="/site/assets/files/14522/card.png"></div><div class="decor anm" style="top: 65.05%; left: 33.98%;max-width: 14.07%;" data-speed-x="1" data-speed-y="-1"><img alt="" src="/site/assets/files/14209/icons.svg"></div><div class="decor anm" style="top: 76.22%; left: 22.65%;max-width: 25.06%;" data-speed-x="2" data-speed-y="-2"><img alt="" src="/site/assets/files/14210/creative_exploration.png"></div></div></div><div class="col-lg-6 content-col"><h2>Web Design</h2><p>Our website design team are dedicated to creating unique, visually compelling brands and websites that connect with your target audience. From brand strategy, planning and execution to creative website design, we blend artistic vision with strategic thinking to deliver a powerful visual identity that makes you unique.</p><ul><li><a href="/creative-web-design/"><strong>Creative website design</strong></a></li><li value="1"><a href="/brand-development-agency/"><strong>Brand design & strategy</strong></a></li><li value="2"><a href="/brand-development-agency"><strong>User experiences & journey planning</strong></a></li></ul></div></div></div></section><section class="text-image-bg"><div class="container1650 br10 gr-blue" data-aos="fade-in" data-aos-delay="200"><div class="row"><div class="col-lg-6"><div class="photo-box"><img alt="" src="/site/assets/files/14216/development.png"><div class="decor anm" style="top: 13.9%; left: 20.96%;max-width: 25.06%;" data-speed-x="-2" data-speed-y="-1"><img alt="" src="/site/assets/files/14220/meta_logo.svg"></div><div class="decor anm" style="top: 37.69%; left: 17.35%;max-width: 24.94%;" data-speed-x="3" data-speed-y="1"><img alt="" src="/site/assets/files/14221/redcode.svg"></div><div class="decor anm" style="top: 48.14%; left: 85.06%;max-width: 34.57%;" data-speed-x="-4" data-speed-y="1"><img alt="" src="/site/assets/files/14222/stat.png"></div><div class="decor anm" style="top: 77.32%; left: 23.85%;max-width: 57.41%;" data-speed-x="3" data-speed-y="2"><img alt="" src="/site/assets/files/14223/stat2.png"></div><div class="decor anm" style="top: 86.7%; left: 42.9%;max-width: 4.94%;" data-speed-x="4" data-speed-y="3"><img alt="" src="/site/assets/files/14224/processwire.svg"></div><div class="decor anm" style="top: 93.91%; left: 72.78%;max-width: 2.96%;" data-speed-x="-2" data-speed-y="1"><img alt="" src="/site/assets/files/14225/two-squares.png"></div><div class="decor anm" style="top: 23.64%; left: 82.41%;max-width: 14.44%;" data-speed-x="3" data-speed-y="1"><img alt="" src="/site/assets/files/14226/laravel.svg"></div></div></div><div class="col-lg-6 content-col"><h2>Web Development</h2><p>Behind every beautiful website is a solid foundation of code and functionality. ID Studio's website development team ensures that every pixel-perfect design is matched with seamless functionality. Whether it鈥檚 a custom content management system, a scalable eCommerce platform, or an innovative web-based application, we build digital experiences that are as smooth as they are powerful.</p><ul><li value="1"><a href="/frontend-website-development/"><strong>Front-end development</strong></a></li><li value="2"><a href="/web-development-company/"><strong>Back-end application development</strong></a></li><li value="3"><a href="/web-development-company"><strong>Content Management Systems (CMS)</strong></a></li><li value="4"><a href="/ecommerce-agency/"><strong>eCommerce</strong></a></li><li value="5"><a href="/mobile-app-development/"><strong>Web-based applications</strong></a></li></ul></div></div></div></section><section class="text-image-bg"><div class="container1650 br10 gr-soft-green" data-aos="fade-in" data-aos-delay="200"><div class="row flex-row-reverse"><div class="col-lg-6"><div class="photo-box"><img alt="" src="/site/assets/files/14228/graphic.png"><div class="decor anm" style="top: 48.36%; left: 25.06%;max-width: 63.09%;" data-speed-x="-1" data-speed-y="3"><img alt="" src="/site/assets/files/14232/stat.png"></div><div class="decor anm" style="top: 84.02%; left: 74.22%;max-width: 45.06%;" data-speed-x="4" data-speed-y="-3"><img alt="" src="/site/assets/files/14233/stat_error.png"></div><div class="decor anm" style="top: 64.93%; left: 90.36%;max-width: 9.88%;" data-speed-x="-2" data-speed-y="-1"><img alt="" src="/site/assets/files/14234/icon.svg"></div><div class="decor anm" style="top: 22.4%; left: 71.8%;max-width: 40.12%;" data-speed-x="1" data-speed-y="-3"><img alt="" src="/site/assets/files/14235/stat_38.png"></div><div class="decor anm" style="top: 87.63%; left: 23.37%;max-width: 2.96%;" data-speed-x="-3" data-speed-y="4"><img alt="" src="/site/assets/files/14236/decor.png"></div><div class="decor anm" style="top: 18.08%; left: 35.9%;max-width: 12.96%;" data-speed-x="3" data-speed-y="4"><img alt="" src="/site/assets/files/14237/c.png"></div><div class="decor anm" style="top: 47.98%; left: 66.26%;max-width: 15.56%;" data-speed-x="3" data-speed-y="-3"><img alt="" src="/site/assets/files/14238/shape.png"></div></div></div><div class="col-lg-6 content-col"><h2>Everything Else</h2><p>Our services extend beyond launch day, offering continuous maintenance and support, organic SEO to boost your search rankings, PPC campaign management for targeted traffic, and advanced web application security to protect your digital assets.</p><ul><li value="1"><strong>Ongoing maintenance & support</strong></li><li value="2"><a href="/seo-agency-london/"><strong>Organic search engine optimisation</strong></a></li><li value="3"><strong>PPC campaign management</strong></li><li value="4"><a href="/web-app-security-pen-testing/"><strong>Web app security</strong></a></li></ul></div></div></div></section><section id='testimonials-1326' class="testimonials"><div class="container1240"><div class="row"><div class="col-12 heading-col" data-aos="fade-in" data-aos-delay="200"><h3 class="frame-text">Testimonials</h3></div><div class="content" data-aos="fade-up" data-aos-delay="200"><div class="box"><div class="bg" style="background-color: #e9fffe;"><p class="f30">'It is a great pleasure to work with ID studio. They came up with really cool ideas for the logo and website design. They are also very patient with our requirements on details of the website. I recommended to everyone who want to build a corporate website.'</p><h4 class="name">Yichuan Zhang</h4><p class="position">Boltzbit</p></div></div><div class="box"><div class="bg" style="background-color: #e9fffe;"><p class="f30">鈥榃hat an awesome web design agency to work with.....creative design is insane, technical delivery is of a super high standard and the team is incredible. I highly recommend ID Studio'.</p><h4 class="name">Yasmeen Jaffer</h4><p class="position">JJC Fintech</p></div></div><div class="box"><div class="bg" style="background-color: #e9fffe;"><p class="f30">'These guys helped me design a fantastic, fresh and unique website! There was never a no to a request and always replied next day to any emails! I would highly recommend them for their creativity but also their customer service'.</p><h4 class="name">Camilla Kastrup</h4><p class="position">CEO, Thorsager</p></div></div><div class="box"><div class="bg" style="background-color: #e9fffe;"><p class="f30">'Ecstatic with our new website. Mike and the team took on our project when we were let down by another agency. If you're looking for a web agency who really know their stuff, and are great to work with, I couldn't recommend them more.'</p><h4 class="name">Greg Clarke</h4><p class="position">Wiley Edge</p></div></div><div class="box"><div class="bg" style="background-color: #e9fffe;"><p class="f30">'After contacting several web design agencies in London, ID Studio stood out with their authentic interest and engaging approach. Their team crafted a stunning brand and website. For anyone searching for a top web design studio, look no further.'</p><h4 class="name">Jeff Griffin</h4><p class="position">Owner</p></div></div></div></div><div class="row"><div class="col-12 google-review-col" data-aos="fade-up" data-aos-delay="300"><a href='https://www.google.com/search?q=ID+Studio+Web+Agency+Richmond' target='_blank'><img loading="lazy" alt="" src="/site/assets/files/5779/g-stars.png"><span>32 Reviews Richmond</span></a><a href='https://www.google.com/search?q=ID+Studio+Web+Agency+South+Bank' target='_blank'><img loading="lazy" alt="" src="/site/assets/files/5780/g-stars.png"><span>7 Reviews London</span></a><a href='https://clutch.co/profile/id-studio-web-agency' target='_blank'><img loading="lazy" alt="" src="/site/assets/files/5781/c-stars.png"><span>9 Reviews Clutch</span></a></div></div></div></section><section class="brands"><div class="container1240"><div class="row"><div class="col-12 heading-col" data-aos="fade-in" data-aos-delay="200"><h3 class="frame-text">Clients That Trust Us</h3></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/imperial-college-london.152x115.png" srcset="/site/assets/files/1251/imperial-college-london.152x115.png, /site/assets/files/1251/imperial-college-london.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/mtv.152x115.png" srcset="/site/assets/files/1251/mtv.152x115.png, /site/assets/files/1251/mtv.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/meta.152x115.png" srcset="/site/assets/files/1251/meta.152x115.png, /site/assets/files/1251/meta.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/crown-agents-bank.152x115.png" srcset="/site/assets/files/1251/crown-agents-bank.152x115.png, /site/assets/files/1251/crown-agents-bank.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/ralph-lauren.152x115.png" srcset="/site/assets/files/1251/ralph-lauren.152x115.png, /site/assets/files/1251/ralph-lauren.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/princes-trust.152x115.png" srcset="/site/assets/files/1251/princes-trust.152x115.png, /site/assets/files/1251/princes-trust.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/ap-2.152x115.png" srcset="/site/assets/files/1251/ap-2.152x115.png, /site/assets/files/1251/ap-2.228x172.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/pearl-and-dean.152x115.png" srcset="/site/assets/files/1251/pearl-and-dean.152x115.png, /site/assets/files/1251/pearl-and-dean.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/suzanne_neville.152x113.png" srcset="/site/assets/files/1251/suzanne_neville.152x113.png, /site/assets/files/1251/suzanne_neville.228x170.png 1.5x" height="113"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/the-foundry.152x115.png" srcset="/site/assets/files/1251/the-foundry.152x115.png, /site/assets/files/1251/the-foundry.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/zenith.152x115.png" srcset="/site/assets/files/1251/zenith.152x115.png, /site/assets/files/1251/zenith.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/admiral-group.152x115.png" srcset="/site/assets/files/1251/admiral-group.152x115.png, /site/assets/files/1251/admiral-group.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/budweiser.152x115.png" srcset="/site/assets/files/1251/budweiser.152x115.png, /site/assets/files/1251/budweiser.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/eunavfor.152x115.png" srcset="/site/assets/files/1251/eunavfor.152x115.png, /site/assets/files/1251/eunavfor.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/ncs.152x115.png" srcset="/site/assets/files/1251/ncs.152x115.png, /site/assets/files/1251/ncs.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/camden-council.152x115.png" srcset="/site/assets/files/1251/camden-council.152x115.png, /site/assets/files/1251/camden-council.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/digme-fitness.152x115.png" srcset="/site/assets/files/1251/digme-fitness.152x115.png, /site/assets/files/1251/digme-fitness.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/hampton-fund.152x115.png" srcset="/site/assets/files/1251/hampton-fund.152x115.png, /site/assets/files/1251/hampton-fund.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/south-hook-gas.152x115.png" srcset="/site/assets/files/1251/south-hook-gas.152x115.png, /site/assets/files/1251/south-hook-gas.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/nhs-maudsley.152x115.png" srcset="/site/assets/files/1251/nhs-maudsley.152x115.png, /site/assets/files/1251/nhs-maudsley.228x173.png 1.5x" height="115"></div><div class="col" data-aos="fade-in" data-aos-delay="200"><img width="152" loading="lazy" alt="" src="/site/assets/files/1251/penguin.152x115.png" srcset="/site/assets/files/1251/penguin.152x115.png, /site/assets/files/1251/penguin.228x173.png 1.5x" height="115"></div></div></div></section><section class="projects-scroll"><div class="container-fluid"><div class="bg anim-box icroud-featured-png-9987" style="background-color: #1d2027"><div class="container1650"><div class="row white-font"><div class="col-lg-6" data-aos="fade-up" data-aos-delay="300"><img class="company-logo" alt="" src="/site/assets/files/9987/logo-croud.svg"><h2 class="f60">Croud Website Design</h2><p>ID Studio delivered creative exploration and concept design, a unique website design with a聽modular content management system.</p><div class="links-box"><a href="/brand-development-agency/" class="links">Design & UX Design</a><a href="/creative-web-design/" class="links">Web Design</a><a href="/web-development-company/" class="links">Web Development</a></div><a href="/our-work/croud/" class="button blue small"><span>View Project</span></a></div></div></div></div><div class="bg anim-box ikh-featured-png-9953" style="background-color: #1d2027"><div class="container1650"><div class="row white-font"><div class="col-lg-6" data-aos="fade-up" data-aos-delay="300"><img class="company-logo" alt="" src="/site/assets/files/9953/logo-kinross-house.svg"><h2 class="f60">Kinross House Web Design</h2><p>Contemporary design and creative exploration, showcase website design and custom UX/UI. One of the most sought-after private retreats in Scotland.</p><div class="links-box"><a href="/brand-development-agency/" class="links">UX Design</a><a href="/creative-web-design/" class="links">Web Design</a><a href="/web-development-company/" class="links">Web Development</a></div><a href="/our-work/kinross-house/" class="button blue small"><span>View Project</span></a></div></div></div></div><div class="bg static-box iid-studio-lb-png-9980" style="background-color: #ffffff"><div class="container1650"><div class="row"><div class="col-lg-6" data-aos="fade-up" data-aos-delay="300"><img class="company-logo" alt="" src="/site/assets/files/9980/logo-listening-books-black.png"><h2 class="f60">Listening Books eCommerce Website</h2><p>ID Studio delivered a large eCommerce business platform for Listening Books using Laravel as the web development framework.</p><div class="links-box"><a href="/brand-development-agency/" class="links">Brand & UX Design</a><a href="/creative-web-design/" class="links">Web Design</a><a href="/web-development-company/" class="links">Web Development</a><a href="/laravel-development-company/" class="links">Laravel Development</a><a href="/ecommerce-agency/" class="links">eCommerce</a></div><a href="/our-work/listening-books/" class="button blue small"><span>View Project</span></a></div></div></div></div></div></section><section class="awards"><div class="container1240"><div class="row"><div class="col-12 heading-col" data-aos="fade-in" data-aos-delay="200"><h3 class="frame-text">Project Awards</h3></div><div class="col-md-2 col-6"><a href="https://www.cssdesignawards.com/search?search_term=id+studio+web+agency" target="_blank" aria-label="CSS Design Awards - Website of the Day"><img width="154" loading="lazy" alt="" src="/site/assets/files/6277/id-studio-award-02.png" height="154"></a></div><div class="col-md-2 col-6"><img width="154" loading="lazy" alt="" src="/site/assets/files/6278/cssda-ux-01.png" height="154"></div><div class="col-md-2 col-6"><img width="154" loading="lazy" alt="" src="/site/assets/files/6279/id-studio-award-04.png" height="154"></div><div class="col-md-2 col-6"><img width="154" loading="lazy" alt="" src="/site/assets/files/6282/cssda-inn-01.png" height="154"></div><div class="col-md-2 col-6"><img width="154" loading="lazy" alt="" src="/site/assets/files/6280/id-studio-award-03.png" height="154"></div><div class="col-md-2 col-6"><img width="154" loading="lazy" alt="" src="/site/assets/files/6281/css-da-01.png" height="154"></div><div class="col-md-2 col-6"><a href="https://www.awwwards.com/id-studio-web-agency/" target="_blank" aria-label="Awwwards - Honors"><img width="154" loading="lazy" alt="" src="/site/assets/files/6276/id-studio-award-01.png" height="154"></a></div></div></div></section><footer id="footer"><div class="container1240"><div class="row"><div class="col-lg-4 col-12"><div class="social"><a href="https://www.linkedin.com/company/idstudio-web-agency" target="_blank" aria-label="ID Studio - LinkedIn page"><img height="20" alt="" src="/site/assets/files/4949/linkedin.svg" width="18"></a><a href="https://twitter.com/IDStudio_" target="_blank" aria-label="ID Studio - Twitter page"><img height="20" alt="" src="/site/assets/files/1201/x-twitter.svg" width="20"></a><a href="https://www.facebook.com/IDStudioWebAgency" target="_blank" aria-label="ID Studio - Facebook page"><img height="20" alt="" src="/site/assets/files/1200/fb.svg" width="13"></a><a href="https://www.instagram.com/idstudiowebagency/" target="_blank" aria-label="ID Studio - Instagram page"><img height="20" alt="" src="/site/assets/files/4951/instagram.svg" width="18"></a><a href="https://dribbble.com/idstudiowebagency" target="_blank" aria-label="ID Studio - Dribble page"><img height="20" alt="" src="/site/assets/files/7056/id-studio-dribbble.svg" width="20"></a></div><a href="/contact/" class="button"><span>Stay in Touch</span></a><ul class="link-list"><li><a href="/about/">About Us</a></li><li><a href="/lab/">Lab</a></li><li><a href="/blog/">Blog</a></li><li><a href="/privacy-policy/">Privacy Policy</a></li><li><a href="/terms/">Terms & Conditions</a></li></ul></div><div class="col-lg-4 col-md-6 offices"><h4>London Offices</h4><p>30 Stamford Street, London, SE1 9LQ<br/> 85 Tottenham Ct Rd, London, W1T 4TQ</p><ul><li><a href="mailto:london@netdreams.co.uk">london@netdreams.co.uk</a></li><li><a href="tel:02039084428">020 3908 4428</a></li></ul></div><div class="col-lg-4 col-md-6 offices"><h4>Richmond Office</h4><p>56 Kew Road, Richmond,<br/> Surrey, TW9 2PQ</p><ul><li><a href="mailto:richmond@netdreams.co.uk">richmond@netdreams.co.uk</a></li><li><a href="tel:02089485808">020 8948 5808</a></li></ul></div></div></div></footer><!-- LinkedIn--><script type="text/javascript"> _linkedin_partner_id = "6695860"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id); </script><script type="text/javascript"> (function(l) { if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])}; window.lintrk.q=[]} var s = document.getElementsByTagName("script")[0]; var b = document.createElement("script"); b.type = "text/javascript";b.async = true; b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; s.parentNode.insertBefore(b, s);})(window.lintrk); </script><noscript><img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=6695860&fmt=gif"/></noscript> <script type='text/javascript' src='/site/templates/assets/js/jquery.js?h=80f04717f32ea032'></script> <script defer type='text/javascript' src='/site/templates/assets/js/build.js?h=ce709e6c00d39542'></script> <script defer type='text/javascript' src='/site/templates/assets-3d/build/three.min.js?h=c36c639cc4eb42f9'></script> <script defer type='text/javascript' src='/site/templates/assets-3d/build/studio.min.js?h=a55ee8eb0de80444'></script> <script defer type='text/javascript' src='https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.3/gsap.min.js'></script> <script defer type='text/javascript' src='https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.3/ScrollTrigger.min.js'></script> <script defer type='text/javascript' src='/site/templates/assets/js/gsap.js?h=7dcdc70f1d47e7fa'></script> <script>var cwvscript = document.createElement("script"); cwvscript.src = "https://unpkg.com/web-vitals@3/dist/web-vitals.attribution.iife.js";cwvscript.onload = function () {function report(metric) { if (metric.rating != "good") { //console.info("reporting", metric); metric.url = window.location.href; const body = JSON.stringify(metric); (navigator.sendBeacon && navigator.sendBeacon("/web-vitals-report.php", body)) || fetch("/web-vitals-report.php", { body, method: "POST", keepalive: true }); } }webVitals.onCLS(report);webVitals.onFCP(report);webVitals.onFID(report);webVitals.onINP(report);webVitals.onLCP(report);webVitals.onTTFB(report);}; document.head.appendChild(cwvscript); var studio_set = {"rootURL":"\/site\/templates\/assets-3d\/","pixelScale":3,"mouse":false,"pixelPalette":[[255,117,195],[76,0,249]]}; var studio_add3D = [{"default":true,"type":"light","ambient":true,"color":"#ffffff","intensity":0.8},{"default":true,"type":"light","color":"#ffffff","intensity":0.8,"lookAt":"center","position":{"absolute":true,"x":"25%","y":"25%"}},{"geo":"capsule","material":{"material":"matcap","map":"\/site\/assets\/files\/1398\/matcap-2-1.png","pixel":true},"size":"(8vmin) * (0.6)","element":"header .nav-col","rotation":{"x":"-40 + 10 * cos(t \/ 3) + 10mrx","y":"20 * sin(t \/ 5) + 10mry","z":"-40"},"position":{"x":"27.61%w + 1mrx","y":"16.84%h + 1mry + 1y","z":"-sin(t \/ 3)"},"animateIn":"fade","animateTime":0.7},{"geo":"sphere","material":{"material":"matcap","map":"\/site\/assets\/files\/1398\/matcap-2-1.png","pixel":true},"size":"20vmin","element":"header .nav-col","rotation":{"x":"-30 - 15mry + 5t","y":"40 - 15mrx + 3t"},"position":{"x":"50%w + 0.9mrx","y":"1.53%h + 0.8mry"},"animateIn":"fade","animateTime":1.2},{"geo":"icosahedron-flat","material":{"material":"matcap","map":"\/site\/assets\/files\/1398\/matcap-2-1.png","pixel":true},"size":"20vmin","element":"header .nav-col","rotation":{"x":"-30 - 15mry + 5t","y":"40 - 15mrx + 3t","z":"-90"},"position":{"x":"-43.07%w + 1.2mrx","y":"-17.39%h + 1mry","z":"1"},"animateIn":"fade-flip","animateTime":1.3},{"geo":"icosahedron-flat","material":{"material":"matcap","map":"\/site\/assets\/files\/1398\/matcap-2-1.png","pixel":true},"size":"14vmin","element":"header .nav-col","rotation":{"x":"-30 - 15mry + 5t","y":"40 - 15mrx + 3t","z":"-90"},"position":{"x":"-5.02%w + 1.2mrx","y":"37.99%h + 1mry","z":"1"},"animateIn":"fade-flip-down","animateTime":1},{"geo":"capsule","material":{"material":"matcap","map":"\/site\/assets\/files\/1396\/idstudio-metcap-multi-02.png"},"size":"18vmin","element":"#hero-1226","rotation":{"x":"-40 + 10 * cos(t \/ 3) + 10mrx","y":"30 + 20 * sin(t \/ 5) + 10mry","z":"-20"},"position":{"x":"-48.29%w + 1mrx","y":"9.64%h + 1mry + 1y"},"animateIn":"flip-up-right","animateTime":0.9},{"geo":"sphere","material":{"material":"matcap","map":"\/site\/assets\/files\/1396\/idstudio-metcap-multi-02.png"},"size":"4vmin","element":"#hero-1226","rotation":{"x":"-30 - 15mry + 5t","y":"40 - 15mrx + 3t"},"position":{"x":"-21.89%w + 0.9mrx","y":"38.59%h + 0.8mry"},"mobile":{"size":"6vmin","position":{"x":"4.12%w + 0.9mrx","y":"37.73%h + 0.8mry"}},"animateIn":"scale-down","animateTime":0.8},{"geo":"torus-quarter","material":{"material":"matcap","map":"\/site\/assets\/files\/1396\/idstudio-metcap-multi-02.png"},"size":"12vmin","element":"#hero-1226","rotation":{"x":"-30 - 15mry + 5t","y":"40 - 15mrx + 3t","z":"-90"},"position":{"x":"-8.43%w + 1.2mrx","y":"35.89%h + 1mry","z":"1"},"mobile":{"size":"17vmin","position":{"x":"24%w + 1.2mrx","y":"39.53%h + 1mry"}},"animateIn":"fade-flip-down","animateTime":0.7},{"geo":"torus-half","material":{"material":"matcap","map":"\/site\/assets\/files\/1396\/idstudio-metcap-multi-02.png"},"size":"8vmin","element":"#hero-1226","rotation":{"x":"15mry + 2t","y":"-20 + 15mrx + 1t","z":"-45"},"position":{"x":"42.97%w + 0.8mrx","y":"-1.65%h + 0.8mry"},"animateIn":"fade-scale","animateTime":0.6},{"geo":"pattern-arrows","material":{"material":"basic","color":"#121213"},"size":"20vmin","element":"#hero-1226","rotation":{"x":"7mry","y":"12mrx","z":"5mrx - 5mry"},"position":{"x":"-44.88%w + 1.8mrx","y":"19.25%h + 1mry","z":"-0.5"},"mobile":{"hide":true},"animateIn":"flip-right","animateTime":0.6},{"geo":"pattern-stripes-diagonal","material":{"material":"basic","color":"#121213"},"size":"8vmin","element":"#hero-1226","rotation":{"x":"-2mry","y":"-6mrx","z":"1mrx - 1mry"},"position":{"x":"10.24%w + 3mrx","y":"47.6%h + 0.5mry"},"mobile":{"hide":true},"animateIn":"flip-down","animateTime":0.5},{"geo":"pattern-dots","material":{"material":"basic","color":"#121213"},"size":"20vmin","element":"#hero-1226","rotation":{"x":"-2mry","y":"-6mrx","z":"1mrx - 1mry"},"position":{"x":"-15.06%w + 1mrx","y":"47.3%h + 2mry","z":"-0.2"},"mobile":{"size":"20vmin","position":{"x":"9.14%w + 1mrx","y":"44.33%h + 2mry"}},"animateIn":"flip-down","animateTime":0.4},{"geo":"pattern-stripes","material":{"material":"basic","color":"#121213"},"size":"20vmin","element":"#hero-1226","rotation":{"x":"7mry","y":"-12mrx","z":"5mrx - 5mry"},"position":{"x":"46.08%w + 1mrx","y":"15.64%h + 2mry"},"animateIn":"flip-left","animateTime":0.6},{"file":"\/site\/assets\/files\/4947\/id-logo-1.glb","material":{"material":"matcap","map":"\/site\/assets\/files\/1397\/matcap-shiny-1.png"},"size":"(20vmin) * (2)","element":"#shm-1226","rotation":{"x":"-5.16mry","y":"5.69mrx"},"position":{"x":"0.73mrx + 0%w","y":"0.75mry + -0%h"},"scripts":["\/site\/templates\/assets-3d\/build\/oimo.min.js?h=8ef94dcb346776cb"],"onAdd":function(context) { this.__animPause = 0.3; this.__animTime = 8; this.__raycaster = new THREE.Raycaster(); this.__hovers = []; //context.scenePixel.add(this.mesh); studio.initPixel(); this.__logoScale = 0; this.__allMeshes = []; this.__physScale = 1 / 5; this.__physWorld = new oimo.dynamics.World( oimo.collision.broadphase.BroadPhaseType.BVH, { x: 0, y: 0, z: 0, } ); this.__physMesh = new THREE.Group(); this.__physMeshPixel = new THREE.Group(); let rbConfig = new oimo.dynamics.rigidbody.RigidBodyConfig(); let sConfig = new oimo.dynamics.rigidbody.ShapeConfig(); this.__vec = new oimo.common.Vec3(0, 0, 0); for (let i = 0; i < this.mesh.children.length; i++) { this.mesh.children[i].__lastPosition = this.mesh.children[i].position.clone(); this.mesh.children[i].__originX = this.mesh.children[i].position.x; this.mesh.children[i].__originY = this.mesh.children[i].position.y; this.mesh.children[i].__originZ = this.mesh.children[i].position.z; this.__allMeshes.push(this.mesh.children[i]); this.mesh.children[i].__radius = Math.abs( this.mesh.children[i].__originX ); //this.mesh.children[i].scale.set(0.1, 0.1, 0.1); this.mesh.children[i].__offset = (Math.random() - 0.5) * 0.3 * Math.abs(this.mesh.children[i].__originY); this.mesh.children[i].__period = 3 + Math.random() * 3; this.mesh.children[i].__angle = this.mesh.children[i].__originX < 0 ? Math.PI : 0; rbConfig.type = oimo.dynamics.rigidbody.RigidBodyType.KINEMATIC; this.mesh.children[i].__physObj = new oimo.dynamics.rigidbody.RigidBody(rbConfig); let verts = []; for ( let j = 0; j < this.mesh.children[i].geometry.attributes.position.array.length; j += 3 ) { verts.push({ x: (this.mesh.children[i].geometry.attributes.position.array[ j ] * this.mesh.children[i].scale.x) / this.__physScale, y: (this.mesh.children[i].geometry.attributes.position.array[ j + 1 ] * this.mesh.children[i].scale.x) / this.__physScale, z: (this.mesh.children[i].geometry.attributes.position.array[ j + 2 ] * this.mesh.children[i].scale.x) / this.__physScale, }); } sConfig.geometry = new oimo.collision.geometry.ConvexHullGeometry( verts ); this.mesh.children[i].__physObj.addShape( new oimo.dynamics.rigidbody.Shape(sConfig) ); this.__physWorld.addRigidBody(this.mesh.children[i].__physObj); } this.__objects = []; let toAdd = 1; this.__secondaryScale = 2; function afterAdd(config, object) { this.__objects.push(object); this.__allMeshes.push(object); object.scale.set( this.__secondaryScale, this.__secondaryScale, this.__secondaryScale ); object.position.set( config.position[0] + (Math.random() - 0.5) * 0.5, config.position[1] + (Math.random() - 0.5) * 0.5, config.position[2] + (Math.random() - 0.5) * 0.5 ); object.__origin = object.position.clone(); //Add rigid body rbConfig.position.x = object.position.x * 1.1; rbConfig.position.y = object.position.y * 1.1; rbConfig.position.z = object.position.z; rbConfig.type = oimo.dynamics.rigidbody.RigidBodyType.DYNAMIC; object.__physObj = new oimo.dynamics.rigidbody.RigidBody(rbConfig); let verts = []; for ( let j = 0; j < object.geometry.attributes.position.array.length; j += 3 ) { verts.push({ x: object.geometry.attributes.position.array[j] * object.scale.x, y: object.geometry.attributes.position.array[j + 1] * object.scale.y, z: object.geometry.attributes.position.array[j + 2] * object.scale.z, }); } sConfig.geometry = new oimo.collision.geometry.ConvexHullGeometry( verts ); object.__physObj.addShape(new oimo.dynamics.rigidbody.Shape(sConfig)); object.__physObj.rotateXyz(object.position); this.__physWorld.addRigidBody(object.__physObj); toAdd -= 1; this.__physMesh.add(object); config.material.pixel = true; object.__pixelCopy = new THREE.Mesh( object.geometry, studio.getMaterial(config, config.material) ); object.__pixelCopyScale = 0; this.__physMeshPixel.add(object.__pixelCopy); } context.scene.add(this.__physMesh); context.scenePixel.add(this.__physMeshPixel); let types = [ "torus-quarter", "torus-half", "capsule", "tetrahedron", "icosahedron", "tetrahedron", "icosahedron", ]; let objs = [ { position: [3, -3, -3], geo: "icosahedron", material: { material: "matcap", map: "/site/templates/assets-3d/preset/images/matcap-black-shiny.png", palette: [ [255, 255, 255], [128, 128, 128], [0, 0, 0], ], }, }, { position: [-1, 2, -4], geo: "torus-quarter", material: { material: "matcap", map: "/site/templates/assets-3d/preset/images/matcap-neon.png", //TODO palette: [ [255, 255, 255], [92, 255, 255], [137, 130, 253], [252, 79, 179], ], }, }, { position: [-2, -2, -2], geo: "tetrahedron", material: { material: "matcap", map: "/site/templates/assets-3d/preset/images/matcap-red-shiny.png", palette: [ [255, 128, 128], [128, 0, 0], ], }, }, { position: [1, -2, 4], geo: "torus-half", material: { material: "matcap", map: "/site/templates/assets-3d/preset/images/matcap-multi.png", //TODO palette: [ [128, 255, 128], [0, 128, 0], ], }, }, { position: [-4, 2, 0], geo: "icosahedron", material: { material: "matcap", map: "/site/templates/assets-3d/preset/images/matcap-yellow-shiny.png", palette: [ [255, 255, 128], [128, 128, 0], ], }, }, ]; for (let i = objs.length - 1; i >= 0; i--) { objs.push({ geo: types[~~(Math.random() * types.length)], position: [ objs[i].position[0] * -1 + (Math.random() - 0.5) * 1.5, objs[i].position[1] * -1 + (Math.random() - 0.5) * 1.5, objs[i].position[2] * -1 + (Math.random() - 0.5) * 0.5, ], material: { material: objs[i].material.material, map: objs[i].material.map, palette: objs[i].material.palette, }, }); } for (let i = 0; i < objs.length; i++) { studio.getObject(objs[i], afterAdd.bind(this, objs[i])); } /* for (let i = 0; i < 10; i++) { let config = { geo: types[~~(Math.random() * types.length)], material: { material: "matcap", }, }; if (Math.random() > 0.5) { config.material.; config.material.map = "/site/templates/assets-3d/preset/images/matcap-neon.png"; } else { config.material.palette = [ [255, 255, 255], [128, 128, 128], [0, 0, 0], ]; config.material.map = "/site/templates/assets-3d/preset/images/matcap-black-shiny.png"; } studio.getObject(config, afterAdd.bind(this, config)); } */ function onClick() { this.__clicked = true; } this.__hasHover = false; window.addEventListener("click", onClick.bind(this)); },"onRender":function(context) { this.__t = Math.max( 0, Math.min( 1, ((this.t % this.__animTime) / this.__animTime - this.__animPause) / (1 - this.__animPause) ) ); this.__logoScale = Math.min(1, this.__logoScale + context.d); this.__logoScaleEase = context.easeInOutCubic(this.__logoScale); for (let i = 0; i < this.mesh.children.length; i++) { //var x = x0 + r * Math.cos((2 * Math.PI * i) / items); //var y = y0 + r * Math.sin((2 * Math.PI * i) / items); this.mesh.children[i].__t = this.__t + this.mesh.children[i].__offset; this.mesh.children[i].scale.set( this.__logoScaleEase, this.__logoScaleEase, this.__logoScaleEase ); this.mesh.children[i].__rotation = context.easeInOutCubic(this.mesh.children[i].__t) * Math.PI * 2; this.mesh.children[i].__scale = 1 + (Math.sin(this.t / this.mesh.children[i].__period) + 1) * 0.05 + (Math.sin( context.easeInOutCubic(this.mesh.children[i].__t) * Math.PI * 2 - Math.PI * 0.5 ) + 1) * 0.5; //this.mesh.children[i].__scale = 1; this.mesh.children[i].__lastPosition.set( this.mesh.children[i].position.x, this.mesh.children[i].position.y, this.mesh.children[i].position.z ); this.mesh.children[i].position.set( this.mesh.children[i].__radius * Math.cos( this.mesh.children[i].__rotation + this.mesh.children[i].__angle ) * this.mesh.children[i].__scale, this.mesh.children[i].__originY * this.mesh.children[i].__scale, this.mesh.children[i].__radius * Math.sin( this.mesh.children[i].__rotation + this.mesh.children[i].__angle ) * this.mesh.children[i].__scale ); this.mesh.children[i].rotation.y = -this.mesh.children[i].__rotation; this.mesh.children[i].__physObj.setPosition({ x: this.mesh.children[i].position.x / this.__physScale, y: this.mesh.children[i].position.y / this.__physScale, z: this.mesh.children[i].position.z / this.__physScale, }); this.mesh.children[i].__physObj.setLinearVelocity({ x: ((this.mesh.children[i].position.x - this.mesh.children[i].__lastPosition.x) / this.__physScale) * 20 * context.d, y: ((this.mesh.children[i].position.y - this.mesh.children[i].__lastPosition.y) / this.__physScale) * 20 * context.d, z: ((this.mesh.children[i].position.z - this.mesh.children[i].__lastPosition.z) / this.__physScale) * 20 * context.d, }); this.mesh.children[i].__physObj.setOrientation( this.mesh.children[i].quaternion ); } this.__physWorld.step(context.d * 1); for (let i = 0; i < this.__objects.length; i++) { this.__objects[i].__physPosition = this.__objects[i].__physObj.getPosition(); //let dist = Math.sqrt( // this.__objects[i].__physPosition.x * // this.__objects[i].__physPosition.x + // this.__objects[i].__physPosition.y * // this.__objects[i].__physPosition.y + // this.__objects[i].__physPosition.z * // this.__objects[i].__physPosition.z //); this.__vec.x = this.__objects[i].__physPosition.x - this.__objects[i].__origin.x; this.__vec.y = this.__objects[i].__physPosition.y - this.__objects[i].__origin.y; this.__vec.z = this.__objects[i].__physPosition.z - this.__objects[i].__origin.z; this.__dist = this.__vec.length(); this.__vec .normalize() .scaleEq( this.__dist < 2 ? 0.01 * context.d : this.__dist * 0.1 * context.d ) .negateEq(); this.__objects[i].__physObj.addLinearVelocity(this.__vec); this.__objects[i].position.copy(this.__objects[i].__physPosition); this.__objects[i].quaternion.copy( this.__objects[i].__physObj.getOrientation() ); this.__objects[i].scale.set( this.__logoScaleEase * this.__secondaryScale, this.__logoScaleEase * this.__secondaryScale, this.__logoScaleEase * this.__secondaryScale ); this.__objects[i].__pixelCopy.position.copy( this.__objects[i].position ); this.__objects[i].__pixelCopy.quaternion.copy( this.__objects[i].quaternion ); if (this.__objects[i].__pixelCopyShow) { this.__objects[i].__pixelCopyScale = Math.min( 1, this.__objects[i].__pixelCopyScale + context.d * 3 ); this.__objects[i].__pixelCopy.visible = true; } else if (this.__objects[i].__pixelCopyScale > 0) { this.__objects[i].__pixelCopyScale = Math.max( 0, this.__objects[i].__pixelCopyScale - context.d * 2 ); } else if (this.__objects[i].__pixelCopyScale === 0) { this.__objects[i].__pixelCopy.visible = false; } this.__objects[i].__pixelCopyScaleEase = context.easeInOutCubic( this.__objects[i].__pixelCopyScale ); this.__scaleFactor = 3 - Math.max(1, Math.min(this.__objects[i].position.z / 2, 2.5)); this.__objects[i].__pixelCopy.scale.set( this.__objects[i].scale.x * (1 + this.__objects[i].__pixelCopyScaleEase * this.__scaleFactor), this.__objects[i].scale.y * (1 + this.__objects[i].__pixelCopyScaleEase * this.__scaleFactor), this.__objects[i].scale.z * (1 + this.__objects[i].__pixelCopyScaleEase * this.__scaleFactor) ); this.__objects[i].__pixelCopyShow = false; } this.__physMesh.position.copy(this.mesh.position); this.__physMesh.rotation.copy(this.mesh.rotation); this.__physMesh.scale.set( this.mesh.scale.x * this.__physScale, this.mesh.scale.y * this.__physScale, this.mesh.scale.z * this.__physScale ); this.__physMeshPixel.position.copy(this.__physMesh.position); this.__physMeshPixel.rotation.copy(this.__physMesh.rotation); this.__physMeshPixel.scale.copy(this.__physMesh.scale); // /this.mesh.position.x += context.sceneSize.x * 0.5; this.__raycaster.setFromCamera(context.mouseAbsolute, context.camera); let intersects = this.__raycaster.intersectObjects(this.__allMeshes); if (intersects.length > 0) { if (intersects[0].object.__pixelCopy) { intersects[0].object.__pixelCopyShow = true; if (this.__clicked) { for (let i = 0; i < this.mesh.children.length; i++) { this.mesh.children[i].material = intersects[0].object.material; } this.__logoScale = 0.5; } document.body.style.cursor = "pointer"; this.__hasHover = true; window.studioHover = true; } else if (this.__hasHover) { document.body.style.cursor = ""; this.__hasHover = false; window.studioHover = false; } } else if (this.__hasHover) { document.body.style.cursor = ""; this.__hasHover = false; window.studioHover = false; } this.__clicked = false; }},{"geo":"pattern-triangles-alternate","material":{"color":"black"},"size":"14vmin","element":"#shm-1226","rotation":{"x":"-6.36mry","y":"4.65mrx"},"position":{"x":"1.41mrx + 25.48%w","y":"1.31mry + -39.91%h","z":"-1"},"mobile":{"hide":true},"animateIn":"fade-flip","animateTime":1},{"geo":"pattern-arrows","material":{"material":"basic","color":"#121213"},"size":"20vmin","element":"#testimonials-1326","rotation":{"x":"7mry","y":"12mrx","z":"5mrx - 5mry"},"position":{"x":"-43.67%w + 3mrx","y":"19.25%h + 1mry","z":"-0.5"},"mobile":{"hide":true},"animateIn":"flip-right","animateTime":0.6},{"geo":"pattern-stripes-diagonal","material":{"material":"basic","color":"#121213"},"size":"8vmin","element":"#testimonials-1326","rotation":{"x":"-2mry","y":"-6mrx","z":"1mrx - 1mry"},"position":{"x":"10.24%w + 3mrx","y":"47.6%h + 0.5mry"},"animateIn":"flip-down","animateTime":0.5},{"geo":"pattern-dots","material":{"material":"basic","color":"#121213"},"size":"20vmin","element":"#testimonials-1326","rotation":{"x":"-2mry","y":"-6mrx","z":"1mrx - 1mry"},"position":{"x":"-14.76%w + 1mrx","y":"43.57%h + 2mry","z":"-0.2"},"animateIn":"flip-down","animateTime":0.4},{"geo":"pattern-stripes","material":{"material":"basic","color":"#121213"},"size":"20vmin","element":"#testimonials-1326","rotation":{"x":"7mry","y":"-12mrx","z":"5mrx - 5mry"},"position":{"x":"46.08%w + 1mrx","y":"15.64%h + 2mry"},"mobile":{"hide":true},"animateIn":"flip-left","animateTime":0.6}];</script><!--WirePageCache: 2024-11-27T05:00:02+00:00--></body> </html>