Skip to content

Commit 4a27f80

Browse files
committed
chore: wip
chore: wip chore: wip chore: wip
1 parent 50bc038 commit 4a27f80

File tree

16 files changed

+288
-208
lines changed

16 files changed

+288
-208
lines changed

bun.lockb

18.1 KB
Binary file not shown.

config/docs.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,7 @@ export default {
279279

280280
footer: {
281281
message: 'Released under the MIT License.',
282-
copyright: 'Copyright © 2023-present Stacks',
282+
copyright: 'Copyright © 2024-present Stacks.js, Inc.',
283283
},
284284

285285
socialLinks: [

lang/en.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
button:
2-
about: About
3-
back: Back
4-
go: GO
5-
home: Home
2+
about: "About"
3+
back: "Back"
4+
go: "GO"
5+
home: "Home"
66
toggle_dark: "Toggle dark mode"
77
toggle_langs: "Change languages"
88
intro:
@@ -11,4 +11,4 @@ intro:
1111
hi: "Hi, {name}!"
1212
aka: "Also known as"
1313
whats_your_name: "What’s your name?"
14-
not-found: "Not found"
14+
not_found: "Not found"

resources/components/marketing/Footer.stx

Lines changed: 9 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -9,50 +9,22 @@ const currentYear = computed(() => new Date().getFullYear())
99
<Logo class="mx-auto h-10 w-auto" />
1010
<nav class="mt-10 text-sm" aria-label="quick links">
1111
<div class="-my-1 flex justify-center gap-x-6">
12-
<NavLink href="#features">
13-
Features
14-
</NavLink>
15-
<NavLink href="#testimonials">
16-
Testimonials
17-
</NavLink>
18-
<NavLink href="#pricing">
19-
Pricing
20-
</NavLink>
21-
<NavLink href="#pricing">
22-
News
23-
</NavLink>
24-
<NavLink href="#pricing">
25-
Changelog
26-
</NavLink>
12+
<NavLink href="#features">Features</NavLink>
13+
<NavLink href="#testimonials">Testimonials</NavLink>
14+
<NavLink href="#pricing">Pricing</NavLink>
15+
<NavLink href="#pricing">News</NavLink>
16+
<NavLink href="#pricing">Changelog</NavLink>
2717
</div>
2818
</nav>
2919
</div>
3020

3121
<div class="flex flex-col items-center border-t border-slate-400/10 py-10 sm:flex-row-reverse sm:justify-between">
3222
<div class="flex gap-x-6">
33-
<a
34-
href="https://twitter.com/stacksjs"
35-
class="group"
36-
aria-label="Stacks on Twitter"
37-
>
38-
<svg
39-
aria-hidden="true"
40-
className="h-6 w-6 fill-slate-500 group-hover:fill-slate-700"
41-
>
42-
<path 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 0 0 22 5.92a8.19 8.19 0 0 1-2.357.646 4.118 4.118 0 0 0 1.804-2.27 8.224 8.224 0 0 1-2.605.996 4.107 4.107 0 0 0-6.993 3.743 11.65 11.65 0 0 1-8.457-4.287 4.106 4.106 0 0 0 1.27 5.477A4.073 4.073 0 0 1 2.8 9.713v.052a4.105 4.105 0 0 0 3.292 4.022 4.093 4.093 0 0 1-1.853.07 4.108 4.108 0 0 0 3.834 2.85A8.233 8.233 0 0 1 2 18.407a11.615 11.615 0 0 0 6.29 1.84" />
43-
</svg>
23+
<a class="group" aria-label="Stacks on Twitter" href="https://twitter.com/stacksjs">
24+
<svg aria-hidden="true" class="h-6 w-6 fill-slate-500 group-hover:fill-slate-700"><path 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 0 0 22 5.92a8.19 8.19 0 0 1-2.357.646 4.118 4.118 0 0 0 1.804-2.27 8.224 8.224 0 0 1-2.605.996 4.107 4.107 0 0 0-6.993 3.743 11.65 11.65 0 0 1-8.457-4.287 4.106 4.106 0 0 0 1.27 5.477A4.073 4.073 0 0 1 2.8 9.713v.052a4.105 4.105 0 0 0 3.292 4.022 4.093 4.093 0 0 1-1.853.07 4.108 4.108 0 0 0 3.834 2.85A8.233 8.233 0 0 1 2 18.407a11.615 11.615 0 0 0 6.29 1.84"></path></svg>
4425
</a>
45-
<a
46-
href="https://github.com/stacksjs/stacks"
47-
class="group"
48-
aria-label="Stacks on GitHub"
49-
>
50-
<svg
51-
aria-hidden="true"
52-
className="h-6 w-6 fill-slate-500 group-hover:fill-slate-700"
53-
>
54-
<path d="M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0 1 12 6.844a9.59 9.59 0 0 1 2.504.337c1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.02 10.02 0 0 0 22 12.017C22 6.484 17.522 2 12 2Z" />
55-
</svg>
26+
<a class="group" aria-label="Stacks on GitHub" href="https://github.com/stacksjs/stacks">
27+
<svg aria-hidden="true" class="h-6 w-6 fill-slate-500 group-hover:fill-slate-700"><path d="M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0 1 12 6.844a9.59 9.59 0 0 1 2.504.337c1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.02 10.02 0 0 0 22 12.017C22 6.484 17.522 2 12 2Z"></path></svg>
5628
</a>
5729
</div>
5830

resources/components/marketing/Hero.stx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ const companies = ref([
3333
</h1>
3434
<p class="mx-auto mt-6 max-w-2xl text-lg tracking-tight text-slate-700">
3535
Stacks is a type-safe full-stack framework for Artisans.
36-
<br>Rapid development, meeting the best team’s full stack needs.
36+
<br>Rapid development, for the best full-stack teams, or individuals.
3737
</p>
3838
<div class="mt-10 flex justify-center gap-x-6">
3939
<Button href="/register">

resources/components/marketing/Pricing.stx

Lines changed: 122 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -80,15 +80,130 @@ const plans = [
8080
</div>
8181
<div class="-mx-4 mt-16 grid max-w-2xl grid-cols-1 gap-y-10 sm:mx-auto lg:-mx-8 lg:max-w-none lg:grid-cols-3 xl:mx-0 xl:gap-x-8">
8282
<!-- <Plan
83-
v-for="(plan, index) in plans"
8483
:key="index"
85-
:name="plan.name"
86-
:price="plan.price"
87-
:description="plan.description"
88-
:href="plan.href"
89-
:features="plan.features"
90-
:featured="plan.featured"
84+
:name="plans[0].name"
85+
:price="plans[0].price"
86+
:description="plans[0].description"
87+
:href="plans[0].href"
88+
:features="plans[0].features"
89+
:featured="plans[0].featured"
9190
/> -->
91+
<section
92+
class="flex flex-col rounded-3xl px-6 sm:px-8"
93+
:class="[
94+
false ? 'order-first bg-blue-600 py-8 lg:order-none' : 'lg:py-8',
95+
]"
96+
>
97+
<h3 class="mt-5 font-display text-lg text-white">
98+
{{ plans[0].name }}
99+
</h3>
100+
<p
101+
class="mt-2 text-base"
102+
:class="[
103+
false ? 'text-white' : 'text-slate-400',
104+
]"
105+
>
106+
{{ plans[0].description }}
107+
</p>
108+
<p class="order-first font-display text-5xl font-light tracking-tight text-white">
109+
{{ plans[0].price }}
110+
</p>
111+
<ul
112+
role="list"
113+
class="order-last mt-10 flex flex-col gap-y-3 text-sm"
114+
:class="[
115+
false ? 'text-white' : 'text-slate-200',
116+
]"
117+
>
118+
</ul>
119+
<Button
120+
:href="plans[0].href"
121+
:variant="false ? 'solid' : 'outline'"
122+
color="white"
123+
class="mt-8"
124+
:aria-label="`Get started with the ${plans[0].name} plan for ${plans[0].price}`"
125+
>
126+
Get started
127+
</Button>
128+
</section>
129+
130+
<section
131+
class="flex flex-col rounded-3xl px-6 sm:px-8"
132+
:class="[
133+
true ? 'order-first bg-blue-600 py-8 lg:order-none' : 'lg:py-8',
134+
]"
135+
>
136+
<h3 class="mt-5 font-display text-lg text-white">
137+
{{ plans[1].name }}
138+
</h3>
139+
<p
140+
class="mt-2 text-base"
141+
:class="[
142+
true ? 'text-white' : 'text-slate-400',
143+
]"
144+
>
145+
{{ plans[1].description }}
146+
</p>
147+
<p class="order-first font-display text-5xl font-light tracking-tight text-white">
148+
{{ plans[1].price }}
149+
</p>
150+
<ul
151+
role="list"
152+
class="order-last mt-10 flex flex-col gap-y-3 text-sm"
153+
:class="[
154+
true ? 'text-white' : 'text-slate-200',
155+
]"
156+
>
157+
</ul>
158+
<Button
159+
:href="plans[1].href"
160+
:variant="true ? 'solid' : 'outline'"
161+
color="white"
162+
class="mt-8"
163+
:aria-label="`Get started with the ${plans[1].name} plan for ${plans[1].price}`"
164+
>
165+
Get started
166+
</Button>
167+
</section>
168+
169+
<section
170+
class="flex flex-col rounded-3xl px-6 sm:px-8"
171+
:class="[
172+
false ? 'order-first bg-blue-600 py-8 lg:order-none' : 'lg:py-8',
173+
]"
174+
>
175+
<h3 class="mt-5 font-display text-lg text-white">
176+
{{ plans[2].name }}
177+
</h3>
178+
<p
179+
class="mt-2 text-base"
180+
:class="[
181+
false ? 'text-white' : 'text-slate-400',
182+
]"
183+
>
184+
{{ plans[2].description }}
185+
</p>
186+
<p class="order-first font-display text-5xl font-light tracking-tight text-white">
187+
{{ plans[2].price }}
188+
</p>
189+
<ul
190+
role="list"
191+
class="order-last mt-10 flex flex-col gap-y-3 text-sm"
192+
:class="[
193+
false ? 'text-white' : 'text-slate-200',
194+
]"
195+
>
196+
</ul>
197+
<Button
198+
:href="plans[2].href"
199+
:variant="false ? 'solid' : 'outline'"
200+
color="white"
201+
class="mt-8"
202+
:aria-label="`Get started with the ${plans[2].name} plan for ${plans[2].price}`"
203+
>
204+
Get started
205+
</Button>
206+
</section>
92207
</div>
93208
</Container>
94209
</section>

