Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Programatic SEO #108

Merged
merged 24 commits into from
Aug 21, 2023
Merged
Show file tree
Hide file tree
Changes from 11 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,5 @@ jobs:
run: pnpm install
- name: Generate static pages
run: pnpm build
env:
BEARER_TOKEN: ${{secrets.BEARER_TOKEN}}
2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
"@headlessui/vue": "^1.7.15",
"@heroicons/vue": "^2.0.18",
"astro": "^2.10.5",
"marked": "^7.0.3",
"sharp": "^0.32.4",
"sitemap": "^7.1.1",
"vue": "^3.3.4"
Expand All @@ -24,6 +25,7 @@
"@antfu/eslint-config": "^0.40.0",
"@iconify-json/carbon": "^1.1.19",
"@iconify-json/twemoji": "^1.1.12",
"@types/marked": "^5.0.1",
"@types/node": "^20.4.9",
"@types/semver": "^7.5.0",
"@unocss/astro": "^0.55.0",
Expand Down
16 changes: 16 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

36 changes: 11 additions & 25 deletions src/components/Footer.vue
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ const navigation = {
'stroke-linecap': 'round',
'stroke-linejoin': 'round',
'stroke-width': 2,
'd': 'M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z',
d: 'M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z',
}),
],
),
Expand All @@ -108,7 +108,7 @@ const navigation = {
'stroke-linecap': 'round',
'stroke-linejoin': 'round',
'stroke-width': 2,
'd': 'M10 20l4-16m4 4l4 4-4 4M6 16l-4-4 4-4',
d: 'M10 20l4-16m4 4l4 4-4 4M6 16l-4-4 4-4',
}),
],
),
Expand All @@ -131,7 +131,7 @@ const navigation = {
'stroke-linecap': 'round',
'stroke-linejoin': 'round',
'stroke-width': 2,
'd': 'M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z',
d: 'M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z',
}),
],
),
Expand All @@ -154,7 +154,7 @@ const navigation = {
'stroke-linecap': 'round',
'stroke-linejoin': 'round',
'stroke-width': 2,
'd': 'M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84',
d: 'M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84',
}),
],
),
Expand All @@ -166,16 +166,12 @@ const navigation = {

<template>
<footer class="bg-white" aria-labelledby="footer-heading">
<h2 id="footer-heading" class="sr-only">
Footer
</h2>
<h2 id="footer-heading" class="sr-only">Footer</h2>
<div class="mx-auto max-w-7xl py-12 px-4 sm:px-6 lg:py-16 lg:px-8">
<div class="xl:grid xl:grid-cols-3 xl:gap-8">
<div class="space-y-8 xl:col-span-1">
<!-- <img class="h-10" src="https://tailwindui.com/img/logos/mark.svg?color=gray&shade=300" alt="Company name"> -->
<p class="text-base text-gray-500">
Making the world a better place through constructing elegant apps.
</p>
<p class="text-base text-gray-500">Making the world a better place through constructing elegant apps.</p>
<ul role="list" class="mt-4 space-y-4">
<li v-for="item in navigation.hero" :key="item.name">
<a :href="item.href" target="_blank" rel="noreferrer">
Expand All @@ -192,9 +188,7 @@ const navigation = {
<div class="mt-12 grid grid-cols-2 gap-8 xl:col-span-2 xl:mt-0">
<div class="md:grid md:grid-cols-2 md:gap-8">
<div>
<h3 class="text-base font-medium text-gray-900">
Solutions
</h3>
<h3 class="text-base font-medium text-gray-900">Solutions</h3>
<ul role="list" class="mt-4 space-y-4">
<li v-for="item in navigation.solutions" :key="item.name">
<a
Expand All @@ -209,9 +203,7 @@ const navigation = {
</ul>
</div>
<div class="mt-12 md:mt-0">
<h3 class="text-base font-medium text-gray-900">
Support
</h3>
<h3 class="text-base font-medium text-gray-900">Support</h3>
<ul role="list" class="mt-4 space-y-4">
<li v-for="item in navigation.support" :key="item.name">
<a
Expand All @@ -229,9 +221,7 @@ const navigation = {
</div>
<div class="md:grid md:grid-cols-2 md:gap-8">
<div>
<h3 class="text-base font-medium text-gray-900">
Company
</h3>
<h3 class="text-base font-medium text-gray-900">Company</h3>
<ul role="list" class="mt-4 space-y-4">
<li v-for="item in navigation.company" :key="item.name">
<a
Expand All @@ -244,9 +234,7 @@ const navigation = {
</ul>
</div>
<div class="mt-12 md:mt-0">
<h3 class="text-base font-medium text-gray-900">
Legal
</h3>
<h3 class="text-base font-medium text-gray-900">Legal</h3>
<ul role="list" class="mt-4 space-y-4">
<li v-for="item in navigation.legal" :key="item.name">
<a
Expand All @@ -263,9 +251,7 @@ const navigation = {
</div>
</div>
<div class="mt-12 border-t border-gray-200 pt-8">
<p class="text-base text-gray-400 xl:text-center">
&copy; {{ year }} {{ brand }}, Inc. All rights reserved.
</p>
<p class="text-base text-gray-400 xl:text-center">&copy; {{ year }} {{ brand }}, Inc. All rights reserved.</p>
</div>
</div>
</footer>
Expand Down
4 changes: 1 addition & 3 deletions src/components/Header.vue
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,7 @@ const menuMobile = ref(false)
<!-- Current: "bg-gray-900 text-white", Default: "text-gray-300 hover:bg-gray-700 hover:text-white" -->
<a href="/pricing/" title="Pricing" class="text-gray-300 hover:bg-gray-700 hover:text-white block px-3 py-2 rounded-md text-base font-medium"> Pricing </a>
<a href="/blog/" title="Blog" class="text-gray-300 hover:bg-gray-700 hover:text-white block px-3 py-2 rounded-md text-base font-medium"> Blog </a>
<a href="/docs" title="Documentation" class="text-gray-300 hover:bg-gray-700 hover:text-white block px-3 py-2 rounded-md text-base font-medium">
Documentation
</a>
<a href="/docs" title="Documentation" class="text-gray-300 hover:bg-gray-700 hover:text-white block px-3 py-2 rounded-md text-base font-medium"> Documentation </a>
<a
href="https://web.capgo.app/login"
target="_blank"
Expand Down
4 changes: 3 additions & 1 deletion src/components/pricing/Faq.vue
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,9 @@ import { openMessenger } from '../../services/chatwoot'
<div class="px-8 py-4 text-center bg-gray-800 rounded-full">
<p class="text-gray-50">
Didn’t find the answer you are looking for?
<button @click="openMessenger()" class="text-yellow-300 transition-all duration-200 hover:text-yellow-400 focus:text-yellow-400 hover:underline"> Contact our support</button>
<button @click="openMessenger()" class="text-yellow-300 transition-all duration-200 hover:text-yellow-400 focus:text-yellow-400 hover:underline">
Contact our support
</button>
</p>
</div>
</div>
Expand Down
Loading
Loading