# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.

# NPR: uncomment this to build docs for release
# destination: ../../arrow-site/asf-site/docs/r/
url: https://arrow.apache.org/docs/r/
title: Arrow R Package
template:
  bootstrap: 5
  bootswatch: cosmo
  bslib:
    font_scale: 1.1
  includes:
    in_header: |
      <!-- Matomo -->
      <script>
        var _paq = window._paq = window._paq || [];
        /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
        /* We explicitly disable cookie tracking to avoid privacy issues */
        _paq.push(['disableCookies']);
        _paq.push(['trackPageView']);
        _paq.push(['enableLinkTracking']);
        (function() {
          var u="https://analytics.apache.org/";
          _paq.push(['setTrackerUrl', u+'matomo.php']);
          _paq.push(['setSiteId', '20']);
          var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
          g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
        })();
      </script>
      <!-- End Matomo Code -->
      <!-- Kapa AI -->
      <script
          async
          src="https://widget.kapa.ai/kapa-widget.bundle.js"
          data-website-id="9db461d5-ac77-4b3f-a5c5-75efa78339d2"
          data-project-name="Apache Arrow"
          data-project-color="#000000"
          data-project-logo="https://arrow.apache.org/img/arrow-logo_chevrons_white-txt_black-bg.png"
          data-modal-disclaimer="This is a custom LLM with access to all of [Arrow documentation](https://arrow.apache.org/docs/).  If you want an R-specific answer, please mention this in your question."
          data-consent-required="true"
          data-user-analytics-cookie-enabled="false"
          data-consent-screen-disclaimer="By clicking &quot;I agree, let's chat&quot;, you consent to the use of the AI assistant in accordance with kapa.ai's [Privacy Policy](https://www.kapa.ai/content/privacy-policy). This service uses reCAPTCHA, which requires your consent to Google's [Privacy Policy](https://policies.google.com/privacy) and [Terms of Service](https://policies.google.com/terms). By proceeding, you explicitly agree to both kapa.ai's and Google's privacy policies."
      ></script>
      <!-- End Kapa AI -->
  opengraph:
    image:
      src: https://arrow.apache.org/img/arrow-logo_horizontal_black-txt_white-bg.png
      alt: "Apache Arrow logo, displaying the triple chevron image adjacent to the text"

