Add SEO headers to the stats website and a link from the website (#1652)
* Add SEO headers to the stats website and a link from the website * Add some content * Fix builds * Change message
|
@ -1,3 +1,7 @@
|
|||
{
|
||||
"recommendations": ["blodwynn.featurehighlight", "silvenon.mdx"]
|
||||
"recommendations": [
|
||||
"blodwynn.featurehighlight",
|
||||
"silvenon.mdx",
|
||||
"bradlc.vscode-tailwindcss"
|
||||
]
|
||||
}
|
||||
|
|
|
@ -0,0 +1,78 @@
|
|||
import NextHead from 'next/head'
|
||||
|
||||
const Head = () => {
|
||||
const description =
|
||||
'Insights about how people use Tuist to help make informed decision and prioritize future work on Tuist.'
|
||||
const title = `Tuist Statistics`
|
||||
return (
|
||||
<NextHead>
|
||||
<title>{title}</title>
|
||||
<meta name="viewport" content="initial-scale=1.0, width=device-width" />
|
||||
<meta name="description" content={description} data-rh="true" />
|
||||
<meta property="og:title" content={title} key="title" />
|
||||
<meta property="og:description" content={description} data-rh="true" />
|
||||
<meta data-rh="true" name="twitter:creator" content="@tuistio" />
|
||||
<meta data-rh="true" name="twitter:card" content="summary" />
|
||||
<meta data-rh="true" name="twitter:site" content="@tuistio" />
|
||||
<link rel="apple-touch-icon" sizes="57x57" href="/apple-icon-57x57.png" />
|
||||
<link rel="apple-touch-icon" sizes="60x60" href="/apple-icon-60x60.png" />
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="/apple-icon-72x72.png" />
|
||||
<link rel="apple-touch-icon" sizes="76x76" href="/apple-icon-76x76.png" />
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="114x114"
|
||||
href="/apple-icon-114x114.png"
|
||||
/>
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="120x120"
|
||||
href="/apple-icon-120x120.png"
|
||||
/>
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="144x144"
|
||||
href="/apple-icon-144x144.png"
|
||||
/>
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="152x152"
|
||||
href="/apple-icon-152x152.png"
|
||||
/>
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="180x180"
|
||||
href="/apple-icon-180x180.png"
|
||||
/>
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/png"
|
||||
sizes="192x192"
|
||||
href="/android-icon-192x192.png"
|
||||
/>
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/png"
|
||||
sizes="32x32"
|
||||
href="/favicon-32x32.png"
|
||||
/>
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/png"
|
||||
sizes="96x96"
|
||||
href="/favicon-96x96.png"
|
||||
/>
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/png"
|
||||
sizes="16x16"
|
||||
href="/favicon-16x16.png"
|
||||
/>
|
||||
<link rel="manifest" href="/manifest.json" />
|
||||
<meta name="msapplication-TileColor" content="#ffffff" />
|
||||
<meta name="msapplication-TileImage" content="/ms-icon-144x144.png" />
|
||||
<meta name="theme-color" content="#ffffff" />
|
||||
</NextHead>
|
||||
)
|
||||
}
|
||||
|
||||
export default Head
|
|
@ -0,0 +1,3 @@
|
|||
// next.config.js
|
||||
const withImages = require('next-images')
|
||||
module.exports = withImages()
|
|
@ -8,7 +8,9 @@
|
|||
"start": "next start"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tailwindcss/typography": "^0.2.0",
|
||||
"next": "^9.5.1",
|
||||
"next-images": "^1.4.1",
|
||||
"react": "^16.13.1",
|
||||
"react-dom": "^16.13.1"
|
||||
},
|
||||
|
|
|
@ -1,190 +1,226 @@
|
|||
import Head from '../components/head'
|
||||
|
||||
function HomePage() {
|
||||
return (
|
||||
<div className="relative py-16 bg-white overflow-hidden">
|
||||
<div className="hidden lg:block lg:absolute lg:inset-y-0 lg:h-full lg:w-full">
|
||||
<div className="relative h-full text-lg max-w-prose mx-auto">
|
||||
<svg
|
||||
className="absolute top-12 left-full transform translate-x-32"
|
||||
width={404}
|
||||
height={384}
|
||||
fill="none"
|
||||
viewBox="0 0 404 384"
|
||||
>
|
||||
<defs>
|
||||
<pattern
|
||||
id="74b3fd99-0a6f-4271-bef2-e80eeafdf357"
|
||||
x={0}
|
||||
y={0}
|
||||
width={20}
|
||||
height={20}
|
||||
patternUnits="userSpaceOnUse"
|
||||
>
|
||||
<rect
|
||||
x={0}
|
||||
y={0}
|
||||
width={4}
|
||||
height={4}
|
||||
className="text-gray-200"
|
||||
fill="currentColor"
|
||||
/>
|
||||
</pattern>
|
||||
</defs>
|
||||
<rect
|
||||
width={404}
|
||||
height={384}
|
||||
fill="url(#74b3fd99-0a6f-4271-bef2-e80eeafdf357)"
|
||||
/>
|
||||
</svg>
|
||||
<svg
|
||||
className="absolute top-1/2 right-full transform -translate-y-1/2 -translate-x-32"
|
||||
width={404}
|
||||
height={384}
|
||||
fill="none"
|
||||
viewBox="0 0 404 384"
|
||||
>
|
||||
<defs>
|
||||
<pattern
|
||||
id="f210dbf6-a58d-4871-961e-36d5016a0f49"
|
||||
x={0}
|
||||
y={0}
|
||||
width={20}
|
||||
height={20}
|
||||
patternUnits="userSpaceOnUse"
|
||||
>
|
||||
<rect
|
||||
x={0}
|
||||
y={0}
|
||||
width={4}
|
||||
height={4}
|
||||
className="text-gray-200"
|
||||
fill="currentColor"
|
||||
/>
|
||||
</pattern>
|
||||
</defs>
|
||||
<rect
|
||||
width={404}
|
||||
height={384}
|
||||
fill="url(#f210dbf6-a58d-4871-961e-36d5016a0f49)"
|
||||
/>
|
||||
</svg>
|
||||
<svg
|
||||
className="absolute bottom-12 left-full transform translate-x-32"
|
||||
width={404}
|
||||
height={384}
|
||||
fill="none"
|
||||
viewBox="0 0 404 384"
|
||||
>
|
||||
<defs>
|
||||
<pattern
|
||||
id="d3eb07ae-5182-43e6-857d-35c643af9034"
|
||||
x={0}
|
||||
y={0}
|
||||
width={20}
|
||||
height={20}
|
||||
patternUnits="userSpaceOnUse"
|
||||
>
|
||||
<rect
|
||||
x={0}
|
||||
y={0}
|
||||
width={4}
|
||||
height={4}
|
||||
className="text-gray-200"
|
||||
fill="currentColor"
|
||||
/>
|
||||
</pattern>
|
||||
</defs>
|
||||
<rect
|
||||
width={404}
|
||||
height={384}
|
||||
fill="url(#d3eb07ae-5182-43e6-857d-35c643af9034)"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<Head />
|
||||
|
||||
<div className="relative py-16 bg-white overflow-hidden max-w-screen-lg mx-auto">
|
||||
<div className="relative px-4 sm:px-6 lg:px-8">
|
||||
<div className="text-lg max-w-prose mx-auto mb-6">
|
||||
<p className="text-base text-center leading-6 text-indigo-600 font-semibold tracking-wide uppercase">
|
||||
Stats
|
||||
<div className="flex justify-center mb-16">
|
||||
<a href="https://tuist.io">
|
||||
<img src="/logo.svg" />
|
||||
</a>
|
||||
</div>
|
||||
<p className="text-base text-center leading-6 text-blue-600 font-semibold tracking-wide uppercase">
|
||||
Tuist Stats
|
||||
</p>
|
||||
<h1 className="mt-2 mb-8 text-3xl text-center leading-8 font-extrabold tracking-tight text-gray-900 sm:text-4xl sm:leading-10">
|
||||
Learn about how people use Tuist
|
||||
Insights about how people use Tuist
|
||||
</h1>
|
||||
<p className="text-xl text-gray-500 leading-8">
|
||||
Aliquet nec orci mattis amet quisque ullamcorper neque, nibh sem. At
|
||||
arcu, sit dui mi, nibh dui, diam eget aliquam. Quisque id at vitae
|
||||
feugiat egestas ac. Diam nulla orci at in viverra scelerisque eget.
|
||||
Eleifend egestas fringilla sapien.
|
||||
<p className="text-center text-gray-700 leading-8 prose-lg">
|
||||
To prioritize the work and make the right decisions, it's
|
||||
important to <b>back our decisions with data</b>. For that reason,
|
||||
we collect anonymous data and present it on this website for us
|
||||
and for the users of the tool.
|
||||
</p>
|
||||
<p className="text-center text-yellow-700 leading-8 prose-lg">
|
||||
Please note that this website is currently work-in-progress so the
|
||||
data presented is fake at the moment.
|
||||
</p>
|
||||
|
||||
<div className="mt-10">
|
||||
<h1 className="mt-2 mb-8 text-3xl text-center leading-8 font-bold tracking-tight text-gray-900 sm:text-4xl sm:leading-10">
|
||||
Workflows
|
||||
</h1>
|
||||
<div>
|
||||
<h3 className="text-lg leading-6 font-medium text-gray-900">
|
||||
Last 30 days
|
||||
</h3>
|
||||
<div className="mt-5 grid grid-cols-1 gap-5 sm:grid-cols-2 lg:grid-cols-3">
|
||||
<div className="bg-white overflow-hidden shadow rounded-lg">
|
||||
<div className="px-4 py-5 sm:p-6">
|
||||
<div className="flex items-center">
|
||||
<div className="flex-shrink-0 bg-blue-500 rounded-md p-3">
|
||||
<svg
|
||||
className="h-6 w-6 text-white"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
strokeWidth={2}
|
||||
d="M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197M13 7a4 4 0 11-8 0 4 4 0 018 0z"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<div className="prose prose-lg text-gray-500 mx-auto">
|
||||
<p>
|
||||
Faucibus commodo massa rhoncus, volutpat. <strong>Dignissim</strong>{" "}
|
||||
sed <strong>eget risus enim</strong>. Mattis mauris semper sed amet
|
||||
vitae sed turpis id. Id dolor praesent donec est. Odio penatibus
|
||||
risus viverra tellus varius sit neque erat velit. Faucibus commodo
|
||||
massa rhoncus, volutpat. Dignissim sed eget risus enim.{" "}
|
||||
<a href="#">Mattis mauris semper</a> sed amet vitae sed turpis id.
|
||||
</p>
|
||||
<ul>
|
||||
<li>Quis elit egestas venenatis mattis dignissim.</li>
|
||||
<li>
|
||||
Cras cras lobortis vitae vivamus ultricies facilisis tempus.
|
||||
</li>
|
||||
<li>Orci in sit morbi dignissim metus diam arcu pretium.</li>
|
||||
</ul>
|
||||
<p>
|
||||
Quis semper vulputate aliquam venenatis egestas sagittis quisque
|
||||
orci. Donec commodo sit viverra aliquam porttitor ultrices gravida
|
||||
eu. Tincidunt leo, elementum mattis elementum ut nisl, justo, amet,
|
||||
mattis. Nunc purus, diam commodo tincidunt turpis. Amet, duis sed
|
||||
elit interdum dignissim.
|
||||
</p>
|
||||
<h2>From beginner to expert in 30 days</h2>
|
||||
<p>
|
||||
Id orci tellus laoreet id ac. Dolor, aenean leo, ac etiam consequat
|
||||
in. Convallis arcu ipsum urna nibh. Pharetra, euismod vitae interdum
|
||||
mauris enim, consequat vulputate nibh. Maecenas pellentesque id sed
|
||||
tellus mauris, ultrices mauris. Tincidunt enim cursus ridiculus mi.
|
||||
Pellentesque nam sed nullam sed diam turpis ipsum eu a sed convallis
|
||||
diam.
|
||||
</p>
|
||||
<blockquote>
|
||||
<p>
|
||||
Sagittis scelerisque nulla cursus in enim consectetur quam. Dictum
|
||||
urna sed consectetur neque tristique pellentesque. Blandit amet,
|
||||
sed aenean erat arcu morbi.
|
||||
</p>
|
||||
</blockquote>
|
||||
<p>
|
||||
Faucibus commodo massa rhoncus, volutpat. Dignissim sed eget risus
|
||||
enim. Mattis mauris semper sed amet vitae sed turpis id. Id dolor
|
||||
praesent donec est. Odio penatibus risus viverra tellus varius sit
|
||||
neque erat velit.
|
||||
</p>
|
||||
<figure>
|
||||
<figcaption>
|
||||
Sagittis scelerisque nulla cursus in enim consectetur quam.
|
||||
</figcaption>
|
||||
</figure>
|
||||
<h3>Everything you need to get up and running</h3>
|
||||
<p>
|
||||
Purus morbi dignissim senectus mattis <a href="#">adipiscing</a>.
|
||||
Amet, massa quam varius orci dapibus volutpat cras. In amet eu
|
||||
ridiculus leo sodales cursus tristique. Tincidunt sed tempus ut
|
||||
viverra ridiculus non molestie. Gravida quis fringilla amet eget dui
|
||||
tempor dignissim. Facilisis auctor venenatis varius nunc, congue
|
||||
erat ac. Cras fermentum convallis quam.
|
||||
</p>
|
||||
<p>
|
||||
Faucibus commodo massa rhoncus, volutpat. Dignissim sed eget risus
|
||||
enim. Mattis mauris semper sed amet vitae sed turpis id. Id dolor
|
||||
praesent donec est. Odio penatibus risus viverra tellus varius sit
|
||||
neque erat velit.
|
||||
</p>
|
||||
<div className="ml-5 w-0 flex-1">
|
||||
<dl>
|
||||
<dt className="text-sm leading-5 font-medium text-gray-500 truncate">
|
||||
Projects generated
|
||||
</dt>
|
||||
<dd className="flex items-baseline">
|
||||
<div className="text-2xl leading-8 font-semibold text-gray-900">
|
||||
71897
|
||||
</div>
|
||||
<div className="ml-2 flex items-baseline text-sm leading-5 font-semibold text-green-600">
|
||||
<svg
|
||||
className="self-center flex-shrink-0 h-5 w-5 text-green-500"
|
||||
fill="currentColor"
|
||||
viewBox="0 0 20 20"
|
||||
>
|
||||
<path
|
||||
fillRule="evenodd"
|
||||
d="M5.293 9.707a1 1 0 010-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 01-1.414 1.414L11 7.414V15a1 1 0 11-2 0V7.414L6.707 9.707a1 1 0 01-1.414 0z"
|
||||
clipRule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
<span className="sr-only">Increased by</span>
|
||||
122
|
||||
</div>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
<div className="bg-gray-50 px-4 py-4 sm:px-6">
|
||||
<div className="text-sm leading-5">
|
||||
<a
|
||||
href="#"
|
||||
className="font-medium text-blue-600 hover:text-blue-500 transition ease-in-out duration-150"
|
||||
>
|
||||
View all
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="bg-white overflow-hidden shadow rounded-lg">
|
||||
<div className="px-4 py-5 sm:p-6">
|
||||
<div className="flex items-center">
|
||||
<div className="flex-shrink-0 bg-blue-500 rounded-md p-3">
|
||||
<svg
|
||||
className="h-6 w-6 text-white"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
strokeWidth={2}
|
||||
d="M3 19v-8.93a2 2 0 01.89-1.664l7-4.666a2 2 0 012.22 0l7 4.666A2 2 0 0121 10.07V19M3 19a2 2 0 002 2h14a2 2 0 002-2M3 19l6.75-4.5M21 19l-6.75-4.5M3 10l6.75 4.5M21 10l-6.75 4.5m0 0l-1.14.76a2 2 0 01-2.22 0l-1.14-.76"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<div className="ml-5 w-0 flex-1">
|
||||
<dl>
|
||||
<dt className="text-sm leading-5 font-medium text-gray-500 truncate">
|
||||
Focused projects
|
||||
</dt>
|
||||
<dd className="flex items-baseline">
|
||||
<div className="text-2xl leading-8 font-semibold text-gray-900">
|
||||
50922
|
||||
</div>
|
||||
<div className="ml-2 flex items-baseline text-sm leading-5 font-semibold text-green-600">
|
||||
<svg
|
||||
className="self-center flex-shrink-0 h-5 w-5 text-green-500"
|
||||
fill="currentColor"
|
||||
viewBox="0 0 20 20"
|
||||
>
|
||||
<path
|
||||
fillRule="evenodd"
|
||||
d="M5.293 9.707a1 1 0 010-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 01-1.414 1.414L11 7.414V15a1 1 0 11-2 0V7.414L6.707 9.707a1 1 0 01-1.414 0z"
|
||||
clipRule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
<span className="sr-only">Increased by</span>
|
||||
300
|
||||
</div>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="bg-gray-50 px-4 py-4 sm:px-6">
|
||||
<div className="text-sm leading-5">
|
||||
<a
|
||||
href="#"
|
||||
className="font-medium text-blue-600 hover:text-blue-500 transition ease-in-out duration-150"
|
||||
>
|
||||
View all
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="bg-white overflow-hidden shadow rounded-lg">
|
||||
<div className="px-4 py-5 sm:p-6">
|
||||
<div className="flex items-center">
|
||||
<div className="flex-shrink-0 bg-blue-500 rounded-md p-3">
|
||||
<svg
|
||||
className="h-6 w-6 text-white"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
strokeLinecap="round"
|
||||
strokeLinejoin="round"
|
||||
strokeWidth={2}
|
||||
d="M15 15l-2 5L9 9l11 4-5 2zm0 0l5 5M7.188 2.239l.777 2.897M5.136 7.965l-2.898-.777M13.95 4.05l-2.122 2.122m-5.657 5.656l-2.12 2.122"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<div className="ml-5 w-0 flex-1">
|
||||
<dl>
|
||||
<dt className="text-sm leading-5 font-medium text-gray-500 truncate">
|
||||
Scaffolds
|
||||
</dt>
|
||||
<dd className="flex items-baseline">
|
||||
<div className="text-2xl leading-8 font-semibold text-gray-900">
|
||||
24300
|
||||
</div>
|
||||
<div className="ml-2 flex items-baseline text-sm leading-5 font-semibold text-red-600">
|
||||
<svg
|
||||
className="self-center flex-shrink-0 h-5 w-5 text-red-500"
|
||||
fill="currentColor"
|
||||
viewBox="0 0 20 20"
|
||||
>
|
||||
<path
|
||||
fillRule="evenodd"
|
||||
d="M14.707 10.293a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 111.414-1.414L9 12.586V5a1 1 0 012 0v7.586l2.293-2.293a1 1 0 011.414 0z"
|
||||
clipRule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
<span className="sr-only">Decreased by</span>
|
||||
24
|
||||
</div>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="bg-gray-50 px-4 py-4 sm:px-6">
|
||||
<div className="text-sm leading-5">
|
||||
<a
|
||||
href="#"
|
||||
className="font-medium text-blue-600 hover:text-blue-500 transition ease-in-out duration-150"
|
||||
>
|
||||
View all
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default HomePage;
|
||||
export default HomePage
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
module.exports = {
|
||||
plugins: ["tailwindcss", "postcss-preset-env"],
|
||||
};
|
||||
plugins: ['tailwindcss', 'postcss-preset-env'],
|
||||
}
|
||||
|
|
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 6.0 KiB |
After Width: | Height: | Size: 9.8 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 24 KiB |
After Width: | Height: | Size: 4.4 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 6.0 KiB |
After Width: | Height: | Size: 6.6 KiB |
After Width: | Height: | Size: 24 KiB |
After Width: | Height: | Size: 24 KiB |
|
@ -0,0 +1,2 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig><msapplication><tile><square70x70logo src="/ms-icon-70x70.png"/><square150x150logo src="/ms-icon-150x150.png"/><square310x310logo src="/ms-icon-310x310.png"/><TileColor>#ffffff</TileColor></tile></msapplication></browserconfig>
|
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 9.8 KiB |
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,38 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="151px" height="151px" viewBox="0 0 151 151" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 53.2 (72643) - https://sketchapp.com -->
|
||||
<title>Icon</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs>
|
||||
<linearGradient x1="50%" y1="4.42758392%" x2="50%" y2="96.2307907%" id="linearGradient-1">
|
||||
<stop stop-color="#57C5FA" offset="0%"></stop>
|
||||
<stop stop-color="#0C6DD1" offset="100%"></stop>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g id="New-website" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||
<g id="Main" transform="translate(-644.000000, -76.000000)">
|
||||
<g id="Header">
|
||||
<g id="Icon" transform="translate(644.000000, 76.000000)">
|
||||
<rect id="Rectangle" fill="url(#linearGradient-1)" x="0" y="0" width="150.528" height="150.528" rx="27.048"></rect>
|
||||
<g id="Group-2" stroke-width="1" transform="translate(26.460000, 30.870000)">
|
||||
<g id="Group" transform="translate(48.216000, 0.000000)" fill-rule="nonzero" stroke="#FFFFFF" stroke-width="2.94">
|
||||
<path d="M0.844646035,87.7355558 L0.844646035,-2.84217094e-14" id="Path"></path>
|
||||
<path d="M1.09285677,88.1947457 L22.4615444,5.586" id="Path-2"></path>
|
||||
<path d="M0.800645041,88.4316741 L42.4425085,19.0217991" id="Path-3"></path>
|
||||
<path d="M0.906698718,88.5038809 L49.1543523,39.69" id="Path-4"></path>
|
||||
<path d="M0.294,89.67 L40.3834876,65.856" id="Path-5"></path>
|
||||
</g>
|
||||
<g id="Group" transform="translate(25.137000, 44.835000) scale(-1, 1) translate(-25.137000, -44.835000) " fill-rule="nonzero" stroke="#FFFFFF" stroke-width="2.94">
|
||||
<path d="M1.72664603,87.7355558 L1.72664603,-2.84217094e-14" id="Path"></path>
|
||||
<path d="M1.97485677,88.1947457 L23.3435444,5.586" id="Path-2"></path>
|
||||
<path d="M1.68264504,88.4316741 L43.3245085,19.0217991" id="Path-3"></path>
|
||||
<path d="M1.78869872,88.5038809 L50.0363523,39.69" id="Path-4"></path>
|
||||
<path d="M0.294,89.67 L41.2654876,65.856" id="Path-5"></path>
|
||||
</g>
|
||||
<rect id="Rectangle" fill="#FFFFFF" fill-rule="nonzero" x="33.222" y="84.966" width="31.458" height="2.646"></rect>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.6 KiB |
|
@ -0,0 +1,41 @@
|
|||
{
|
||||
"name": "App",
|
||||
"icons": [
|
||||
{
|
||||
"src": "\/android-icon-36x36.png",
|
||||
"sizes": "36x36",
|
||||
"type": "image\/png",
|
||||
"density": "0.75"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-48x48.png",
|
||||
"sizes": "48x48",
|
||||
"type": "image\/png",
|
||||
"density": "1.0"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-72x72.png",
|
||||
"sizes": "72x72",
|
||||
"type": "image\/png",
|
||||
"density": "1.5"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-96x96.png",
|
||||
"sizes": "96x96",
|
||||
"type": "image\/png",
|
||||
"density": "2.0"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-144x144.png",
|
||||
"sizes": "144x144",
|
||||
"type": "image\/png",
|
||||
"density": "3.0"
|
||||
},
|
||||
{
|
||||
"src": "\/android-icon-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image\/png",
|
||||
"density": "4.0"
|
||||
}
|
||||
]
|
||||
}
|
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 50 KiB |
After Width: | Height: | Size: 5.8 KiB |
|
@ -4,5 +4,5 @@ module.exports = {
|
|||
extend: {},
|
||||
},
|
||||
variants: {},
|
||||
plugins: [],
|
||||
plugins: [require('@tailwindcss/typography')],
|
||||
}
|
||||
|
|
|
@ -1046,6 +1046,11 @@
|
|||
resolved "https://registry.yarnpkg.com/@next/react-refresh-utils/-/react-refresh-utils-9.5.1.tgz#fe257fafe1a7f1c0c6e818017fa65b5ee45c5eca"
|
||||
integrity sha512-A19z/E6f08RXfBRc2STQ+5qo7iSPif7mNcww9dZAVli3Idu4umGP5dbpL71Hz1vyRs1eMUEylXTpXsY2WzY07g==
|
||||
|
||||
"@tailwindcss/typography@^0.2.0":
|
||||
version "0.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@tailwindcss/typography/-/typography-0.2.0.tgz#b597c83502e3c3c6641a8aaabda223cd494ab349"
|
||||
integrity sha512-aPgMH+CjQiScLZculoDNOQUrrK2ktkbl3D6uCLYp1jgYRlNDrMONu9nMu8LfwAeetYNpVNeIGx7WzHSu0kvECg==
|
||||
|
||||
"@types/color-name@^1.1.1":
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
|
||||
|
@ -2763,6 +2768,14 @@ figgy-pudding@^3.5.1:
|
|||
resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e"
|
||||
integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==
|
||||
|
||||
file-loader@^6.0.0:
|
||||
version "6.0.0"
|
||||
resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.0.0.tgz#97bbfaab7a2460c07bcbd72d3a6922407f67649f"
|
||||
integrity sha512-/aMOAYEFXDdjG0wytpTL5YQLfZnnTmLNjn+AIrJ/6HVnTfDqLsVKUUwkDf4I4kgex36BvjuXEn/TX9B/1ESyqQ==
|
||||
dependencies:
|
||||
loader-utils "^2.0.0"
|
||||
schema-utils "^2.6.5"
|
||||
|
||||
file-uri-to-path@1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd"
|
||||
|
@ -3666,6 +3679,18 @@ miller-rabin@^4.0.0:
|
|||
bn.js "^4.0.0"
|
||||
brorand "^1.0.1"
|
||||
|
||||
mime-db@1.44.0:
|
||||
version "1.44.0"
|
||||
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92"
|
||||
integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==
|
||||
|
||||
mime-types@^2.1.26:
|
||||
version "2.1.27"
|
||||
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f"
|
||||
integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==
|
||||
dependencies:
|
||||
mime-db "1.44.0"
|
||||
|
||||
mini-css-extract-plugin@0.8.0:
|
||||
version "0.8.0"
|
||||
resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.0.tgz#81d41ec4fe58c713a96ad7c723cdb2d0bd4d70e1"
|
||||
|
@ -3825,6 +3850,14 @@ neo-async@^2.5.0, neo-async@^2.6.1:
|
|||
resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
|
||||
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
|
||||
|
||||
next-images@^1.4.1:
|
||||
version "1.4.1"
|
||||
resolved "https://registry.yarnpkg.com/next-images/-/next-images-1.4.1.tgz#946f34728609dc24517234d85b2f6b6f9a3344d1"
|
||||
integrity sha512-Xkxxf+Hw/Pet2VVbw72jc7PAcOGisTTXa/L3a6XPRqSlhOJSXyGxE3U8hJn5wwfrzkXT31nxrfnfQKfbgjCPEg==
|
||||
dependencies:
|
||||
file-loader "^6.0.0"
|
||||
url-loader "^4.0.0"
|
||||
|
||||
next-tick@~1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c"
|
||||
|
@ -5333,7 +5366,7 @@ schema-utils@^1.0.0:
|
|||
ajv-errors "^1.0.0"
|
||||
ajv-keywords "^3.1.0"
|
||||
|
||||
schema-utils@^2.6.1, schema-utils@^2.6.6:
|
||||
schema-utils@^2.6.1, schema-utils@^2.6.5, schema-utils@^2.6.6:
|
||||
version "2.7.0"
|
||||
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7"
|
||||
integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==
|
||||
|
@ -5961,6 +5994,15 @@ urix@^0.1.0:
|
|||
resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
|
||||
integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
|
||||
|
||||
url-loader@^4.0.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.0.tgz#c7d6b0d6b0fccd51ab3ffc58a78d32b8d89a7be2"
|
||||
integrity sha512-IzgAAIC8wRrg6NYkFIJY09vtktQcsvU8V6HhtQj9PTefbYImzLB1hufqo4m+RyM5N3mLx5BqJKccgxJS+W3kqw==
|
||||
dependencies:
|
||||
loader-utils "^2.0.0"
|
||||
mime-types "^2.1.26"
|
||||
schema-utils "^2.6.5"
|
||||
|
||||
url@^0.11.0:
|
||||
version "0.11.0"
|
||||
resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
|
||||
|
|
|
@ -58,17 +58,6 @@ export default () => {
|
|||
Documentation
|
||||
</Link>
|
||||
</div>
|
||||
<div className="px-5 py-2">
|
||||
<Link
|
||||
to="/faq"
|
||||
alt="Opens the frequently asked questions section"
|
||||
target="__blank"
|
||||
className="text-base leading-6"
|
||||
sx={{ color: 'gray', ':hover': { color: 'primary' } }}
|
||||
>
|
||||
FAQ
|
||||
</Link>
|
||||
</div>
|
||||
<div className="px-5 py-2">
|
||||
<a
|
||||
href={releasesUrl}
|
||||
|
|
|
@ -166,6 +166,17 @@ export default ({ menuOpen, setMenuOpen, menuRef }) => {
|
|||
>
|
||||
APPS AT SCALE
|
||||
</Link>
|
||||
<a
|
||||
sx={{
|
||||
...linkStyle,
|
||||
ml: [0, 4],
|
||||
variant: 'text.header',
|
||||
}}
|
||||
href="https://stats.tuist.io"
|
||||
alt="Statistics about the usage of Tuist"
|
||||
>
|
||||
STATS
|
||||
</a>
|
||||
<Link
|
||||
sx={{
|
||||
...linkStyle,
|
||||
|
|