diff --git a/.github/workflows/deploy-docs-to-azure.yaml b/.github/workflows/deploy-docs-to-azure.yaml deleted file mode 100644 index e4b560752..000000000 --- a/.github/workflows/deploy-docs-to-azure.yaml +++ /dev/null @@ -1,31 +0,0 @@ -name: Codeflash Docs Publish to Azure Static Web Apps - -on: - push: - branches: - - main - paths: - - 'docs/**' - - '.github/workflows/deploy-docs-to-azure.yaml' - workflow_dispatch: - -jobs: - build_and_deploy_job: - if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed') - runs-on: ubuntu-latest - name: Build and Deploy Job - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: Build And Deploy - id: builddeploy - uses: Azure/static-web-apps-deploy@v1 - with: - azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN }} - repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for GitHub integrations (i.e. PR comments) - action: "upload" - ###### Repository/Build Configurations ###### - app_location: "docs" # App source code path relative to repository root - output_location: "build" # Built app content directory, relative to app_location - optional - ###### End of Repository/Build Configurations ###### diff --git a/docs/.gitignore b/docs/.gitignore deleted file mode 100644 index b083ed4f9..000000000 --- a/docs/.gitignore +++ /dev/null @@ -1,21 +0,0 @@ -# Dependencies -/node_modules - -# Production -/build - -# Generated files -.docusaurus -.cache-loader - -# Misc -.DS_Store -.env -.env.local -.env.development.local -.env.test.local -.env.production.local - -npm-debug.log* -yarn-debug.log* -yarn-error.log* diff --git a/docs/README.md b/docs/README.md deleted file mode 100644 index 03fa70727..000000000 --- a/docs/README.md +++ /dev/null @@ -1,29 +0,0 @@ -# Website - -This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator. - -### Installation - -``` -$ npm install -``` - -### Local Development - -``` -$ npm run start -``` - -This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server. - -### Build - -``` -$ npm run build -``` - -This command generates static content into the `build` directory and can be served using any static contents hosting service. - -### Deployment - -Deployment is done automatically via GitHub Actions when the Pull Request changes are merged to the `main` branch. diff --git a/docs/babel.config.js b/docs/babel.config.js deleted file mode 100644 index e00595dae..000000000 --- a/docs/babel.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - presets: [require.resolve('@docusaurus/core/lib/babel/preset')], -}; diff --git a/docs/docs/codeflash-concepts/benchmarking.md b/docs/codeflash-concepts/benchmarking.mdx similarity index 95% rename from docs/docs/codeflash-concepts/benchmarking.md rename to docs/codeflash-concepts/benchmarking.mdx index 9c3ee552b..7dac13123 100644 --- a/docs/docs/codeflash-concepts/benchmarking.md +++ b/docs/codeflash-concepts/benchmarking.mdx @@ -1,5 +1,9 @@ --- -sidebar_position: 2 +title: "How Codeflash Measures Code Runtime" +description: "Learn how Codeflash accurately measures code performance using multiple runs and minimum timing" +icon: "stopwatch" +sidebarTitle: "Runtime Measurement" +keywords: ["benchmarking", "performance", "timing", "measurement", "runtime", "noise reduction"] --- # How Codeflash measures code runtime @@ -70,7 +74,7 @@ You ask the driver to repeat the race multiple times. In this scenario, since th This gives us timing data (in hours) that looks like the following. -![img_2.png](img_2.png) +![img_2.png](./img_2.png) With 100 data points (50 per train), determining the faster train becomes more complex. @@ -120,7 +124,7 @@ We can only measure times between adjacent stations. Here is how the timing data looks like (in hours): -![img_1.png](img_1.png) +![img_1.png](./img_1.png) With 300 data points (50 runs ร— 3 segments ร— 2 trains) and varying conditions on each segment, determining the faster train becomes even more challenging. diff --git a/docs/docs/codeflash-concepts/how-codeflash-works.md b/docs/codeflash-concepts/how-codeflash-works.mdx similarity index 93% rename from docs/docs/codeflash-concepts/how-codeflash-works.md rename to docs/codeflash-concepts/how-codeflash-works.mdx index 5f60a9372..f5608e37f 100644 --- a/docs/docs/codeflash-concepts/how-codeflash-works.md +++ b/docs/codeflash-concepts/how-codeflash-works.mdx @@ -1,5 +1,9 @@ --- -sidebar_position: 1 +title: "How Codeflash Works" +description: "Understand Codeflash's generate-and-verify approach to code optimization and correctness verification" +icon: "gear" +sidebarTitle: "How It Works" +keywords: ["architecture", "verification", "correctness", "testing", "optimization", "LLM", "benchmarking"] --- # How Codeflash Works @@ -24,7 +28,7 @@ Codeflash currently only runs tests that directly call the target function in th To optimize code, Codeflash first gathers all necessary context from the codebase. It also line-profiles your code to understand where the bottlenecks might reside. It then calls our backend to generate several candidate optimizations. These are called "candidates" because their speed and correctness haven't been verified yet. Both properties will be verified in later steps. ## Verification of correctness -![Verification](/img/codeflash_arch_diagram.gif) +![Verification](/images/codeflash_arch_diagram.gif) The goal of correctness verification is to ensure that when the new code replaces the original code, there are no behavioral changes in the code and the rest of the system. This means the replacement should be completely safe. diff --git a/docs/docs/codeflash-concepts/img_1.png b/docs/codeflash-concepts/img_1.png similarity index 100% rename from docs/docs/codeflash-concepts/img_1.png rename to docs/codeflash-concepts/img_1.png diff --git a/docs/docs/codeflash-concepts/img_2.png b/docs/codeflash-concepts/img_2.png similarity index 100% rename from docs/docs/codeflash-concepts/img_2.png rename to docs/codeflash-concepts/img_2.png diff --git a/docs/docs/configuration.md b/docs/configuration.mdx similarity index 93% rename from docs/docs/configuration.md rename to docs/configuration.mdx index fde09fc48..38f24b51f 100644 --- a/docs/docs/configuration.md +++ b/docs/configuration.mdx @@ -1,5 +1,9 @@ --- -sidebar_position: 5 +title: "Manual Configuration" +description: "Configure Codeflash for your project with pyproject.toml settings and advanced options" +icon: "gear" +sidebarTitle: "Configuration" +keywords: ["configuration", "pyproject.toml", "setup", "settings", "pytest", "formatter"] --- # Manual Configuration diff --git a/docs/docs.json b/docs/docs.json new file mode 100644 index 000000000..d747ccac4 --- /dev/null +++ b/docs/docs.json @@ -0,0 +1,115 @@ +{ + "$schema": "https://mintlify.com/docs.json", + "theme": "aspen", + "name": "Codeflash Documentation", + "colors": { + "primary": "#2563EB", + "light": "#3B82F6", + "dark": "#1D4ED8" + }, + "favicon": "/favicon.ico", + "navigation": { + "tabs": [ + { + "tab": "Documentation", + "groups": [ + { + "group": "๐Ÿ  Overview", + "pages": [ + "index" + ] + }, + { + "group": "๐Ÿš€ Getting Started", + "pages": [ + "getting-started/local-installation" + ] + }, + { + "group": "๐Ÿ”ง CI/CD Integration", + "pages": [ + "getting-started/codeflash-github-actions", + "optimizing-with-codeflash/optimize-prs", + "optimizing-with-codeflash/benchmarking" + ] + }, + { + "group": "โšก Optimization Workflows", + "pages": [ + "optimizing-with-codeflash/one-function", + "optimizing-with-codeflash/trace-and-optimize", + "optimizing-with-codeflash/codeflash-all" + ] + }, + { + "group": "๐Ÿง  Core Concepts", + "pages": [ + "codeflash-concepts/how-codeflash-works", + "codeflash-concepts/benchmarking" + ] + }, + { + "group": "โš™๏ธ Configuration & Best Practices", + "pages": [ + "configuration", + "getting-the-best-out-of-codeflash" + ] + } + ] + } + ], + "global": { + "anchors": [ + { + "anchor": "GitHub", + "href": "https://github.com/codeflash-ai", + "icon": "github" + }, + { + "anchor": "Discord", + "href": "https://www.codeflash.ai/discord", + "icon": "discord" + } + ] + } + }, + "logo": { + "light": "/images/codeflash_light.svg", + "dark": "/images/codeflash_darkmode.svg" + }, + "navbar": { + "links": [ + { + "label": "Contact", + "href": "mailto:contact@codeflash.ai" + }, + { + "label": "Blog", + "href": "https://www.codeflash.ai/blog" + } + ], + "primary": { + "type": "button", + "label": "Try Codeflash", + "href": "https://www.codeflash.ai" + } + }, + "contextual": { + "options": [ + "copy" + ] + }, + "redirects": [ + { + "source": "/docs/:path*", + "destination": "/:path*" + } + ], + "footer": { + "socials": { + "discord": "https://www.codeflash.ai/discord", + "github": "https://github.com/codeflash-ai", + "linkedin": "https://www.linkedin.com/company/codeflash-ai" + } + } +} \ No newline at end of file diff --git a/docs/docs/codeflash-concepts/_category_.json b/docs/docs/codeflash-concepts/_category_.json deleted file mode 100644 index 7f41c9b6c..000000000 --- a/docs/docs/codeflash-concepts/_category_.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "label": "Codeflash Concepts", - "position": 4, - "collapsed": false -} diff --git a/docs/docs/getting-started/_category_.json b/docs/docs/getting-started/_category_.json deleted file mode 100644 index 52b54bbbc..000000000 --- a/docs/docs/getting-started/_category_.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "label": "Getting Started", - "position": 2, - "collapsed": false -} diff --git a/docs/docs/getting-started/codeflash-github-actions.md b/docs/docs/getting-started/codeflash-github-actions.md deleted file mode 100644 index 177979ed8..000000000 --- a/docs/docs/getting-started/codeflash-github-actions.md +++ /dev/null @@ -1,124 +0,0 @@ ---- -sidebar_position: 2 ---- - -# Automate Optimization of Pull Requests - - -Codeflash can automatically optimize your code when new pull requests are opened. - -To be able to scan new code for performance optimizations, Codeflash requires a GitHub action workflow to -be installed which runs the Codeflash optimization logic on every new pull request. -If the action workflow finds an optimization, it communicates with the Codeflash GitHub -App through our secure servers and asks it to suggest new changes to the pull request. - -This is the most useful way of using Codeflash, where you set it up once and all your new code gets optimized. -So setting this up is highly recommended. - -## Prerequisites -- You have a Codeflash API key. If you don't have one, you can generate one from the [Codeflash Webapp](https://app.codeflash.ai/). Make sure you generate the API key with the right GitHub account that has access to the repository you want to optimize. -- You have completed [local installation](/getting-started/local-installation) steps and have a Python project with a `pyproject.toml` file that is configured with Codeflash. If you haven't configured Codeflash for your project yet, you can do so by running `codeflash init` in the root directory of your project. - -## Add the Codeflash GitHub Actions workflow - -### Guided setup - -To add the Codeflash GitHub Actions workflow to your repository, you can run the following command in your project directory: - -```bash -codeflash init-actions -``` - -This will walk you through the process of adding the Codeflash GitHub Actions workflow to your repository. - -### All Set up! - -Open a new PR to your GitHub project, and you will now see a new actions workflow for Codeflash run. If it finds an optimization, -codeflash-ai bot will comment on your repo with the optimization suggestions. - -### Manual Installation (optional) -If you prefer to install the GitHub actions manually, follow the steps below - - -#### Add the workflow file -Create a new file in your repository at `.github/workflows/codeflash-optimize.yaml` with the following contents: - - -```yaml title=".github/workflows/codeflash-optimize.yaml" -name: Codeflash - -on: - pull_request: - workflow_dispatch: - -jobs: - optimize: - name: Optimize new code in this PR - if: ${{ github.actor != 'codeflash-ai[bot]' }} - runs-on: ubuntu-latest - env: - CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }} - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - token: ${{ secrets.GITHUB_TOKEN }} - # TODO: Replace the following with your project's Python installation method - - name: Set up Python - uses: actions/setup-python@v5 - with: - python-version: '3.11' - # TODO: Replace the following with your project's dependency installation method - - name: Install Project Dependencies - run: | - python -m pip install --upgrade pip - # TODO: Replace the following with your project setup method - pip install -r requirements.txt - pip install codeflash - - name: Run Codeflash to optimize code - id: optimize_code - run: | - codeflash -``` -You would need to fill in the `#TODO`s in the file above to make it work. Please commit this file to your repository. -If you use a particular Python package manager like Poetry or uv, some helpful configurations are provided below. - -#### Config with different Python package managers - -The yaml config above is a basic template. Here is how you can run Codeflash with the different Python package managers: - -1. Poetry - -```yaml - - name: Install Project Dependencies - run: | - python -m pip install --upgrade pip - pip install poetry - poetry install --with dev - - name: Run Codeflash to optimize code - id: optimize_code - run: | - poetry env use python - poetry run codeflash -``` -This assumes that you install poetry with pip and have Codeflash dependency in the `dev` section of your `pyproject.toml` file. - -2. uv - -```yaml - - uses: astral-sh/setup-uv@v6 - with: - enable-cache: true - - run: uv sync --group=dev - - name: Run Codeflash to optimize code - run: uv run codeflash -``` - -#### Add your API key to your repository secrets - -Go to your GitHub repository, click **Settings**, and click on **Secrets and -Variables** -> **Actions** on the left sidebar. - -Add the following secret: - -- `CODEFLASH_API_KEY`: The API key you got from https://app.codeflash.ai/app/apikeys - diff --git a/docs/docs/optimizing-with-codeflash/_category_.json b/docs/docs/optimizing-with-codeflash/_category_.json deleted file mode 100644 index 587a0a774..000000000 --- a/docs/docs/optimizing-with-codeflash/_category_.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "label": "Using Codeflash", - "position": 3, - "collapsed": false -} diff --git a/docs/docusaurus.config.ts b/docs/docusaurus.config.ts deleted file mode 100644 index 877869aff..000000000 --- a/docs/docusaurus.config.ts +++ /dev/null @@ -1,171 +0,0 @@ -import { themes as prismThemes } from "prism-react-renderer" -import type { Config } from "@docusaurus/types" -import type * as Preset from "@docusaurus/preset-classic" - -const config: Config = { - title: "Codeflash Docs", - tagline: "Code optimization is cool", - favicon: "img/favicon.ico", - - // Set the production url of your site here - url: "https://docs.codeflash.ai", - // Set the // pathname under which your site is served - // For GitHub pages deployment, it is often '//' - baseUrl: "/", - - // GitHub pages deployment config. - // If you aren't using GitHub pages, you don't need these. - // organizationName: 'facebook', // Usually your GitHub org/user name. - // projectName: 'docusaurus', // Usually your repo name. - - onBrokenLinks: "throw", - onBrokenMarkdownLinks: "warn", - - // Even if you don't use internationalization, you can use this field to set - // useful metadata like html lang. For example, if your site is Chinese, you - // may want to replace "en" with "zh-Hans". - i18n: { - defaultLocale: "en", - locales: ["en"], - }, - - scripts: [ - { - src: "https://widget.intercom.io/widget/ljxo1nzr", - async: true, - onLoad: `window.Intercom('boot', { - app_id: "ljxo1nzr" - });`, - }, - { - src: "https://app.posthog.com/static/array.js", - strategy: "afterInteractive", - onLoad: `window.posthog = window.posthog || []; - window.posthog.init("phc_aUO790jHd7z1SXwsYCz8dRApxueplZlZWeDSpKc5hol", { - api_host: "https://us.i.posthog.com", - });`, - }, - ], - presets: [ - [ - "classic", - { - docs: { - sidebarPath: "./sidebars.ts", - routeBasePath: "/", - // Please change this to your repo. - }, - blog: false, - theme: { - customCss: "./src/css/custom.css", - }, - } satisfies Preset.Options, - ], - ], - - themeConfig: { - // Replace with your project's social card - colorMode: { - defaultMode: "dark", - disableSwitch: false, - respectPrefersColorScheme: false, - }, - image: "img/codeflash_social_card.jpg", - navbar: { - // title: 'My Site', - logo: { - href: "https://codeflash.ai/", - alt: "Codeflash Logo", - src: "img/codeflash_light.svg", - srcDark: "img/codeflash_darkmode.svg", - }, - items: [ - { - type: "docSidebar", - sidebarId: "tutorialSidebar", - position: "left", - label: "Docs", - }, - // {to: '/blog', label: 'Blog', position: 'left'}, - { - href: "https://app.codeflash.ai/", - label: "Get Started", - position: "right", - }, - ], - }, - docs : { - sidebar: { - autoCollapseCategories: false, - hideable: false, - } - }, - footer: { - style: "dark", - links: [ - { - title: "Navigation", - items: [ - { - label: "Home Page", - to: "https://codeflash.ai/", - }, - { - label: "PyPI", - to: "https://pypi.org/project/codeflash/", - }, - { - label: "Get Started", - to: "https://app.codeflash.ai/", - }, - ], - }, - { - title: "Get in Touch", - items: [ - { - label: "Careers", - to: "mailto:careers@codeflash.ai", - }, - { - label: "contact@codeflash.ai", - href: "mailto:contact@codeflash.ai", - }, - ], - }, - ], - copyright: `ยฉ2024 CodeFlash Inc.`, - }, - prism: { - theme: prismThemes.github, - darkTheme: prismThemes.dracula, - additionalLanguages: ["bash", "toml"], - }, - algolia: { - // The application ID provided by Algolia - appId: 'Y1C10T0Z7E', - - // Public API key: it is safe to commit it - apiKey: '4d1d294b58eb97edec121c9c1c079c23', - - indexName: 'codeflash', - - // Optional: see doc section below - contextualSearch: true, - - // Optional: Algolia search parameters - searchParameters: {}, - - // Optional: path for search page that enabled by default (`false` to disable it) - searchPagePath: 'search', - - // Optional: whether the insights feature is enabled or not on Docsearch (`false` by default) - insights: true, - - //... other Algolia params - }, - - } satisfies Preset.ThemeConfig, -} - -export default config diff --git a/docs/static/img/favicon.ico b/docs/favicon.ico similarity index 100% rename from docs/static/img/favicon.ico rename to docs/favicon.ico diff --git a/docs/getting-started/codeflash-github-actions.mdx b/docs/getting-started/codeflash-github-actions.mdx new file mode 100644 index 000000000..37ec7b147 --- /dev/null +++ b/docs/getting-started/codeflash-github-actions.mdx @@ -0,0 +1,156 @@ +--- +title: "GitHub Actions Integration" +description: "Automatically optimize pull requests with Codeflash GitHub Actions workflow" +icon: "github" +--- + +{/* TODO: Add more pictures to guide better */} + +Codeflash can automatically optimize your code when new pull requests are opened. + +To be able to scan new code for performance optimizations, Codeflash requires a GitHub action workflow to +be installed which runs the Codeflash optimization logic on every new pull request. +If the action workflow finds an optimization, it communicates with the Codeflash GitHub +App through our secure servers and asks it to suggest new changes to the pull request. + +This is the most useful way of using Codeflash, where you set it up once and all your new code gets optimized. +So setting this up is highly recommended. + +## Prerequisites + + +**Before you begin, make sure you have:** + +โœ… A Codeflash API key from the [Codeflash Web App](https://app.codeflash.ai/) + +โœ… Completed [local installation](/getting-started/local-installation) with `codeflash init` + +โœ… A Python project with a configured `pyproject.toml` file + + +## Setup Options + + + + + +```bash +codeflash init-actions +``` +This command will automatically create the GitHub Actions workflow file and guide you through the setup process. + + + +Open a new pull request to your GitHub project. You'll see: +- โœ… A new Codeflash workflow running in GitHub Actions +- ๐Ÿค– The codeflash-ai bot commenting with optimization suggestions (if any are found) + + + + +**Recommended approach** - This automated setup ensures you get the latest workflow configuration with all best practices included. + + + + + + + +Create `.github/workflows/codeflash-optimize.yaml` in your repository: + + +```yaml title=".github/workflows/codeflash-optimize.yaml" +name: Codeflash + +on: + pull_request: + workflow_dispatch: + +jobs: + optimize: + name: Optimize new code in this PR + if: ${{ github.actor != 'codeflash-ai[bot]' }} + runs-on: ubuntu-latest + env: + CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }} + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + token: ${{ secrets.GITHUB_TOKEN }} + # TODO: Replace the following with your project's Python installation method + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + # TODO: Replace the following with your project's dependency installation method + - name: Install Project Dependencies + run: | + python -m pip install --upgrade pip + # TODO: Replace the following with your project setup method + pip install -r requirements.txt + pip install codeflash + - name: Run Codeflash to optimize code + id: optimize_code + run: | + codeflash +``` + + +**Replace the TODOs** in the workflow file above with your project's specific setup commands. + + + + +Customize the dependency installation based on your Python package manager: + + +```yaml Poetry +- name: Install Project Dependencies + run: | + python -m pip install --upgrade pip + pip install poetry + poetry install --with dev +- name: Run Codeflash to optimize code + run: | + poetry env use python + poetry run codeflash +``` + +```yaml uv +- uses: astral-sh/setup-uv@v6 + with: + enable-cache: true +- run: uv sync --group=dev +- name: Run Codeflash to optimize code + run: uv run codeflash +``` + +```yaml pip +- name: Install Project Dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + pip install codeflash +- name: Run Codeflash to optimize code + run: codeflash +``` + + + + +1. Go to your GitHub repository settings +2. Navigate to **Secrets and Variables** โ†’ **Actions** +3. Click **New repository secret** +4. Add: + - **Name**: `CODEFLASH_API_KEY` + - **Value**: Your API key from [app.codeflash.ai/app/apikeys](https://app.codeflash.ai/app/apikeys) + + +**Security Note**: Never commit your API key directly to your code. Always use GitHub repository secrets. + + + + + + diff --git a/docs/docs/getting-started/local-installation.md b/docs/getting-started/local-installation.mdx similarity index 56% rename from docs/docs/getting-started/local-installation.md rename to docs/getting-started/local-installation.mdx index 3768e3059..9547512b9 100644 --- a/docs/docs/getting-started/local-installation.md +++ b/docs/getting-started/local-installation.mdx @@ -1,9 +1,9 @@ --- -sidebar_position: 1 +title: "Local Installation" +description: "Install and configure Codeflash for your Python project in minutes" +icon: "download" --- -# Local Installation - Codeflash is installed and configured on a per-project basis. You can install Codeflash locally for a project by running the following command in the project's virtual environment: @@ -17,7 +17,9 @@ Before installing Codeflash, ensure you have: 3. **Project dependencies installed** in your virtual environment 4. **Tests** (optional) for your code (Codeflash uses tests to verify optimizations) -:::important[Virtual Environment Required] + +**Virtual Environment Required** + Always install Codeflash in your project's virtual environment, not globally. Make sure your virtual environment is activated before proceeding. ```bash @@ -26,42 +28,52 @@ source venv/bin/activate # On Linux/Mac # or #venv\Scripts\activate # On Windows ``` -::: -### Step 1: Install Codeflash + + + ```bash pip install codeflash ``` -:::tip[Codeflash is a Development Dependency] + +**Codeflash is a Development Dependency** + We recommend installing Codeflash as a development dependency. It doesn't need to be installed as part of your package requirements. Codeflash is intended to be used locally and as part of development workflows such as CI. -If using pyproject.toml: -```toml + + +```toml Poetry [tool.poetry.dependencies.dev] codeflash = "^latest" ``` -Or with pip: -```bash -pip install --dev codeflash -```` -::: -### Step 2: Generate a Codeflash API Key +```bash uv +uv add --dev codeflash +``` + +```bash pip +pip install --dev codeflash +``` + + + + Codeflash uses cloud-hosted AI models to optimize your code. You'll need an API key to use it. 1. Visit the [Codeflash Web App](https://app.codeflash.ai/) 2. Sign up with your GitHub account (free) 3. Navigate to the [API Key](https://app.codeflash.ai/app/apikeys) page to generate your API key - -:::note[Free Tier Available] -Codeflash offers a **free tier** with a limited number of optimizations per month. Perfect for trying it out or small projects! -::: + +**Free Tier Available** -### Step 3: Automatic Configuration +Codeflash offers a **free tier** with a limited number of optimizations per month. Perfect for trying it out or small projects! + + + Navigate to your project's root directory (where your `pyproject.toml` file is or should be) and run: ```bash @@ -74,11 +86,13 @@ codeflash init If you don't have a pyproject.toml file yet, the codeflash init command will ask you to create one -:::tip[What's pyproject.toml?] + +**What's pyproject.toml?** + `pyproject.toml` is a configuration file that is used to specify build tool settings for Python projects. pyproject.toml is the modern replacement for setup.py and requirements.txt files. It's the new standard for Python package metadata. -::: + When running `codeflash init`, you will see the following prompts: @@ -88,6 +102,8 @@ When running `codeflash init`, you will see the following prompts: 3. Where are your tests located? (e.g. tests/) 4. Which test framework do you use? (pytest/unittest) ``` + + After you have answered these questions, Codeflash will be configured for your project. The configuration will be saved in the `pyproject.toml` file in the root directory of your project. @@ -95,74 +111,122 @@ To understand the configuration options, and set more advanced options, see the ### Step 4: Install the Codeflash GitHub App - +{/* TODO: Justify to users Why we need the user to install Github App even in local Installation or local optimization? */} Finally, if you have not done so already, Codeflash will ask you to install the Github App in your repository. The Codeflash GitHub App allows access to your repository to the codeflash-ai bot to open PRs, review code, and provide optimization suggestions. Please [install the Codeflash GitHub app](https://github.com/apps/codeflash-ai/installations/select_target) by choosing the repository you want to install Codeflash on. -## ## Try It Out! -Once configured, you can start optimizing your code: + + +Once configured, you can start optimizing your code immediately: ```bash # Optimize a specific function codeflash --file path/to/your/file.py --function function_name -# Or if want to optimize only locally without creating a PR +# Or optimize locally without creating a PR codeflash --file path/to/your/file.py --function function_name --no-pr ``` -### Example Project - -Want to see Codeflash in action? Check out our example repository: - -๐Ÿ”— [github.com/codeflash-ai/optimize-me](https://github.com/codeflash-ai/optimize-me) - -This repo includes: -- Sample Python code with performance issues -- Tests for verification -- Pre-configured `pyproject.toml` -- Before/after optimization examples in PRs - -Clone it and try running: + +**Pro tip**: Start with a single function to see how Codeflash works before running it on your entire codebase. + + + + + + Want to see Codeflash in action? Check out our **optimize-me** repository with real examples. + + **What's included:** + - Sample Python code with performance issues + - Tests for verification + - Pre-configured `pyproject.toml` + - Before/after optimization examples in PRs + + + + ```bash git clone https://github.com/codeflash-ai/optimize-me.git cd optimize-me +``` + + + +```bash python -m venv .venv source .venv/bin/activate # or venv\Scripts\activate on Windows pip install -r requirements.txt pip install codeflash -codeflash init # Use your own API key -codeflash --all # optimize the entire repo ``` + -### ๐Ÿ”ง Troubleshooting - -#### ๐Ÿ“ฆ "Module not found" errors -Make sure: -- โœ… Your virtual environment is activated -- โœ… All project dependencies are installed - -#### ๐Ÿงช "No optimizations found" or debugging issues -Use the `--verbose` flag for detailed output: + ```bash -codeflash optimize --verbose +codeflash init # Use your own API key +codeflash --all # optimize the entire repo ``` - -This will show: -- ๐Ÿ” Which functions are being analyzed -- ๐Ÿšซ Why certain functions were skipped -- โš ๏ธ Detailed error messages -- ๐Ÿ“Š Performance analysis results - -#### ๐Ÿ” "No tests found" errors -Verify: -- ๐Ÿ“ Your test directory path is correct in `pyproject.toml` -- ๐Ÿ” Tests are discoverable by your test framework -- ๐Ÿ“ Test files follow naming conventions (`test_*.py` for pytest) + + + + + +## Troubleshooting + + + + Make sure: + - โœ… Your virtual environment is activated + - โœ… All project dependencies are installed + + ```bash + # Verify your virtual environment is active + which python # Should show path to your venv + + # Install missing dependencies + pip install -r requirements.txt + ``` + + + + Use the `--verbose` flag for detailed output: + ```bash + codeflash optimize --verbose + ``` + + This will show: + - ๐Ÿ” Which functions are being analyzed + - ๐Ÿšซ Why certain functions were skipped + - โš ๏ธ Detailed error messages + - ๐Ÿ“Š Performance analysis results + + + **Common Reasons Functions Are Skipped:** + - Function is too simple (less than 3 lines) + - Function has no clear performance bottleneck + - Function contains unsupported constructs + + + + + Verify: + - ๐Ÿ“ Your test directory path is correct in `pyproject.toml` + - ๐Ÿ” Tests are discoverable by your test framework + - ๐Ÿ“ Test files follow naming conventions (`test_*.py` for pytest) + + ```bash + # Test if pytest can discover your tests + pytest --collect-only + + # Check your pyproject.toml configuration + cat pyproject.toml | grep -A 5 "\[tool.codeflash\]" + ``` + + ### Next Steps diff --git a/docs/docs/getting-the-best-out-of-codeflash.md b/docs/getting-the-best-out-of-codeflash.mdx similarity index 87% rename from docs/docs/getting-the-best-out-of-codeflash.md rename to docs/getting-the-best-out-of-codeflash.mdx index 6ea20dfbc..7db56e711 100644 --- a/docs/docs/getting-the-best-out-of-codeflash.md +++ b/docs/getting-the-best-out-of-codeflash.mdx @@ -1,5 +1,9 @@ --- -sidebar_position: 5 +title: "Getting the Best Out of Codeflash" +description: "Tips, recommendations, and best practices for maximizing Codeflash's optimization capabilities" +icon: "lightbulb" +sidebarTitle: "Best Practices" +keywords: ["best practices", "tips", "github actions", "tracer", "optimization", "workflow"] --- # Getting the best out of Codeflash diff --git a/docs/static/img/code-suggestion.png b/docs/images/code-suggestion.png similarity index 100% rename from docs/static/img/code-suggestion.png rename to docs/images/code-suggestion.png diff --git a/docs/static/img/codeflash_arch_diagram.gif b/docs/images/codeflash_arch_diagram.gif similarity index 100% rename from docs/static/img/codeflash_arch_diagram.gif rename to docs/images/codeflash_arch_diagram.gif diff --git a/docs/static/img/codeflash_darkmode.svg b/docs/images/codeflash_darkmode.svg similarity index 100% rename from docs/static/img/codeflash_darkmode.svg rename to docs/images/codeflash_darkmode.svg diff --git a/docs/static/img/codeflash_github_app_bot.png b/docs/images/codeflash_github_app_bot.png similarity index 100% rename from docs/static/img/codeflash_github_app_bot.png rename to docs/images/codeflash_github_app_bot.png diff --git a/docs/static/img/codeflash_light.svg b/docs/images/codeflash_light.svg similarity index 100% rename from docs/static/img/codeflash_light.svg rename to docs/images/codeflash_light.svg diff --git a/docs/static/img/codeflash_social_card.png b/docs/images/codeflash_social_card.png similarity index 100% rename from docs/static/img/codeflash_social_card.png rename to docs/images/codeflash_social_card.png diff --git a/docs/static/img/dependent-pr.png b/docs/images/dependent-pr.png similarity index 100% rename from docs/static/img/dependent-pr.png rename to docs/images/dependent-pr.png diff --git a/docs/static/img/review-comment.png b/docs/images/review-comment.png similarity index 100% rename from docs/static/img/review-comment.png rename to docs/images/review-comment.png diff --git a/docs/static/img/verification.svg b/docs/images/verification.svg similarity index 100% rename from docs/static/img/verification.svg rename to docs/images/verification.svg diff --git a/docs/docs/intro.md b/docs/index.mdx similarity index 51% rename from docs/docs/intro.md rename to docs/index.mdx index 2cb7a0665..f3cb3af02 100644 --- a/docs/docs/intro.md +++ b/docs/index.mdx @@ -1,8 +1,10 @@ --- -sidebar_position: 1 -slug: / +title: "What is Codeflash?" +description: "AI-powered Python performance optimizer that automatically speeds up your code while verifying correctness" +icon: "rocket" +sidebarTitle: "Overview" +keywords: ["python", "performance", "optimization", "AI", "code analysis", "benchmarking"] --- -# What is Codeflash? Welcome! Codeflash is an AI performance optimizer for Python code. Codeflash speeds up Python code by figuring out the best way to rewrite your code while verifying that the behavior of the code is unchanged. @@ -25,14 +27,35 @@ This is a great way to ensure that your code, your team's code and your AI Agent ### Features - + + + Target and optimize individual Python functions for maximum performance gains. + ```bash + codeflash --file path.py --function my_function + ``` + -| Feature | Usage | Description | -|------------------------------------------------------------------------------|---------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [Optimize a single function](optimizing-with-codeflash/one-function) | `codeflash --file path.py --function my_function` | Basic unit of optimization by asking Codeflash to optimize a particular function | -| [Optimize an entire workflow](optimizing-with-codeflash/trace-and-optimize) | `codeflash optimize myscript.py` | End to end optimization for all the functions called in a workflow, by tracing to collect real inputs to ensure correctness and e2e performance optimization | -| [Optimize all code in a repo](optimizing-with-codeflash/codeflash-all) | `codeflash --all` | Codeflash discovers all functions in a repo and optimizes all of them! | -| [Optimize every new pull request](optimizing-with-codeflash/optimize-prs) | `codeflash init-actions` | Codeflash runs as a GitHub action and GitHub app and suggests optimizations for all new code in a Pull Request. | + + End-to-end optimization of entire Python workflows with execution tracing. + ```bash + codeflash optimize myscript.py + ``` + + + + Automatically optimize all functions in your project with comprehensive analysis. + ```bash + codeflash --all + ``` + + + + Automatically optimize code changes in pull requests with GitHub Actions integration. + ```bash + codeflash init-actions + ``` + + ## How to use these docs diff --git a/docs/docs/optimizing-with-codeflash/benchmarking.md b/docs/optimizing-with-codeflash/benchmarking.mdx similarity index 86% rename from docs/docs/optimizing-with-codeflash/benchmarking.md rename to docs/optimizing-with-codeflash/benchmarking.mdx index b854c0271..d0dd464f8 100644 --- a/docs/docs/optimizing-with-codeflash/benchmarking.md +++ b/docs/optimizing-with-codeflash/benchmarking.mdx @@ -1,9 +1,13 @@ --- -sidebar_position: 5 +title: "Using Benchmarks in CI" +description: "Configure and use pytest-benchmark integration for performance-critical code optimization" +icon: "chart-line" +sidebarTitle: "CI Benchmarks" +keywords: ["benchmarks", "CI", "pytest-benchmark", "performance testing", "github actions", "benchmark mode"] --- -# Using Benchmarks in CI - -Codeflash is able to determine the impact of an optimization on predefined benchmarks, when used in benchmark mode. + +**Performance-critical optimization** - Define benchmarks for your most important functions and let Codeflash measure the real-world impact of every optimization on your performance metrics. + Benchmark mode is an easy way for users to define workflows that are performance-critical and need to be optimized. For example, if a user has an important function that requires minimal latency, the user can define a benchmark for that function. diff --git a/docs/docs/optimizing-with-codeflash/codeflash-all.md b/docs/optimizing-with-codeflash/codeflash-all.mdx similarity index 84% rename from docs/docs/optimizing-with-codeflash/codeflash-all.md rename to docs/optimizing-with-codeflash/codeflash-all.mdx index 4502b7adb..eddaf41a6 100644 --- a/docs/docs/optimizing-with-codeflash/codeflash-all.md +++ b/docs/optimizing-with-codeflash/codeflash-all.mdx @@ -1,5 +1,9 @@ --- -sidebar_position: 2 +title: "Optimize Your Entire Codebase" +description: "Automatically optimize all functions in your project with Codeflash's comprehensive analysis" +icon: "database" +sidebarTitle: "Entire Codebase" +keywords: ["codebase optimization", "all functions", "batch optimization", "github app", "checkpoint", "recovery"] --- # Optimize your entire codebase diff --git a/docs/docs/optimizing-with-codeflash/one-function.md b/docs/optimizing-with-codeflash/one-function.mdx similarity index 83% rename from docs/docs/optimizing-with-codeflash/one-function.md rename to docs/optimizing-with-codeflash/one-function.mdx index 2dec7723a..433e2e4f1 100644 --- a/docs/docs/optimizing-with-codeflash/one-function.md +++ b/docs/optimizing-with-codeflash/one-function.mdx @@ -1,7 +1,10 @@ --- -sidebar_position: 1 +title: "Optimize a Single Function" +description: "Target and optimize individual Python functions for maximum performance gains" +icon: "bullseye" +sidebarTitle: "Single Function" +keywords: ["function optimization", "single function", "class methods", "performance", "targeted optimization"] --- -# Optimize a function Codeflash is essentially a function optimizer. When asked to optimize a function, Codeflash will analyze the function, any helper functions it calls, and the imports it uses. It will then generate multiple new versions of the function and its helper functions, that are diff --git a/docs/docs/optimizing-with-codeflash/optimize-prs.md b/docs/optimizing-with-codeflash/optimize-prs.mdx similarity index 63% rename from docs/docs/optimizing-with-codeflash/optimize-prs.md rename to docs/optimizing-with-codeflash/optimize-prs.mdx index 5f5b55252..fcd1ee354 100644 --- a/docs/docs/optimizing-with-codeflash/optimize-prs.md +++ b/docs/optimizing-with-codeflash/optimize-prs.mdx @@ -1,11 +1,14 @@ --- -sidebar_position: 3 +title: "Optimize Pull Requests" +description: "Automatically optimize code changes in pull requests with GitHub Actions integration" +icon: "code-merge" +sidebarTitle: "PR Optimization" +keywords: ["pull requests", "github actions", "code review", "automated optimization", "dependent PR", "suggestions"] --- -# Optimize Pull Requests - -Codeflash can optimize your pull requests by analyzing the changes in the pull request -and generating optimized versions of the functions that have changed. + +**Continuous optimization** - After initial setup, Codeflash will automatically review every new pull request and suggest performance improvements through comments and dependent PRs. + ## How to optimize a pull request After following the setup steps in the [Automate Code Optimization with GitHub Actions](/getting-started/codeflash-github-actions) guide, @@ -13,7 +16,7 @@ Codeflash will automatically optimize your pull requests when they are opened. If Codeflash finds any successful optimizations, it will comment on the pull request asking you to review the changes. -![Codeflash PR Comment](/img/review-comment.png) +![Codeflash PR Comment](/images/review-comment.png) Codeflash can ask you to review the changes in two ways: ### Opening a dependent pull request @@ -21,10 +24,10 @@ Codeflash will open a new pull request with the optimized code. You can review the changes in this pull request, make changes if you want, and merge it if you are satisfied with the optimizations. The changes will be merged back into the original pull request as a new commit. -![Codeflash PR Review](/img/dependent-pr.png) +![Codeflash PR Review](/images/dependent-pr.png) ### Reviewing the changes in the original pull request If the suggested changes are small and only affect the modified lines, Codeflash will suggest the changes in the original pull request itself. You can choose to accept or reject the changes directly in the original pull request. The changes can be added to a batch of changes in the original pull request as a new commit. -![Codeflash PR Review](/img/code-suggestion.png) +![Codeflash PR Review](/images/code-suggestion.png) diff --git a/docs/docs/optimizing-with-codeflash/trace-and-optimize.mdx b/docs/optimizing-with-codeflash/trace-and-optimize.mdx similarity index 95% rename from docs/docs/optimizing-with-codeflash/trace-and-optimize.mdx rename to docs/optimizing-with-codeflash/trace-and-optimize.mdx index e9fbdc855..07cda05f5 100644 --- a/docs/docs/optimizing-with-codeflash/trace-and-optimize.mdx +++ b/docs/optimizing-with-codeflash/trace-and-optimize.mdx @@ -1,7 +1,10 @@ --- -sidebar_position: 4 +title: "Trace & Optimize Workflows" +description: "End-to-end optimization of entire Python workflows with execution tracing" +icon: "route" +sidebarTitle: "Trace & Optimize" +keywords: ["tracing", "workflow optimization", "replay tests", "end-to-end", "script optimization", "context manager"] --- -# Optimize Workflows End-to-End Codeflash supports optimizing an entire Python script end-to-end by tracing the script's execution and generating Replay Tests. Tracing follows the execution of a script, profiles it and captures inputs to all called functions, allowing them to be replayed during optimization. Codeflash uses these Replay Tests to optimize all functions called in the script, starting from the most important ones. diff --git a/docs/package.json b/docs/package.json deleted file mode 100644 index aa0200d56..000000000 --- a/docs/package.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "name": "cf-docs", - "version": "0.0.0", - "private": true, - "scripts": { - "docusaurus": "docusaurus", - "start": "docusaurus start", - "build": "docusaurus build", - "swizzle": "docusaurus swizzle", - "deploy": "docusaurus deploy", - "clear": "docusaurus clear", - "serve": "docusaurus serve", - "write-translations": "docusaurus write-translations", - "write-heading-ids": "docusaurus write-heading-ids", - "typecheck": "tsc" - }, - "dependencies": { - "@docusaurus/core": "^3.6.3", - "@docusaurus/preset-classic": "^3.6.3", - "@mdx-js/react": "^3.0.0", - "clsx": "^2.0.0", - "prism-react-renderer": "^2.3.0", - "react": "^18.0.0", - "react-dom": "^18.0.0" - }, - "devDependencies": { - "@docusaurus/module-type-aliases": "^3.6.3", - "@docusaurus/tsconfig": "^3.6.3", - "@docusaurus/types": "^3.6.3", - "typescript": "~5.2.2" - }, - "browserslist": { - "production": [ - ">0.5%", - "not dead", - "not op_mini all" - ], - "development": [ - "last 3 chrome version", - "last 3 firefox version", - "last 5 safari version" - ] - }, - "engines": { - "node": ">=18.0" - } -} diff --git a/docs/sidebars.ts b/docs/sidebars.ts deleted file mode 100644 index acc7685ac..000000000 --- a/docs/sidebars.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type {SidebarsConfig} from '@docusaurus/plugin-content-docs'; - -/** - * Creating a sidebar enables you to: - - create an ordered group of docs - - render a sidebar for each doc of that group - - provide next/previous navigation - - The sidebars can be generated from the filesystem, or explicitly defined here. - - Create as many sidebars as you want. - */ -const sidebars: SidebarsConfig = { - // By default, Docusaurus generates a sidebar from the docs folder structure - tutorialSidebar: [{type: 'autogenerated', dirName: '.'}], - - // But you can create a sidebar manually - /* - tutorialSidebar: [ - 'intro', - 'hello', - { - type: 'category', - label: 'Tutorial', - items: ['tutorial-basics/create-a-document'], - }, - ], - */ -}; - -export default sidebars; diff --git a/docs/src/components/HomepageFeatures/index.tsx b/docs/src/components/HomepageFeatures/index.tsx deleted file mode 100644 index 50a9e6f4c..000000000 --- a/docs/src/components/HomepageFeatures/index.tsx +++ /dev/null @@ -1,70 +0,0 @@ -import clsx from 'clsx'; -import Heading from '@theme/Heading'; -import styles from './styles.module.css'; - -type FeatureItem = { - title: string; - Svg: React.ComponentType>; - description: JSX.Element; -}; - -const FeatureList: FeatureItem[] = [ - { - title: 'Easy to Use', - Svg: require('@site/static/img/undraw_docusaurus_mountain.svg').default, - description: ( - <> - Docusaurus was designed from the ground up to be easily installed and - used to get your website up and running quickly. - - ), - }, - { - title: 'Focus on What Matters', - Svg: require('@site/static/img/undraw_docusaurus_tree.svg').default, - description: ( - <> - Docusaurus lets you focus on your docs, and we'll do the chores. Go - ahead and move your docs into the docs directory. - - ), - }, - { - title: 'Powered by React', - Svg: require('@site/static/img/undraw_docusaurus_react.svg').default, - description: ( - <> - Extend or customize your website layout by reusing React. Docusaurus can - be extended while reusing the same header and footer. - - ), - }, -]; - -function Feature({title, Svg, description}: FeatureItem) { - return ( -
-
- -
-
- {title} -

