.. _a_overview: ******** Overview ******** .. only:: html .. image:: images/python_powered.png :align: right :width: 220 novelWriter is built on `Python 3 `_, a cross platform programming language that doesn't require a compiler to build and run. That means that the code can run on your computer right out of the box, or from a zip file. While it is developed for Linux primarily, it runs just fine on Windows as well. It also works fine on macOS, but the author is not a mac user so less attention is paid to that platform. In order to run novelWriter, you also need a few additional packages. The user interface is built with `Qt 5 `_, a cross platform library for building graphical user interface applications. For install instructions, see :ref:`a_started`. For information on how to add spell check dictionaries, see :ref:`a_custom_dict`. Using novelWriter ================= In order to use novelWriter effectively, you need to know the basics of how it works. The following sections will explain the main principles. It starts with the basics, and gets more detailed as you read on. :ref:`a_breakdown` – Essential Information This section explains the basics of how the application works and what it can and cannot do. :ref:`a_ui` – Recommended Reading This section will give you a more detailed explanation of what the various elements on the user interface do and how you can use them more effectively. :ref:`a_fmt` – Essential Information This section covers how you should format your text. The editor is plain text, so text formatting requires some basic markup. The structure of your novel is also inferred by how you use the title headings. Tags and references are implemented by simple codes. :ref:`a_kb` – Optional / Lookup This section lists all the keyboard shortcuts in novelWriter and what they do. Most of the shortcuts are also listed next to the menu items inside the app, so this section is mostly for reference. :ref:`a_typ` – Optional This section gives you an overview of the special typographical symbols available in novelWriter. The auto-replace feature can handle the insertion of standard quote symbols for your language, and other special characters. If you use any symbols aside from these. their intended use is explained here. :ref:`a_prjfmt` – Optional This section is more technical and has an overview of changes made to the way your project data is stored. The format has changed a bit from time to time, and sometimes the changes require that you make small modifications to your project. Everything you need to know is listed in this section. Organising Your Projects ======================== In addition to manage a collection of plain text files, novelWriter can interpret and map the structure of your novel and show you additional information about its flow and content. In order to take advantage of these features, you must structure your text in a specific way and add some meta data for it to extract. :ref:`a_proj` – Essential Information This section explains how you organise the content of your project, how to customise the text, and how to set up automated backups of your work. :ref:`a_struct` – Essential Information This section covers the way your novel's structure is encoded into the text documents. It explains how the different levels of headings are used, and how you can include information about characters, plot elements, and other meta data in your text. :ref:`a_notes` - Recommended Reading This section briefly describes what novelWriter does with the note files you add to your project. Generally, the application doesn't do much with them at all aside from looking through them for tags you've set so that it knows which file to open when you click on a reference. :ref:`a_export` - Recommended Reading This section explains in more detail how the export tool works. In particular how you can control the way chapter titles are formatted, and how scene and section breaks are handled.