resources/components/marketing/PrimaryFeatures.stx

Lines changed: 27 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,52 @@
11
<script setup lang="ts">
22
import { Tab, TabGroup, TabList, TabPanel, TabPanels } from '@headlessui/vue'
3-
4-
// import backgroundImage from '../../assets/images/background-features.jpg'
3+
import screenshotExpenses1 from '../../../public/expenses.png'
54
import screenshotExpenses from '../../assets/images/screenshots/expenses.png'
65
import screenshotPayroll from '../../assets/images/screenshots/payroll.png'
76
import screenshotReporting from '../../assets/images/screenshots/reporting.png'
87
import screenshotVatReturns from '../../assets/images/screenshots/vat-returns.png'
8+
// import backgroundImage from '../../assets/images/background-features.jpg'
99

1010
const features = [
1111
{
1212
title: 'Frontend',
13-
description: 'Keep track of everyone’s salaries and whether or not they’ve been paid. Direct deposit not supported.',
14-
image: screenshotPayroll,
13+
description: 'Lorem ipsum dolor sit, amet consectetur adipisicing elit. Tempora in cum blanditiis? Qui omnis unde.',
14+
// image: screenshotPayroll,
15+
image: 'https://salient.tailwindui.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fpayroll.517af4e7.png&w=1920&q=75',
1516
},
1617
{
1718
title: 'Backend',
18-
description: 'All of your receipts organized into one place, as long as you don’t mind typing in the data by hand.',
19-
image: screenshotExpenses,
19+
description: 'Lorem ipsum dolor sit, amet consectetur adipisicing elit. Tempora in cum blanditiis? Qui omnis unde.',
20+
image: 'https://salient.tailwindui.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fpayroll.517af4e7.png&w=1920&q=75',
2021
},
2122
{
2223
title: 'Cloud',
23-
description: 'We only sell our software to companies who don’t deal with VAT at all, so technically we do all the VAT stuff they need.',
24-
image: screenshotVatReturns,
24+
description: 'Lorem ipsum dolor sit, amet consectetur adipisicing elit. Tempora in cum blanditiis? Qui omnis unde.',
25+
image: 'https://salient.tailwindui.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fpayroll.517af4e7.png&w=1920&q=75',
2526
},
2627
{
2728
title: 'DX',
28-
description: 'Easily export your data into an Excel spreadsheet where you can do whatever the hell you want with it.',
29-
image: screenshotReporting,
29+
description: 'Lorem ipsum dolor sit, amet consectetur adipisicing elit. Tempora in cum blanditiis? Qui omnis unde.',
30+
image: 'https://salient.tailwindui.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fpayroll.517af4e7.png&w=1920&q=75',
3031
},
3132
]
3233

