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(web): Add Pricing Page #243

Merged
merged 39 commits into from
Jun 27, 2024
Merged
Show file tree
Hide file tree
Changes from 35 commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
f1ec7ef
feat(web): add pricing page
HarshPatel5940 May 27, 2024
1a05e99
chore(deps): remove millionjs
HarshPatel5940 May 31, 2024
73adbd5
feat(web): add tabs in pricing page
HarshPatel5940 May 31, 2024
b1383ac
chore(web): slightly better stlying
HarshPatel5940 May 31, 2024
1d9d6a3
chore(api): Fix inconsistencies in zod schema (#240)
Ritika1705 May 27, 2024
45d95c4
Update CODEOWNERS
kriptonian1 May 28, 2024
fb4f146
test: Refactor workspace role e2e tests (#248)
rajdip-b May 28, 2024
4b94ee6
test: Refactor environment e2e tests (#252)
rajdip-b May 31, 2024
a8e9012
test: Refactored variable e2e tests (#253)
rajdip-b May 31, 2024
312ec41
test: Refactored secret e2e tests (#254)
rajdip-b May 31, 2024
7de6765
Merge branch 'develop' into hp/feat/add-pricing-page
HarshPatel5940 Jun 1, 2024
15a3e04
chore: merge changes from develop
HarshPatel5940 Jun 1, 2024
3dff292
chore(web): better tab design
HarshPatel5940 Jun 1, 2024
2c6c736
chore(web): add basic price card
HarshPatel5940 Jun 1, 2024
8308f26
feat(web): added dynamic price cards
HarshPatel5940 Jun 1, 2024
153205e
fix(web): resolve lint errors
HarshPatel5940 Jun 1, 2024
316170f
fix(web): implment sonar suggestions
HarshPatel5940 Jun 1, 2024
b44df4d
Merge branch 'develop' into hp/feat/add-pricing-page
HarshPatel5940 Jun 4, 2024
f9c8f83
Merge branch 'develop' into hp/feat/add-pricing-page
rajdip-b Jun 5, 2024
033c530
styles(web): resolve comments
HarshPatel5940 Jun 6, 2024
36e4f1b
fix(web): fix popular card and styles
HarshPatel5940 Jun 12, 2024
07dfc3a
fix(web): resolve lint issues
HarshPatel5940 Jun 12, 2024
9dbd950
Merge branch 'develop' into hp/feat/add-pricing-page
HarshPatel5940 Jun 12, 2024
55a3838
fix: complete merge
HarshPatel5940 Jun 12, 2024
a03be9c
Merge branch 'develop' into hp/feat/add-pricing-page
HarshPatel5940 Jun 15, 2024
5f8c57f
chore(web): resolve comments
HarshPatel5940 Jun 15, 2024
e3c698f
chore(web): add type for `useState`
HarshPatel5940 Jun 15, 2024
d878adb
Merge branch 'develop' into hp/feat/add-pricing-page
rajdip-b Jun 17, 2024
11d79ad
feat(web): add pricing actual details
HarshPatel5940 Jun 17, 2024
a13b8d2
chore(web): fix casing and conditions
HarshPatel5940 Jun 17, 2024
4f7f60f
chore(web): slighlty better reponsivity
HarshPatel5940 Jun 17, 2024
7225df6
chore(web): remove workspace count from top
HarshPatel5940 Jun 17, 2024
86bb84c
chore(web): rename to `features`
HarshPatel5940 Jun 17, 2024
f920894
Merge branch 'develop' into hp/feat/add-pricing-page
rajdip-b Jun 23, 2024
fbf779a
feat(web): integerate tabs
HarshPatel5940 Jun 24, 2024
045ca33
Merge branch 'develop' into hp/feat/add-pricing-page
HarshPatel5940 Jun 26, 2024
49ab016
chore(web): remove comments
HarshPatel5940 Jun 26, 2024
1dce579
Merge branch 'develop' into hp/feat/add-pricing-page
HarshPatel5940 Jun 27, 2024
7b93fd0
chore: complete merge
HarshPatel5940 Jun 27, 2024
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: 1 addition & 1 deletion apps/web/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"@tsparticles/slim": "^3.3.0",
"@types/mdx": "^2.0.13",
"clsx": "^2.1.0",
"framer-motion": "^11.0.6",
"framer-motion": "^11.2.9",
"geist": "^1.2.2",
"next": "^13.5.6",
"react": "^18.2.0",
Expand Down
Binary file added apps/web/public/pricing/grid.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions apps/web/public/pricing/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import ProjectSVG from './project.svg'
import UserSVG from './user.svg'
import SupportSVG from './support.svg'
import TickSVG from './tick.svg'
import StarsLeftSVG from './stars_left.svg'
import StarsRightSVG from './stars_right.svg'

export { ProjectSVG, UserSVG, SupportSVG, TickSVG, StarsLeftSVG, StarsRightSVG }
16 changes: 16 additions & 0 deletions apps/web/public/pricing/project.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
30 changes: 30 additions & 0 deletions apps/web/public/pricing/stars_left.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
30 changes: 30 additions & 0 deletions apps/web/public/pricing/stars_right.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 19 additions & 0 deletions apps/web/public/pricing/support.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
15 changes: 15 additions & 0 deletions apps/web/public/pricing/tick.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions apps/web/public/pricing/user.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
76 changes: 76 additions & 0 deletions apps/web/src/app/(main)/pricing/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
'use client'

import { useState } from 'react'
import AnimatedTab from '@/components/ui/animated-tabs'
import { ColorBGSVG } from '@public/hero'
import PriceCard from '@/components/pricing/card'
import { PriceCardsData, tabsData } from '@/constants/pricing'

function About(): React.JSX.Element {
const [activeTab, setActiveTab] = useState<string>(tabsData[0].id)

return (
<div className="relative flex flex-col items-center justify-center ">
<ColorBGSVG className="absolute -z-10 h-screen w-screen" />

<div className="pb-4 pt-14">
<h3 className="w-24 rounded-full border-[1px] border-white border-opacity-[.04] bg-white bg-opacity-5 p-2 text-center text-xs uppercase tracking-widest text-white md:text-sm">
pricing
</h3>
</div>

<h1 className="text-brandBlue/90 w-[25rem] text-center text-4xl font-extralight md:w-auto md:text-6xl">
<span className="self-center font-bold tracking-wide">
Transparent Pricing
</span>
</h1>
<span className="text-brandBlue/80 mt-5 w-[20rem] text-center text-sm md:mt-9 md:w-[35rem] md:text-xl">
Keyshade combines enterprise-grade capabilities with simplicity offering
plans tailored to users of all levels.
</span>
<div className="mt-8 md:mt-12">
<AnimatedTab
activeTab={activeTab}
setActiveTab={setActiveTab}
tabs={tabsData}
/>
</div>
<div className="flex h-fit w-fit justify-center">
{/* //TODO: Make the below block responsive */}
{/* <div className="absolute z-10 hidden h-2/3 w-full bg-gradient-to-b from-transparent to-black md:flex">
<div className="absolute bottom-0 h-[1px] w-1/3 bg-gradient-to-r from-white/5 to-white/15 lg:left-[10%]" />
<button className="absolute -bottom-6 left-[44.5%] z-10 rounded-full border border-white/10 bg-white/5 px-5 py-3 text-base">
See more features
</button>
<div className="absolute bottom-0 h-[1px] w-1/3 bg-gradient-to-r from-white/15 to-white/5 lg:right-[10%]" />
</div> */}
HarshPatel5940 marked this conversation as resolved.
Show resolved Hide resolved
<div className="mt-10 w-fit md:mt-20 ">
<div className="grid grid-cols-1 gap-10 md:grid-cols-2 lg:grid-cols-4 ">
{PriceCardsData.map((card) => (
<PriceCard
PricingType={activeTab}
description={card.description}
isPopular={card.isPopular}
key={card.title}
miscFeatures={card.miscFeatures}
price={card.price}
spaceAccessSpecifier={card.spaceAccessSpecifier}
spaceEnvironment={card.spaceEnvironment}
spaceIntegerations={card.spaceIntegerations}
spaceLiveSupport={card.spaceLiveSupport}
spaceProjects={card.spaceProjects}
spaceSecrets={card.spaceSecrets}
spaceUsers={card.spaceUsers}
spaceWorkspace={card.spaceWorkspace}
title={card.title}
yearlyPrice={card.yearlyPrice}
/>
))}
</div>
</div>
</div>
</div>
)
}

export default About
Loading
Loading