aboutsummaryrefslogtreecommitdiffstats
path: root/docs/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--docs/src/components/HomepageFeatures/index.js71
-rw-r--r--docs/src/components/HomepageFeatures/styles.module.css17
-rw-r--r--docs/src/css/custom.css35
-rw-r--r--docs/src/pages/index.js48
-rw-r--r--docs/src/pages/index.module.css50
-rw-r--r--docs/src/pages/markdown-page.md7
6 files changed, 228 insertions, 0 deletions
diff --git a/docs/src/components/HomepageFeatures/index.js b/docs/src/components/HomepageFeatures/index.js
new file mode 100644
index 00000000..c242c798
--- /dev/null
+++ b/docs/src/components/HomepageFeatures/index.js
@@ -0,0 +1,71 @@
+import React from 'react';
+import clsx from 'clsx';
+import styles from './styles.module.css';
+
+const FeatureList = [
+ {
+ title: 'History sync',
+ Svg: require('@site/static/img/undraw_docusaurus_mountain.svg').default,
+ description: (
+ <>
+ <ul>
+ <li>Sync your shell history to all of your machines, wherever they are</li>
+ <li>End-to-end encrypted - nobody can see your data but you</li>
+ <li>Securely backed up - never lose a command again</li>
+ </ul>
+ </>
+ ),
+ },
+ {
+ title: 'Find it fast',
+ Svg: require('@site/static/img/undraw_docusaurus_tree.svg').default,
+ description: (
+ <>
+ <ul>
+ <li>Speedy terminal search UI</li>
+ <li>Configurable search method - fuzzy, prefix, etc</li>
+ <li>Easily search and filter by session, directory, or machine</li>
+ <li>Powerful command line search for integration with other tools</li>
+ </ul>
+ </>
+ ),
+ },
+ {
+ title: 'All the data',
+ Svg: require('@site/static/img/undraw_docusaurus_react.svg').default,
+ description: (
+ <>
+ <ul>
+ <li>History stored in a SQLite DB, making stats and analysis easy</li>
+ <li>Log exit code, directory, hostname, session, command duration, etc</li>
+ <li>Import old history from a number of shells or history tools</li>
+ </ul>
+ </>
+ ),
+ },
+];
+
+function Feature({ Svg, title, description }) {
+ return (
+ <div className={clsx('col col--4')}>
+ <div className={"padding-horiz--md", styles.whatisfeature}>
+ <h3>{title}</h3>
+ <p>{description}</p>
+ </div>
+ </div>
+ );
+}
+
+export default function HomepageFeatures() {
+ return (
+ <section className={styles.features}>
+ <div className={"container"}>
+ <div className="row">
+ {FeatureList.map((props, idx) => (
+ <Feature key={idx} {...props} />
+ ))}
+ </div>
+ </div>
+ </section>
+ );
+}
diff --git a/docs/src/components/HomepageFeatures/styles.module.css b/docs/src/components/HomepageFeatures/styles.module.css
new file mode 100644
index 00000000..7527f330
--- /dev/null
+++ b/docs/src/components/HomepageFeatures/styles.module.css
@@ -0,0 +1,17 @@
+.features {
+ display: flex;
+ align-items: center;
+ padding: 2rem 0;
+ width: 100%;
+}
+
+.featureSvg {
+ height: 200px;
+ width: 200px;
+}
+
+.whatisfeature {
+ background-color: var(--ifm-hero-background-color);
+ padding: 2rem;
+}
+
diff --git a/docs/src/css/custom.css b/docs/src/css/custom.css
new file mode 100644
index 00000000..d7c8f98e
--- /dev/null
+++ b/docs/src/css/custom.css
@@ -0,0 +1,35 @@
+/**
+ * Any CSS included here will be global. The classic template
+ * bundles Infima by default. Infima is a CSS framework designed to
+ * work well for content-centric websites.
+ */
+
+@tailwind base;
+@tailwind components;
+@tailwind utilities;
+
+/* You can override the default Infima variables here. */
+:root {
+ --ifm-color-primary: #2e8555;
+ --ifm-color-primary-dark: #29784c;
+ --ifm-color-primary-darker: #277148;
+ --ifm-color-primary-darkest: #205d3b;
+ --ifm-color-primary-light: #33925d;
+ --ifm-color-primary-lighter: #359962;
+ --ifm-color-primary-lightest: #3cad6e;
+ --ifm-code-font-size: 95%;
+ --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
+}
+
+/* For readability concerns, you should choose a lighter palette in dark mode. */
+[data-theme='dark'] {
+ --ifm-color-primary: #25c2a0;
+ --ifm-color-primary-dark: #21af90;
+ --ifm-color-primary-darker: #1fa588;
+ --ifm-color-primary-darkest: #1a8870;
+ --ifm-color-primary-light: #29d5b0;
+ --ifm-color-primary-lighter: #32d8b4;
+ --ifm-color-primary-lightest: #4fddbf;
+ --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
+}
+
diff --git a/docs/src/pages/index.js b/docs/src/pages/index.js
new file mode 100644
index 00000000..08500787
--- /dev/null
+++ b/docs/src/pages/index.js
@@ -0,0 +1,48 @@
+import React from 'react';
+import clsx from 'clsx';
+import Link from '@docusaurus/Link';
+import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
+import Layout from '@theme/Layout';
+import HomepageFeatures from '@site/src/components/HomepageFeatures';
+
+import styles from './index.module.css';
+
+function HomepageHeader() {
+ const { siteConfig } = useDocusaurusContext();
+ return (
+ <header className={clsx('hero', styles.heroBanner)}>
+ <link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><text y=%22.9em%22 font-size=%2290%22>🐢</text></svg>" />
+
+ <div className="container">
+ <h1 className="hero__title">Making your shell <b className={styles.magical}>magical</b></h1>
+ <p className="hero__subtitle">Sync, search and backup shell history with Atuin</p>
+ <div className={styles.buttons}>
+ <Link
+ className="button button--primary button--lg"
+ to="/docs/setup">
+ Get Started
+ </Link>
+ </div>
+ </div>
+ </header>
+ );
+}
+
+export default function Home() {
+ const { siteConfig } = useDocusaurusContext();
+ return (
+ <Layout
+ title={`Magical Shell History`}>
+ <HomepageHeader />
+ <main>
+ <section className={styles.whatis}>
+ <div className="container">
+ <center><h1>What is <b>Atuin</b>?</h1></center>
+
+ <HomepageFeatures />
+ </div>
+ </section>
+ </main>
+ </Layout >
+ );
+}
diff --git a/docs/src/pages/index.module.css b/docs/src/pages/index.module.css
new file mode 100644
index 00000000..fc7eb14e
--- /dev/null
+++ b/docs/src/pages/index.module.css
@@ -0,0 +1,50 @@
+/**
+ * CSS files with the .module.css suffix will be treated as CSS modules
+ * and scoped locally.
+ */
+
+.heroBanner {
+ padding: 4rem 0;
+ text-align: center;
+ position: relative;
+ overflow: hidden;
+}
+
+.heroBanner h1 {
+ font-size: 3rem;
+}
+
+@media screen and (max-width: 996px) {
+ .heroBanner {
+ padding: 2rem;
+ }
+}
+
+.buttons {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.magical{
+ background-image: linear-gradient(90deg, rgb(79, 30, 218) 0%,rgb(104, 100, 218) 33%,rgb(35, 219, 162) 100%);
+ background-clip: text;
+
+ -webkit-background-clip: text;
+ -moz-background-clip: text;
+ -webkit-text-fill-color: transparent;
+ -moz-text-fill-color: transparent;
+}
+
+.whatis {
+ padding: 4rem;
+
+}
+
+.whatis h1 {
+ font-size: 2em;
+}
+
+.whatisfeature {
+ background-color: var(--ifm-hero-background-color);
+}
diff --git a/docs/src/pages/markdown-page.md b/docs/src/pages/markdown-page.md
new file mode 100644
index 00000000..9756c5b6
--- /dev/null
+++ b/docs/src/pages/markdown-page.md
@@ -0,0 +1,7 @@
+---
+title: Markdown page example
+---
+
+# Markdown page example
+
+You don't need React to write simple standalone pages.