diff --git a/.gitignore b/.gitignore index 39b6c03..bfd51ac 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,5 @@ site/ *.bak __pycache__ .venv -.idea \ No newline at end of file +.idea +venv diff --git a/docs/assets/background.png b/docs/assets/background.png new file mode 100644 index 0000000..0358c47 Binary files /dev/null and b/docs/assets/background.png differ diff --git a/docs/assets/datusignature.png b/docs/assets/datusignature.png new file mode 100644 index 0000000..b15dbea Binary files /dev/null and b/docs/assets/datusignature.png differ diff --git a/docs/assets/favicon.ico b/docs/assets/favicon.ico new file mode 100644 index 0000000..e69de29 diff --git a/docs/assets/logo-light.svg b/docs/assets/logo-light.svg new file mode 100644 index 0000000..e6a42fb Binary files /dev/null and b/docs/assets/logo-light.svg differ diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..ee6f024 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,68 @@ +--- +hide: + -toc +--- +# + +
+ Datu Logo +
Datu AI Analyst
+
Build intelligent, data-driven AI agents in just a few lines of code.
+ Get Started +
+ +
+
+

Data-Driven Agents

+

Connect to databases, files, APIs, and more. Let your agents analyze, transform, and act on data.

+
+
+

Provider Agnostic

+

Use any LLM provider—OpenAI, AWS Bedrock, Anthropic, and more. Switch providers without code changes.

+
+
+

Simple Multi-Agent Workflows

+

Compose agents, tools, and workflows with simple primitives for collaboration and orchestration.

+
+
+

Production Ready

+

Deploy to containers, serverless, or cloud. Built-in observability, security, and extensibility.