home:
  title: Arrow R Package
  sidebar:
    structure:
      - project
      - links
      - license
      - community
      - implementations
      - citation
      - authors
      - dev
    components:
      project:
        title: Arrow Project
        text: >
          [Homepage](https://arrow.apache.org/) <br>
          [Specifications](https://arrow.apache.org/docs/format/Columnar.html)
      implementations:
        title: Implementations
        text: >
          [.NET](https://arrow.apache.org/dotnet/) <br>
          [C GLib](https://arrow.apache.org/docs/c_glib) <br>
          [C++](https://arrow.apache.org/docs/cpp) <br>
          [Go](https://arrow.apache.org/go/) <br>
          [JavaScript](https://arrow.apache.org/js/) <br>
          [Java](https://arrow.apache.org/docs/java) <br>
          [Julia](https://github.com/apache/arrow-julia/blob/main/README.md) <br>
          [MATLAB](https://github.com/apache/arrow/blob/main/matlab/README.md) <br>
          [Python](https://arrow.apache.org/docs/python) <br>
          [R](index.html) <br>
          [Ruby](https://github.com/apache/arrow/blob/main/ruby/README.md) <br>
          [Rust](https://docs.rs/crate/arrow/latest) <br>
          [Swift](https://arrow.apache.org/swift/)
      community:
        title: Community
        text: >
          [Code of conduct](https://www.apache.org/foundation/policies/conduct.html)

navbar:
  bg: black
  structure:
    left:
      - home
      - intro
      - reference
      - articles
      - news
      - project
    right: github
  components:
    reference:
      text: Reference
      href: reference/index.html

articles:
  - title: Using the package
    navbar: Using the package
    contents:
      - read_write
      - data_wrangling
      - dataset
      - python
      - fs
      - flight

  - title: Arrow concepts
    navbar: Arrow concepts
    contents:
      - data_objects
      - data_types
      - metadata

  - title: Installation
    navbar: Installation
    contents:
      - install
      - install_nightly

  - title: Developer guides
    contents:
      - developing
      - developers/setup
      - developers/workflow
      - developers/debugging
      - developers/docker
      - developers/install_details
      - developers/data_object_layout

reference:
- title: Read datasets
  desc: >
    Open multi-file datasets as Arrow Dataset objects.
  contents:
  - open_dataset
  - open_delim_dataset
  - open_csv_dataset
  - open_tsv_dataset
  - csv_read_options
  - csv_parse_options
  - csv_convert_options


- title: Write datasets
  desc: >
    Write multi-file datasets to disk.
  contents:
  - write_dataset
  - write_delim_dataset
  - write_csv_dataset
  - write_tsv_dataset
  - csv_write_options

- title: Read files
  desc: >
    Read files in a variety of formats in as tibbles or Arrow Tables.
  contents:
  - read_delim_arrow
  - read_parquet
  - read_feather
  - read_ipc_stream
  - read_json_arrow

- title: Write files
  desc: >
     Write to files in a variety of formats.
  contents:
    - write_csv_arrow
    - write_parquet
    - write_feather
    - write_ipc_stream
    - write_to_raw

- title: Creating Arrow data containers
  desc: >
   Classes and functions for creating Arrow data containers.
  contents:
    - scalar
    - arrow_array
    - chunked_array
    - record_batch
    - arrow_table
    - buffer
    - vctrs_extension_array

- title: Working with Arrow data containers
  desc: >
    Functions for converting R objects to Arrow data containers and combining Arrow data containers.
  contents:
  - as_arrow_array
  - as_chunked_array
  - as_record_batch
  - as_arrow_table
  - concat_arrays
  - concat_tables

- title: Arrow data types
  contents:
  - data-type
  - dictionary
  - new_extension_type
  - vctrs_extension_type
  - as_data_type
  - infer_type

- title: Fields and schemas
  contents:
  - field
  - schema
  - unify_schemas
  - as_schema
  - infer_schema
  - read_schema

- title: Computation
  desc: >
    Functionality for computing values on Arrow data objects.
  contents:
  - acero
  - arrow-functions
  - arrow-verbs
  - arrow-dplyr
  - call_function
  - match_arrow
  - value_counts
  - list_compute_functions
  - register_scalar_function
  - show_exec_plan

- title: DuckDB
  desc: >
    Pass data to and from DuckDB
  contents:
  - to_arrow
  - to_duckdb

- title: File systems
  desc: >
   Functions for working with files on S3 and GCS
  contents:
  - s3_bucket
  - gs_bucket
  - copy_files

- title: Flight
  contents:
    - load_flight_server
    - flight_connect
    - flight_disconnect
    - flight_get
    - flight_put
    - list_flights

- title: Arrow Configuration
  contents:
    - arrow_info
    - cpu_count
    - io_thread_count
    - install_arrow
    - install_pyarrow
    - create_package_with_all_dependencies

- title: Input/Output
  contents:
    - InputStream
    - read_message
    - mmap_open
    - mmap_create
    - OutputStream
    - Message
    - MessageReader
    - compression
    - Codec
    - codec_is_available

- title: File read/writer interface
  contents:
  - ParquetFileReader
  - ParquetReaderProperties
  - ParquetArrowReaderProperties
  - ParquetFileWriter
  - ParquetWriterProperties
  - FeatherReader
  - CsvTableReader
  - CsvReadOptions
  - CsvWriteOptions
  - RecordBatchReader
  - RecordBatchWriter
  - as_record_batch_reader

- title: Low-level C++ wrappers
  desc: >
    Low-level R6 class representations of Arrow C++ objects intended for advanced users.
  contents:
  - Buffer
  - Scalar
  - Array
  - ChunkedArray
  - RecordBatch
  - Schema
  - Field
  - Table
  - DataType
  - ArrayData
  - DictionaryType
  - FixedWidthType
  - ExtensionType
  - ArrayData
  - ExtensionArray

- title: Dataset and Filesystem R6 classes and helper functions
  desc: >
    R6 classes and helper functions useful for when working with multi-file datases in Arrow.
  contents:
  - Dataset
  - dataset_factory
  - Partitioning
  - Expression
  - Scanner
  - FileFormat
  - CsvFileFormat
  - JsonFileFormat
  - FileWriteOptions
  - FragmentScanOptions
  - hive_partition
  - map_batches
  - FileSystem
  - FileInfo
  - FileSelector

repo:
  url:
    home: https://github.com/apache/arrow/
    source: https://github.com/apache/arrow/blob/main/r/
    issue: https://github.com/apache/arrow/issues/
    user: https://github.com/

footer:
  structure:
    left: older_versions
    right: built_with
  components:
    older_versions: "[Older versions of these docs](https://arrow.apache.org/docs/r/versions.html)"