3334
const tabIndex = ref(0)
34-
const tabOrientation = ref('horizontal')
35-
const selectedIndex = computed(() => tabIndex.value)
36-
const featureIndex = computed(() => {
37-
if (selectedIndex.value === 0) return 0
38-
if (selectedIndex.value === 1) return 1
39-
if (selectedIndex.value === 2) return 2
40-
if (selectedIndex.value === 3) return 3
41-
})
35+
const tabOrientation = ref('vertical')
36+
37+
const onMediaQueryChange = (event) => {
38+
tabOrientation.value = event.matches ? 'vertical' : 'horizontal'
39+
}
4240

4341
onMounted(() => {
4442
const lgMediaQuery = window.matchMedia('(min-width: 1024px)')
4543

46-
const onMediaQueryChange = (event) => {
47-
tabOrientation.value = event.matches ? 'vertical' : 'horizontal'
48-
}
49-
5044
onMediaQueryChange(lgMediaQuery)
5145
lgMediaQuery.addEventListener('change', onMediaQueryChange)
46+
})
5247

53-
onUnmounted(() => {
54-
lgMediaQuery.removeEventListener('change', onMediaQueryChange)
55-
})
48+
onUnmounted(() => {
49+
lgMediaQuery.removeEventListener('change', onMediaQueryChange)
5650
})
5751
</script>
5852