+
+
+ +
+
Ready to get started?
+
Check out the quickstart guide or book a demo with our team.
+ Quickstart Guide + Book a Demo +
diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css index 28d0d4b..cd78d68 100644 --- a/docs/stylesheets/extra.css +++ b/docs/stylesheets/extra.css @@ -1,111 +1,254 @@ -:root > * { - --md-primary-fg-color: #14181C; - --md-primary-bg-color: #F0F6FC; - --md-primary-bg-color--light: #716F6F; - --md-accent-fg-color: #5E8BDE; - --md-typeset-a-color: #5E8BDE; +/* Datu.fi Docs Custom Stylesheet + Palette: + Title color: #FF6729 + Text color: #080808 + Background 1: #FFFFFF + Background 2 (used for example in buttons): #0E253E + background-image: url('/assets/background2.jpg'); +*/ +body { + background-image: url('/assets/background.png'); + background-size: cover; + background-repeat: no-repeat; + background-position: center center; + background-attachment: fixed; +} +.hide-title + h1 { + display: none; +} +/* Header customization to match datu.fi */ +.md-header { + background: #0E253E; /* Header background */ + box-shadow: 0 2px 8px rgba(26,86,219,0.04); /* Header shadow */ + min-height: 64px; /* Header height */ +} +.md-header__button.md-logo img { + height: 48px; /* Logo height */ + width: auto; /* Logo width auto */ + margin-right: 1.5rem; /* Logo right margin */ +} +.md-header__title { + font-family: 'Inter', 'Segoe UI', Arial, sans-serif; /* Title font */ + font-weight: 800; /* Title font weight */ + color: #FF6729; /* Title color */ + font-size: 1.3rem; /* Title font size */ +} +.md-header__topic { + display: flex; /* Topic flex layout */ + align-items: center; /* Topic vertical align */ } -[data-md-color-scheme="default"] .logo-light { - display: none !important; -} -[data-md-color-scheme="slate"] .logo-dark { - display: none !important; +/* Book a Demo button in header */ +.md-header__option.datu-demo { + margin-left: 2rem; /* Demo button left margin */ +} +.datu-demo-btn { + background: #0E253E; /* Demo button background */ + color: #fff !important; /* Demo button text color */ + border: none; /* Demo button border */ + border-radius: 2rem; /* Demo button border radius */ + padding: 0.5em 1.5em; /* Demo button padding */ + font-size: 1em; /* Demo button font size */ + font-weight: 600; /* Demo button font weight */ + text-decoration: none; /* Demo button text decoration */ + transition: background 0.2s; /* Demo button transition */ + margin-left: 1em; /* Demo button left margin */ + display: inline-block; /* Demo button display */ +} +.datu-demo-btn:hover { + background: #fff; /* Demo button hover background */ } -[data-md-color-scheme="default"] { - .md-header, .md-tabs { - background-color: #FFF; - color: var(--md-primary-fg-color); +/* Responsive header logo and demo button */ +@media (max-width: 800px) { + .md-header__button.md-logo img { + height: 36px; /* Logo height mobile */ } - .md-search__form, .md-search__input, .md-search__icon { - background-color: #F0F0F0; - color: var(--md-primary-fg-color); + .md-header__option.datu-demo { + margin-left: 0.5rem; /* Demo button left margin mobile */ } } -.md-header__button.md-logo { - padding: 0 .2rem; - margin: 0; -} -.md-header__button.md-logo img, -.md-header__button.md-logo svg, -.md-nav__title .md-nav__button.md-logo img, -.md-nav__title .md-nav__button.md-logo svg { - height: 1.5rem; - width: 1.5rem; +/* Datu Docs custom styles for Material theme */ +:root { + --md-primary-fg-color: #0E253E; /* Title color */ + --md-accent-fg-color: #FF6729; /* Accent and button color */ + --md-typeset-font-family: 'Inter', 'Segoe UI', Arial, sans-serif; /* Main font family */ + --md-default-bg-color: #f6f6f600; /* Main background */ + --md-default-fg-color: #080808; /* Main text color */ } -.md-tabs__link { - opacity: 1; - font-size: 1.6em; +.md-main { + background: #14253c67; /* Main background */ + padding: 2rem; + margin-right: 4rem; + margin-left: 4rem; + margin-top: 0rem; } -.md-tabs__item--active, -.md-tabs__item:hover, -.md-content a:hover { - text-decoration: underline; - text-underline-offset: .5em; -} -.md-content a:hover { - text-underline-offset: .2em; +.md-content{ + background: #ffffffa0; + padding: 2rem; } -.md-nav--lifted > .md-nav__list > .md-nav__item > [for], -.md-nav__item--section > .md-nav__link[for], -.md-nav__title { - font-size: 1.4em; -} +.md-main__inner { + background: #ffffffa0; + border-radius: 1.5rem; + margin-left: 1rem; + margin-right: 1rem -.md-typeset h1 { - color: inherit; } -.md-grid { - /* default was max-width: 61rem; */ - max-width: 68rem; +/* Hero section styles */ +.datu-hero { + display: flex; /* Hero flex layout */ + flex-direction: column; /* Hero column direction */ + align-items: center; /* Hero center align */ + justify-content: center; /* Hero center justify */ + padding: 3rem 1rem 2rem 1rem; /* Hero padding */ + background: #ffffffbf; /* Hero background */ + border-radius: 1.5rem; /* Hero border radius */ + margin-bottom: 2rem; /* Hero bottom margin */ +} +.datu-hero-title { + font-size: 2.5rem; /* Hero title font size */ + font-weight: 800; /* Hero title font weight */ + color: #FF6729; /* Hero title color */ + margin-bottom: 0.5rem; /* Hero title bottom margin */ +} +.datu-hero-subtitle { + font-size: 1.3rem; /* Hero subtitle font size */ + color: #222; /* Hero subtitle color */ + margin-bottom: 1.5rem; /* Hero subtitle bottom margin */ + text-align: center; /* Center align subtitle text */ +} +.datu-hero-btn { + background: #0E253E; /* Hero button background */ + color: #fff !important; /* Hero button text color (forced white) */ + border: none; /* Hero button border */ + border-radius: 2rem; /* Hero button border radius */ + padding: 0.8em 2em; /* Hero button padding */ + font-size: 1.1em; /* Hero button font size */ + font-weight: 600; /* Hero button font weight */ + text-decoration: none; /* Hero button text decoration */ + transition: background 0.2s; /* Hero button transition */ + box-shadow: 0 2px 8px rgba(26,86,219,0.08); /* Hero button shadow */ +} +.datu-hero-btn:hover { + background: #FF6729; /* Hero button hover background */ + color: #fff !important; /* Hero button hover text color (forced white) */ } -.mermaid { - text-align: center; +/* Features grid styles */ +.datu-features { + display: flex; /* Features flex layout */ + flex-wrap: wrap; /* Features wrap */ + gap: 2rem; /* Features gap */ + justify-content: center; /* Features center justify */ + margin: 2rem 0; /* Features margin */ +} +.datu-feature { + background: #ffffffbf; /* Feature background */ + border-radius: 1rem; /* Feature border radius */ + box-shadow: 0 2px 8px rgba(14,37,62,0.06); /* Feature shadow */ + padding: 2rem 1.5rem; /* Feature padding */ + max-width: 320px; /* Feature max width */ + min-width: 220px; /* Feature min width */ + flex: 1 1 220px; /* Feature flex */ + text-align: center; /* Feature text align */ +} +.datu-feature h3 { + color: #FF6729; /* Feature title color */ + margin-bottom: 0.5rem; /* Feature title bottom margin */ +} +.datu-feature p { + color: #080808; /* Feature text color */ } -/* Remove the font-enlargement that is on by default for the material theme */ -@media screen and (min-width: 100em) { - html { - font-size: 125%; - } +/* Datu Docs custom styles for Material theme - Datu.fi palette */ +.md-header { + background: #ffffffa0; /* Header background (palette) */ + box-shadow: 0 2px 8px rgba(14,37,62,0.04); /* Header shadow (palette) */ + min-height: 64px; /* Header height (palette) */ +} +.md-header__button.md-logo img { + height: 48px; /* Logo height (palette) */ + width: auto; /* Logo width auto (palette) */ + margin-right: 1.5rem; /* Logo right margin (palette) */ + +} +.md-header__title { + font-family: 'Inter', 'Segoe UI', Arial, sans-serif; /* Title font (palette) */ + font-weight: 800; /* Title font weight (palette) */ + color: #FF6729; /* Title color (palette) */ + font-size: 1.3rem; /* Title font size (palette) */ +} +.md-header__topic { + display: flex; /* Topic flex layout (palette) */ + align-items: center; /* Topic vertical align (palette) */ +} +.md-header__option.datu-demo { + margin-left: 2rem; /* Demo button left margin (palette) */ +} +.datu-demo-btn { + background: #0E253E; /* Demo button background (palette) */ + color: #fff !important; /* Demo button text color (palette) */ + border: none; /* Demo button border (palette) */ + border-radius: 2rem; /* Demo button border radius (palette) */ + padding: 0.5em 1.5em; /* Demo button padding (palette) */ + font-size: 1em; /* Demo button font size (palette) */ + font-weight: 600; /* Demo button font weight (palette) */ + text-decoration: none; /* Demo button text decoration (palette) */ + transition: background 0.2s; /* Demo button transition (palette) */ + margin-left: 1em; /* Demo button left margin (palette) */ + display: inline-block; /* Demo button display (palette) */ +} +.datu-demo-btn:hover { + background: #FF6729; /* Demo button hover background (palette) */ + color: #fff !important; /* Demo button hover text color (palette) */ } -@media screen and (min-width: 125em) { - html { - font-size: 125%; - } +/* Call-to-action section styles */ +.datu-cta { + background: #0E253E; /* CTA background */ + color: #fff; /* CTA text color */ + border-radius: 1.5rem; /* CTA border radius */ + padding: 2rem 1rem; /* CTA padding */ + text-align: center; /* CTA text align */ + margin: 2rem 0; /* CTA margin */ +} +.datu-cta-btn { + background: #FF6729; /* CTA button background */ + color: #fff; /* CTA button text color */ + border: none; /* CTA button border */ + border-radius: 2rem; /* CTA button border radius */ + padding: 0.8em 2em; /* CTA button padding */ + font-size: 1.1em; /* CTA button font size */ + font-weight: 600; /* CTA button font weight */ + text-decoration: none; /* CTA button text decoration */ + margin-top: 1rem; /* CTA button top margin */ + display: inline-block; /* CTA button display */ + transition: background 0.2s; /* CTA button transition */ +} +.datu-cta-btn:hover { + background: #FF6729; /* CTA button hover background */ + color: #fff; /* CTA button hover text color */ } -@media screen and (max-width: 76.2344em) { - .md-nav--lifted > .md-nav__list > .md-nav__item > [for], - .md-nav__item--section > .md-nav__link[for], - .md-nav__title { - font-size: 1em; + +/* Responsive tweaks for mobile */ +@media (max-width: 800px) { + .md-header__button.md-logo img { + height: 36px; /* Logo height mobile */ } - .md-nav--primary .md-nav__title { - height: auto; - padding: 2rem .8rem .2rem; + .md-header__option.datu-demo { + margin-left: 0.5rem; /* Demo button left margin mobile */ } - .md-nav--primary .md-nav__title .md-logo { - padding: .2rem; - margin: 0; + .datu-features { + flex-direction: column; /* Features column layout mobile */ + align-items: center; /* Features center align mobile */ } - - [data-md-color-scheme="default"] .md-nav--primary .md-nav__title, - [data-md-color-scheme="default"] .md-nav--primary .md-nav__title[for="__drawer"] { - background-color: #FFF; - color: var(--md-primary-fg-color); + .datu-hero { + padding: 2rem 0.5rem 1.5rem 0.5rem; /* Hero padding mobile */ } -} - -[data-md-color-scheme="slate"] { - /* Override the font color in dark mode - text is too light */ - --md-default-fg-color: rgb(240, 246, 252) } \ No newline at end of file diff --git a/docs/README.md b/docs/user-guide/README.md similarity index 83% rename from docs/README.md rename to docs/user-guide/README.md index b750800..347ab38 100644 --- a/docs/README.md +++ b/docs/user-guide/README.md @@ -20,8 +20,8 @@ Then follow next steps. Ready to learn more? Check out these resources: -- [Quickstart](user-guide/quickstart.md) - A more detailed introduction to Datu core -- [Datasources](user-guide/datasources/datasources.md) - Connecting multiple datasources. +- [Quickstart](./quickstart.md) - A more detailed introduction to Datu core +- [Datasources](datasources/datasources.md) - Connecting multiple datasources. [Learn how to contribute]({{ server_repo }}/CONTRIBUTING.md) or join our community discussions to shape the future of Datu ❤️. diff --git a/mkdocs.yml b/mkdocs.yml index bcf6610..973e679 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,27 +1,15 @@ site_name: Datu AI Analyst site_description: Datu AI Analyst is a Python SDK for building AI agents that can interact with data, perform analysis, and generate insights. It provides a framework for creating agents that can work with various data sources and tools, enabling developers to build intelligent applications that leverage AI capabilities. +site_url: https://docs.datu.fi/ +site_author: "Datuanalytics" site_dir: site -site_url: https://docs.datu.fi repo_url: https://github.com/Datuanalytics/datu-core theme: name: material - palette: - # Palette toggle for light mode - - media: "(prefers-color-scheme: light)" - primary: custom - scheme: default - toggle: - icon: material/brightness-7 - name: Switch to dark mode - # Palette toggle for dark mode - - media: "(prefers-color-scheme: dark)" - primary: custom - scheme: slate - toggle: - icon: material/brightness-4 - name: Switch to light mode + logo: assets/datusignature.png + favicon: assets/favicon.ico features: - content.code.copy - content.code.select @@ -34,7 +22,10 @@ theme: - navigation.top - search.highlight - content.code.copy - + language: en + custom_dir: docs/stylesheets + icon: + repo: fontawesome/brands/github markdown_extensions: - admonition - codehilite @@ -48,16 +39,14 @@ markdown_extensions: - name: mermaid class: mermaid format: !!python/name:pymdownx.superfences.fence_code_format - - toc: - title: On this page - permalink: true extra_css: - stylesheets/extra.css nav: - - User Guide: - - Welcome: README.md + - Home: index.md + - User Guide: + - Welcome: user-guide/README.md - Quickstart: user-guide/quickstart.md - Datasources: - user-guide/datasources/datasources.md @@ -108,6 +97,11 @@ extra: server_repo: https://github.com/Datuanalytics/datu-core/blob/main server_repo_home: https://github.com/Datuanalytics/datu-core + # Custom header button (Book a Demo) + header: + - type: html + html: 'Book a Demo' + validation: nav: omitted_files: info @@ -117,4 +111,4 @@ validation: not_found: warn anchors: warn absolute_links: warn - unrecognized_links: warn \ No newline at end of file + unrecognized_links: warn