<page xmlns="http://projectmallard.org/1.0/"
      xmlns:its="http://www.w3.org/2005/11/its"
      type="topic" style="task"
      id="overview-io">
  <info>
    <link type="guide" xref="index" group="io"/>
    <revision version="0.1" date="2012-02-24" status="review"/>

    <credit type="author copyright">
      <name>Phil Bull</name>
      <email its:translate="no">philbull@gmail.com</email>
      <years>2012</years>
    </credit>
    <credit type="editor">
      <name>Michael Hill</name>
      <email its:translate="no">mdhillca@gmail.com</email>
      <years>2013</years>
    </credit>

    <include href="legal.xml" xmlns="http://www.w3.org/2001/XInclude"/>

    <desc>Access structured data storage, networking shares, and files.</desc>
  </info>

<title>Files &amp; data access</title>

<list>
 <item>
  <p><em style="strong">Asynchronously read and write files and other streams</em></p>
 </item>
 <item>
  <p><em style="strong">Store and retrieve document metadata</em></p>
 </item>
</list>

<p>Seamlessly access local and remote files using the core GNOME IO libraries.
Make your application responsive by using the extensive support for
asynchronous IO operations. Allow users to find files easily by providing
metadata to describe documents.</p>

<section id="what">
 <title>What can you do?</title>

  <p>To <em style="strong">asynchronously read and write files and other
  streams</em>, use <em style="strong" xref="tech-gio">GIO</em>. A high-level
  VFS (virtual filesystem) API is provided, as well as utilities such as icons
  and application launching</p>

  <p>Use <em style="strong" xref="tech-tracker">Tracker</em> to
  <em style="strong">store and retrieve document metadata</em>, as well as
  <em style="strong">structured data</em> such as contacts.</p>

</section>

<!-- TODO Add link to code examples.
<section id="samples">
 <title>Code samples</title>
 <list>
  <item><p>A sample we should write</p></item>
  <item><p><link xref="samples">More…</link></p></item>
 </list>
</section>
-->

<section id="realworld">
  <title>Real-world examples</title>

  <p>You can see lots of real-world applications of GNOME IO technologies in
  open source projects, like the examples given below.</p>
  <list>
    <item>
      <p><em style="strong">Documents</em> makes it easy to find your files
      with <em style="strong">Tracker</em>.</p>
      <p>( <link href="https://wiki.gnome.org/Apps/Documents">Website</link> | <link href="https://gitlab.gnome.org/GNOME/gnome-documents">Source code</link> )</p>
  </item>
    <item>
      <p><em style="strong">Files</em> leverages <em style="strong">GIO</em> to
      make it easy to manage both local and remote files.</p>
      <p>( <link href="https://wiki.gnome.org/Apps/Nautilus">Website</link> | <link href="https://wiki.gnome.org/Apps/Nautilus/Screenshots">Screenshots</link> | <link href="https://gitlab.gnome.org/GNOME/nautilus">Source code</link> )</p>
  </item>
 </list>
</section>
</page>
