mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2025-11-14 08:42:08 +10:00
fix(client): 🐛 do not allow private resumes to be viewable or downloadable through the link
This commit is contained in:
51
client/components/home/sections/Logo.tsx
Normal file
51
client/components/home/sections/Logo.tsx
Normal file
@ -0,0 +1,51 @@
|
||||
import { cn } from '@/utils/styles';
|
||||
|
||||
type LogoProps = { brand: string };
|
||||
|
||||
const Logo = ({ brand }: LogoProps) => (
|
||||
<div className={cn('col-span-2 col-start-2 sm:col-start-auto lg:col-span-1', brand === 'twilio' && 'sm:col-start-2')}>
|
||||
{/* Show on Light Theme */}
|
||||
<img
|
||||
className="block max-h-12 object-contain dark:hidden"
|
||||
src={`/images/brand-logos/dark/${brand}.svg`}
|
||||
alt={brand}
|
||||
width={212}
|
||||
height={48}
|
||||
/>
|
||||
{/* Show on Dark Theme */}
|
||||
<img
|
||||
className="hidden max-h-12 object-contain dark:block"
|
||||
src={`/images/brand-logos/light/${brand}.svg`}
|
||||
alt={brand}
|
||||
width={212}
|
||||
height={48}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
const logoList: string[] = ['amazon', 'google', 'postman', 'twilio', 'zalando'];
|
||||
|
||||
const LogoSection = () => (
|
||||
<section className="relative py-24 sm:py-32">
|
||||
<div className="mx-auto max-w-7xl px-6 lg:px-8">
|
||||
<p className="text-center text-lg leading-relaxed">
|
||||
Reactive Resume has helped people land jobs at these great companies:
|
||||
</p>
|
||||
<div className="mx-auto mt-10 grid max-w-lg grid-cols-4 items-center gap-x-8 gap-y-10 sm:max-w-xl sm:grid-cols-6 sm:gap-x-10 lg:mx-0 lg:max-w-none lg:grid-cols-5">
|
||||
{logoList.map((brand) => (
|
||||
<Logo key={brand} brand={brand} />
|
||||
))}
|
||||
</div>
|
||||
|
||||
<p className="mx-auto mt-8 max-w-sm text-center leading-relaxed">
|
||||
If this app has helped you with your job hunt, let me know by reaching out through{' '}
|
||||
<a href="https://www.amruthpillai.com/#contact" target="_blank" rel="noreferrer" className="hover:underline">
|
||||
this contact form
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
);
|
||||
|
||||
export default LogoSection;
|
||||
27
client/components/home/sections/Stats.tsx
Normal file
27
client/components/home/sections/Stats.tsx
Normal file
@ -0,0 +1,27 @@
|
||||
type Statistic = {
|
||||
name: string;
|
||||
value: string;
|
||||
};
|
||||
|
||||
const stats: Statistic[] = [
|
||||
{ name: 'GitHub Stars', value: '11,800+' },
|
||||
{ name: 'Users Signed Up', value: '300,000+' },
|
||||
{ name: 'Resumes Generated', value: '400,000+' },
|
||||
];
|
||||
|
||||
const StatsSection = () => (
|
||||
<section className="relative py-24 sm:py-32">
|
||||
<div className="mx-auto max-w-7xl px-6 lg:px-8">
|
||||
<dl className="grid grid-cols-1 gap-x-8 gap-y-16 text-center lg:grid-cols-3">
|
||||
{stats.map((stat, index) => (
|
||||
<div key={index} className="mx-auto flex max-w-xs flex-col gap-y-4">
|
||||
<dt className="text-base leading-7 opacity-60">{stat.name}</dt>
|
||||
<dd className="order-first text-3xl font-semibold tracking-tight sm:text-5xl">{stat.value}</dd>
|
||||
</div>
|
||||
))}
|
||||
</dl>
|
||||
</div>
|
||||
</section>
|
||||
);
|
||||
|
||||
export default StatsSection;
|
||||
Reference in New Issue
Block a user