Add basic home setup
Browse files- docs/.gitignore +21 -0
- docs/astro.config.mjs +9 -0
- docs/package.json +23 -0
- docs/pnpm-lock.yaml +0 -0
- docs/public/driver.svg +57 -0
- docs/public/favicon.svg +9 -0
- docs/src/components/Container.astro +3 -0
- docs/src/components/FeatureMarquee.tsx +30 -0
- docs/src/env.d.ts +1 -0
- docs/src/layouts/BaseLayout.astro +22 -0
- docs/src/pages/index.astro +72 -0
- docs/tailwind.config.cjs +10 -0
- docs/tsconfig.json +7 -0
- package.json +1 -0
docs/.gitignore
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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
|
docs/astro.config.mjs
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import { defineConfig } from 'astro/config';
|
2 |
+
import tailwind from "@astrojs/tailwind";
|
3 |
+
|
4 |
+
import react from "@astrojs/react";
|
5 |
+
|
6 |
+
// https://astro.build/config
|
7 |
+
export default defineConfig({
|
8 |
+
integrations: [tailwind(), react()]
|
9 |
+
});
|
docs/package.json
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "driver-docs",
|
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/react": "^2.2.1",
|
14 |
+
"@astrojs/tailwind": "^4.0.0",
|
15 |
+
"@types/react": "^18.0.21",
|
16 |
+
"@types/react-dom": "^18.0.6",
|
17 |
+
"astro": "^2.7.0",
|
18 |
+
"react": "^18.0.0",
|
19 |
+
"react-dom": "^18.0.0",
|
20 |
+
"react-fast-marquee": "^1.6.0",
|
21 |
+
"tailwindcss": "^3.0.24"
|
22 |
+
}
|
23 |
+
}
|
docs/pnpm-lock.yaml
ADDED
The diff for this file is too large to render.
See raw diff
|
|
docs/public/driver.svg
ADDED
|
docs/public/favicon.svg
ADDED
|
docs/src/components/Container.astro
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
<div class="max-w-[1050px] mx-auto px-10">
|
2 |
+
<slot />
|
3 |
+
</div>
|
docs/src/components/FeatureMarquee.tsx
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import React from "react";
|
2 |
+
import Marquee from "react-fast-marquee";
|
3 |
+
|
4 |
+
const featureList = [
|
5 |
+
"Open Source",
|
6 |
+
"Written in TypeScript",
|
7 |
+
"No dependencies",
|
8 |
+
"Vanilla JavaScript",
|
9 |
+
"Light-weight",
|
10 |
+
"Feature Rich",
|
11 |
+
"Highly Customizable",
|
12 |
+
"Easy to use",
|
13 |
+
"Accessible",
|
14 |
+
"Frameworks Ready",
|
15 |
+
"MIT Licensed",
|
16 |
+
];
|
17 |
+
|
18 |
+
export function FeatureMarquee() {
|
19 |
+
return (
|
20 |
+
<Marquee autoFill>
|
21 |
+
<p className="py-4 text-2xl whitespace-nowrap">
|
22 |
+
{ featureList.map((featureItem, index) => (
|
23 |
+
<React.Fragment key={index}>
|
24 |
+
{ featureItem } <span className="mx-3">·</span>
|
25 |
+
</React.Fragment>
|
26 |
+
))}
|
27 |
+
</p>
|
28 |
+
</Marquee>
|
29 |
+
);
|
30 |
+
}
|
docs/src/env.d.ts
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
/// <reference types="astro/client" />
|
docs/src/layouts/BaseLayout.astro
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
export interface Props {
|
3 |
+
title: string;
|
4 |
+
}
|
5 |
+
|
6 |
+
const { title } = Astro.props;
|
7 |
+
---
|
8 |
+
|
9 |
+
<!DOCTYPE html>
|
10 |
+
<html lang="en">
|
11 |
+
<head>
|
12 |
+
<meta charset="UTF-8" />
|
13 |
+
<meta name="description" content="Astro description">
|
14 |
+
<meta name="viewport" content="width=device-width" />
|
15 |
+
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
16 |
+
<meta name="generator" content={Astro.generator} />
|
17 |
+
<title>{title}</title>
|
18 |
+
</head>
|
19 |
+
<body>
|
20 |
+
<slot />
|
21 |
+
</body>
|
22 |
+
</html>
|
docs/src/pages/index.astro
ADDED
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
import BaseLayout from "../layouts/BaseLayout.astro";
|
3 |
+
import { FeatureMarquee } from "../components/FeatureMarquee";
|
4 |
+
import Container from "../components/Container.astro";
|
5 |
+
---
|
6 |
+
<BaseLayout>
|
7 |
+
<div class="bg-yellow-300">
|
8 |
+
<Container>
|
9 |
+
<div class="py-24 flex justify-start items-center gap-4">
|
10 |
+
<div class="flex-grow">
|
11 |
+
<h1 class="text-9xl mb-4 font-bold">driver.js</h1>
|
12 |
+
<p class="text-3xl">Product tours, highlight features, contextual help and more.</p>
|
13 |
+
<div class="mt-12 mb-2 flex gap-2 items-stretch">
|
14 |
+
<button class="bg-black rounded-xl py-4 px-5 font-medium text-white text-xl">Show Demo Tour</button>
|
15 |
+
<a href="#" class="flex items-center font-bold text-xl border-4 border-black rounded-xl px-5 bg-white">
|
16 |
+
Get Started
|
17 |
+
</a>
|
18 |
+
</div>
|
19 |
+
</div>
|
20 |
+
<div class="flex-shrink-0">
|
21 |
+
<img src="/driver.svg" alt="Hero Image" class="h-72" />
|
22 |
+
</div>
|
23 |
+
</div>
|
24 |
+
</Container>
|
25 |
+
</div>
|
26 |
+
<div class="bg-white overflow-x-hidden relative h-[64px]">
|
27 |
+
<FeatureMarquee client:load />
|
28 |
+
</div>
|
29 |
+
|
30 |
+
<div class="py-24 bg-black text-white">
|
31 |
+
<Container>
|
32 |
+
<h2 class="text-5xl font-bold mb-4">Usecases</h2>
|
33 |
+
<p class="text-2xl mb-16 text-gray-300">Due to it's extensive API, driver.js can be used for a wide range of use cases.</p>
|
34 |
+
<div class="grid grid-cols-1 md:grid-cols-2 gap-12">
|
35 |
+
<div class="flex flex-col gap-4">
|
36 |
+
<span class="border-b border-b-yellow-300 block w-[50px]"></span>
|
37 |
+
<h3 class="text-3xl font-bold text-yellow-300">Onboard Users</h3>
|
38 |
+
<p class="text-xl text-gray-300">
|
39 |
+
Onboard your users by explaining how to use your product and answer common
|
40 |
+
questions.
|
41 |
+
</p>
|
42 |
+
</div>
|
43 |
+
|
44 |
+
<div class="flex flex-col gap-4">
|
45 |
+
<span class="border-b border-b-yellow-300 block w-[50px]"></span>
|
46 |
+
<h3 class="text-3xl font-bold text-yellow-300">
|
47 |
+
Remove Distractions
|
48 |
+
</h3>
|
49 |
+
<p class="text-xl text-gray-300">
|
50 |
+
With highlight feature, you can remove distractions and focus your users attention on what matters.
|
51 |
+
</p>
|
52 |
+
</div>
|
53 |
+
|
54 |
+
<div class="flex flex-col gap-4">
|
55 |
+
<span class="border-b border-b-yellow-300 block w-[50px]"></span>
|
56 |
+
<h3 class="text-3xl font-bold text-yellow-300">Contextual Help</h3>
|
57 |
+
<p class="text-xl text-gray-300">
|
58 |
+
Provide contextual help for your users, explain how to use your product and answer common questions.
|
59 |
+
</p>
|
60 |
+
</div>
|
61 |
+
|
62 |
+
<div class="flex flex-col gap-4">
|
63 |
+
<span class="border-b border-b-yellow-300 block w-[50px]"></span>
|
64 |
+
<h3 class="text-3xl font-bold text-yellow-300">Feature Adoption</h3>
|
65 |
+
<p class="text-xl text-gray-300">
|
66 |
+
Highlight new features, explain how to use them and make sure your users don't miss them.
|
67 |
+
</p>
|
68 |
+
</div>
|
69 |
+
</div>
|
70 |
+
</Container>
|
71 |
+
</div>
|
72 |
+
</BaseLayout>
|
docs/tailwind.config.cjs
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/** @type {import('tailwindcss').Config} */
|
2 |
+
module.exports = {
|
3 |
+
content: ["./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}"],
|
4 |
+
theme: {
|
5 |
+
container: {
|
6 |
+
},
|
7 |
+
extend: {},
|
8 |
+
},
|
9 |
+
plugins: [],
|
10 |
+
};
|
docs/tsconfig.json
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"extends": "astro/tsconfigs/strict",
|
3 |
+
"compilerOptions": {
|
4 |
+
"jsx": "react-jsx",
|
5 |
+
"jsxImportSource": "react"
|
6 |
+
}
|
7 |
+
}
|
package.json
CHANGED
@@ -18,6 +18,7 @@
|
|
18 |
},
|
19 |
"files": [
|
20 |
"!tests/**/*",
|
|
|
21 |
"dist/**/*",
|
22 |
"!dist/**/*.js.map"
|
23 |
],
|
|
|
18 |
},
|
19 |
"files": [
|
20 |
"!tests/**/*",
|
21 |
+
"!docs/**/*",
|
22 |
"dist/**/*",
|
23 |
"!dist/**/*.js.map"
|
24 |
],
|