@@ -61,21 +55,22 @@ onMounted(() => {
6155
<Container class="relative">
6256
<div class="max-w-2xl md:mx-auto md:text-center xl:max-w-none">
6357
<h2 class="font-display text-3xl tracking-tight text-white sm:text-4xl md:text-5xl">
64-
Everything you need to run your books.
58+
Build. Ship. Grow.
6559
</h2>
6660
<p class="mt-6 text-lg tracking-tight text-blue-100">
67-
Well everything you need if you aren’t that picky about minor details like tax compliance.
61+
Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
62+
necessitatibus incidunt ut officiis explicabo inventore.
6863
</p>
6964
</div>
7065

7166
<TabGroup
7267
v-model="tabIndex"
7368
as="div"
7469
class="mt-16 grid grid-cols-1 items-center gap-y-2 pt-10 sm:gap-y-6 md:mt-20 lg:grid-cols-12 lg:pt-0"
75-
:vertical="tabOrientation === 'vertical'"
70+
vertical
7671
>
7772
<TabList
78-
class="-mx-4 flex overflow-x-auto pb-4 sm:mx-0 sm:overflow-visible sm:pb-0 lg:col-span-5"
73+
class="mt-16 -mx-4 flex overflow-x-auto pb-4 sm:mx-0 sm:overflow-visible sm:pb-0 lg:col-span-5"
7974
:class="selectedIndex === featureIndex
8075
? 'bg-white lg:bg-white/10 lg:ring-1 lg:ring-inset lg:ring-white/10'
8176
: 'hover:bg-white/10 lg:hover:bg-white/5'"
@@ -147,7 +142,9 @@ onMounted(() => {
147142
</p>
148143
</div>
149144
<div class="mt-10 w-[45rem] overflow-hidden rounded-xl bg-slate-50 shadow-xl shadow-blue-900/20 sm:w-auto lg:mt-0 lg:w-[67.8125rem]">
150-
<img :src="features[0].image" alt="" class="w-full">
145+
{{ screenshotExpenses }}
146+
<!-- <img src="/expenses.png" alt="" class="w-full"> -->
147+
<img src="https://salient.tailwindui.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fpayroll.517af4e7.png&w=1920&q=75" alt="" class="w-full">
151148
</div>
152149
</TabPanel>
153150

0 commit comments

Comments
 (0)