├── src
├── env.d.ts
├── components
│ ├── FooterMenu.astro
│ ├── Logo.astro
│ ├── HeroSection.astro
│ ├── Section.astro
│ ├── ModelX.astro
│ ├── ModelS.astro
│ ├── ModelThree.astro
│ ├── ModelY.astro
│ ├── PowerWall.astro
│ ├── Accessories.astro
│ └── LandingHeader.astro
├── pages
│ └── index.astro
└── layouts
│ └── Layout.astro
├── tsconfig.json
├── public
├── video.webm
├── model-3.avif
├── model-3.webp
├── model-s.avif
├── model-s.webp
├── model-x.avif
├── model-x.webp
├── model-y.avif
├── model-y.webp
├── accessories.avif
├── accessories.webp
├── powerwall.avif
├── powerwall.webp
├── arrow-icon.svg
├── close-icon.svg
└── favicon.svg
├── .vscode
├── extensions.json
└── launch.json
├── README.md
├── astro.config.mjs
├── tailwind.config.cjs
├── .gitignore
└── package.json
/src/env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "astro/tsconfigs/base"
3 | }
4 |
--------------------------------------------------------------------------------
/public/video.webm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/video.webm
--------------------------------------------------------------------------------
/public/model-3.avif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/model-3.avif
--------------------------------------------------------------------------------
/public/model-3.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/model-3.webp
--------------------------------------------------------------------------------
/public/model-s.avif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/model-s.avif
--------------------------------------------------------------------------------
/public/model-s.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/model-s.webp
--------------------------------------------------------------------------------
/public/model-x.avif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/model-x.avif
--------------------------------------------------------------------------------
/public/model-x.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/model-x.webp
--------------------------------------------------------------------------------
/public/model-y.avif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/model-y.avif
--------------------------------------------------------------------------------
/public/model-y.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/model-y.webp
--------------------------------------------------------------------------------
/public/accessories.avif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/accessories.avif
--------------------------------------------------------------------------------
/public/accessories.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/accessories.webp
--------------------------------------------------------------------------------
/public/powerwall.avif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/powerwall.avif
--------------------------------------------------------------------------------
/public/powerwall.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/midudev/landing-tesla/main/public/powerwall.webp
--------------------------------------------------------------------------------
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["astro-build.astro-vscode"],
3 | "unwantedRecommendations": []
4 | }
5 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | 
2 |
--------------------------------------------------------------------------------
/astro.config.mjs:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'astro/config';
2 |
3 | import tailwind from "@astrojs/tailwind";
4 |
5 | // https://astro.build/config
6 | export default defineConfig({
7 | integrations: [tailwind()]
8 | });
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.2.0",
3 | "configurations": [
4 | {
5 | "command": "./node_modules/.bin/astro dev",
6 | "name": "Development server",
7 | "request": "launch",
8 | "type": "node-terminal"
9 | }
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/tailwind.config.cjs:
--------------------------------------------------------------------------------
1 | /** @type {import('tailwindcss').Config} */
2 | module.exports = {
3 | content: ['./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}'],
4 | theme: {
5 | fontFamily: {
6 | sans: ['Gotham SSm A, sans-serif']
7 | },
8 | extend: {},
9 | },
10 | plugins: [],
11 | }
12 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # build output
2 | dist/
3 |
4 | # generated types
5 | .astro/
6 |
7 | # dependencies
8 | node_modules/
9 |
10 | # logs
11 | npm-debug.log*
12 | yarn-debug.log*
13 | yarn-error.log*
14 | pnpm-debug.log*
15 |
16 | # environment variables
17 | .env
18 | .env.production
19 |
20 | # macOS-specific files
21 | .DS_Store
22 |
--------------------------------------------------------------------------------
/public/arrow-icon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/close-icon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "tesla-landing",
3 | "type": "module",
4 | "version": "0.0.1",
5 | "scripts": {
6 | "dev": "astro dev",
7 | "start": "astro dev",
8 | "build": "astro build",
9 | "preview": "astro preview",
10 | "astro": "astro"
11 | },
12 | "dependencies": {
13 | "@astrojs/tailwind": "^3.1.2",
14 | "astro": "^2.4.5",
15 | "tailwindcss": "^3.3.2"
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/components/FooterMenu.astro:
--------------------------------------------------------------------------------
1 |
16 |
--------------------------------------------------------------------------------
/src/components/Logo.astro:
--------------------------------------------------------------------------------
1 |
9 |
--------------------------------------------------------------------------------
/src/components/HeroSection.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Section from "./Section.astro"
3 | ---
4 |
5 |
28 |
--------------------------------------------------------------------------------
/src/components/Section.astro:
--------------------------------------------------------------------------------
1 | ---
2 | const { color, title, subtitle, id, showFooterContent } = Astro.props;
3 | const textColor = `text-${color}`;
4 | import FooterMenu from './FooterMenu.astro';
5 | ---
6 |
7 |
12 |
13 |
14 |
15 | {title}
16 |
17 |
18 | {subtitle}
19 |
20 |
21 |
22 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/src/pages/index.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Accessories from "../components/Accessories.astro";
3 | import HeroSection from "../components/HeroSection.astro";
4 | import LandingHeader from "../components/LandingHeader.astro";
5 | import ModelS from "../components/ModelS.astro";
6 | import ModelThree from "../components/ModelThree.astro";
7 | import ModelX from "../components/ModelX.astro";
8 | import ModelY from "../components/ModelY.astro";
9 | import PowerWall from "../components/PowerWall.astro";
10 | import Layout from "../layouts/Layout.astro";
11 | ---
12 |
13 |
14 |
15 |
16 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
37 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/src/components/ModelX.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Section from "./Section.astro"
3 | ---
4 |
5 |
11 |
25 |
26 |
33 |
34 |
35 |
57 |
--------------------------------------------------------------------------------
/src/components/ModelS.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Section from "./Section.astro";
3 | ---
4 |
5 |
11 |
25 |
26 |
33 |
34 |
35 |
55 |
--------------------------------------------------------------------------------
/src/components/ModelThree.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Section from "./Section.astro"
3 | ---
4 |
5 |
11 |
25 |
26 |
33 |
34 |
35 |
57 |
--------------------------------------------------------------------------------
/src/components/ModelY.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Section from "./Section.astro"
3 | ---
4 |
5 |
11 |
25 |
26 |
33 |
34 |
35 |
57 |
--------------------------------------------------------------------------------
/src/components/PowerWall.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Section from "./Section.astro"
3 | ---
4 |
5 |
11 |
25 |
26 |
33 |
34 |
35 |
57 |
--------------------------------------------------------------------------------
/src/components/Accessories.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Section from "./Section.astro"
3 | ---
4 |
5 |
12 |
26 |
27 |
34 |
35 |
36 |
58 |
--------------------------------------------------------------------------------
/public/favicon.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
27 |
--------------------------------------------------------------------------------
/src/components/LandingHeader.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import Logo from "./Logo.astro"
3 | ---
4 |
5 |
9 |
12 |
13 |
25 |
26 |
35 |
36 |
52 |
53 |
65 |
66 |
67 |
89 |
90 |
91 |
114 |
115 |
137 |
--------------------------------------------------------------------------------
/src/layouts/Layout.astro:
--------------------------------------------------------------------------------
1 | ---
2 | export interface Props {
3 | title: string
4 | }
5 |
6 | const { title } = Astro.props
7 | ---
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | {title}
17 |
18 |
19 |
20 |
21 |
22 |
23 |
49 |
--------------------------------------------------------------------------------