{description}

-
-
- ); -} - -export default function HomepageFeatures(): JSX.Element { - return ( -
-
-
- {FeatureList.map((props, idx) => ( - - ))} -
-
-
- ); -} diff --git a/docs/src/components/HomepageFeatures/styles.module.css b/docs/src/components/HomepageFeatures/styles.module.css deleted file mode 100644 index b248eb2e5..000000000 --- a/docs/src/components/HomepageFeatures/styles.module.css +++ /dev/null @@ -1,11 +0,0 @@ -.features { - display: flex; - align-items: center; - padding: 2rem 0; - width: 100%; -} - -.featureSvg { - height: 200px; - width: 200px; -} diff --git a/docs/src/css/custom.css b/docs/src/css/custom.css deleted file mode 100644 index 817297248..000000000 --- a/docs/src/css/custom.css +++ /dev/null @@ -1,35 +0,0 @@ -/** - * 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. - */ - -/* You can override the default Infima variables here. */ -:root { - --ifm-color-primary: #d08e0d; /* Codeflash yellow */ - --ifm-color-primary-dark: #FFA000; - --ifm-color-primary-darker: #FF8F00; - --ifm-color-primary-darkest: #FF6F00; - --ifm-color-primary-light: #FFD54F; - --ifm-color-primary-lighter: #FFE082; - --ifm-color-primary-lightest: #FFECB3; - --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: #FFD227; /* Codeflash yellow */ - --ifm-color-primary-dark: #FFA000; - --ifm-color-primary-darker: #FF8F00; - --ifm-color-primary-darkest: #FF6F00; - --ifm-color-primary-light: #FFD54F; - --ifm-color-primary-lighter: #FFE082; - --ifm-color-primary-lightest: #FFECB3; - --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3); -} - -[data-theme='dark'] { - /* Attempt to override Algolia's own CSS variables for the selected item's background */ - --docsearch-highlight-color: #d08e0d !important; -} diff --git a/docs/src/pages/index.module.css b/docs/src/pages/index.module.css deleted file mode 100644 index 9f71a5da7..000000000 --- a/docs/src/pages/index.module.css +++ /dev/null @@ -1,23 +0,0 @@ -/** - * 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; -} - -@media screen and (max-width: 996px) { - .heroBanner { - padding: 2rem; - } -} - -.buttons { - display: flex; - align-items: center; - justify-content: center; -} diff --git a/docs/src/pages/markdown-page.md b/docs/src/pages/markdown-page.md deleted file mode 100644 index 9756c5b66..000000000 --- a/docs/src/pages/markdown-page.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Markdown page example ---- - -# Markdown page example - -You don't need React to write simple standalone pages. diff --git a/docs/static/.nojekyll b/docs/static/.nojekyll deleted file mode 100644 index e69de29bb..000000000 diff --git a/docs/static/img/docusaurus.png b/docs/static/img/docusaurus.png deleted file mode 100644 index f458149e3..000000000 Binary files a/docs/static/img/docusaurus.png and /dev/null differ diff --git a/docs/static/img/logo.svg b/docs/static/img/logo.svg deleted file mode 100644 index 9db6d0d06..000000000 --- a/docs/static/img/logo.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/static/img/undraw_docusaurus_mountain.svg b/docs/static/img/undraw_docusaurus_mountain.svg deleted file mode 100644 index af961c49a..000000000 --- a/docs/static/img/undraw_docusaurus_mountain.svg +++ /dev/null @@ -1,171 +0,0 @@ - - Easy to Use - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/static/img/undraw_docusaurus_react.svg b/docs/static/img/undraw_docusaurus_react.svg deleted file mode 100644 index 94b5cf08f..000000000 --- a/docs/static/img/undraw_docusaurus_react.svg +++ /dev/null @@ -1,170 +0,0 @@ - - Powered by React - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/static/img/undraw_docusaurus_tree.svg b/docs/static/img/undraw_docusaurus_tree.svg deleted file mode 100644 index d9161d339..000000000 --- a/docs/static/img/undraw_docusaurus_tree.svg +++ /dev/null @@ -1,40 +0,0 @@ - - Focus on What Matters - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/tsconfig.json b/docs/tsconfig.json deleted file mode 100644 index 314eab8a4..000000000 --- a/docs/tsconfig.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - // This file is not used in compilation. It is here just for a nice editor experience. - "extends": "@docusaurus/tsconfig", - "compilerOptions": { - "baseUrl": "." - } -}