# CxReports > CxReports renders PDF documents from templates designed in a visual editor and run against your own data. These pages cover designing templates, delivering the output, and running the server. Every page below is raw Markdown. The full corpus is at https://docs.cx-reports.com/llms-full.txt. ## Getting Started - [Welcome](https://docs.cx-reports.com/index.md): Start here: install, build a first report, and the three pillars. - [Install CxReports](https://docs.cx-reports.com/getting-started/install.md): This guide outlines the steps to run the CxReports Docker application, which has a dependency on a Postgres database, using Docker Compose - [Overview](https://docs.cx-reports.com/use-cases/index.md): What people actually build with CxReports, and the shortest path to each - [Invoices and billing](https://docs.cx-reports.com/use-cases/invoices.md): Finance teams have exact expectations for an invoice: where the totals sit, how tax is broken out, which logo appears - [Customer statements](https://docs.cx-reports.com/use-cases/statements.md): One template, one run, thousands of PDFs — each one holding a single customer's data and delivered to that customer - [Financial statements](https://docs.cx-reports.com/use-cases/financial-statements.md): Balance sheets, P&Ls and trial balances: documents whose credibility rests on the numbers adding up and the structure being legible - [Scheduled reports](https://docs.cx-reports.com/use-cases/scheduled-reports.md): Recurring reports that have to run without anyone remembering to run them, and arrive somewhere useful - [Documents for your customers](https://docs.cx-reports.com/use-cases/customer-facing.md): Getting a document to the person it belongs to, without a human forwarding an email — either by giving them somewhere to collect it, or by putting it inside you - [Multi-language documents](https://docs.cx-reports.com/use-cases/multi-language.md): The same document, produced in several languages, without maintaining a separate template for each - [Regulatory and archival](https://docs.cx-reports.com/use-cases/regulatory.md): Documents that must be readable by assistive technology, reviewable before they leave, and reproducible afterwards ## Reports - [Overview](https://docs.cx-reports.com/reports/index.md): A report is a template you build visually from components — text, tables, charts, images — and render against different data - [Build your first report](https://docs.cx-reports.com/reports/tutorial-invoice.md): In this tutorial, we'll set up all necessary components in a blank workspace to create a new template for printing invoices - [Report Editor](https://docs.cx-reports.com/reports/report-editor.md): The Report Editor is a central user interface designed to facilitate the creation and customization of reports - [Templates](https://docs.cx-reports.com/reports/templates.md): Report templates in CxReports control the layout for various page types within a report, from cover pages to standard portrait or landscape pages, and specializ - [Themes](https://docs.cx-reports.com/reports/themes.md): Themes establish baseline styling that applies consistently across all reports and templates - [Text Templates](https://docs.cx-reports.com/reports/text-templates.md): A text template is ordinary text with placeholders in it - [Text Formats](https://docs.cx-reports.com/reports/text-formats.md): There are numerous formats for presenting dates, numbers, currencies, and text, each tailored to specific functional requirements - [Subreports](https://docs.cx-reports.com/reports/subreports.md): Subreports are a feature that allows embeding one report within another - [Custom Components](https://docs.cx-reports.com/reports/custom-components.md): The Custom Component Window is where you manage your custom components, allowing you to create, edit, and delete them - [Repeating Elements](https://docs.cx-reports.com/reports/repeating-elements.md): In CxReports, you can set up visual elements to repeat based on data arrays - [Document Merge](https://docs.cx-reports.com/reports/document-merge.md): The Document Merge feature allows you to attach an additional PDF document to an existing report - [Data Sources](https://docs.cx-reports.com/reports/data-sources.md): CxReports allows you to connect to various data sources to retrieve data for use in your reports - [Data Explorer](https://docs.cx-reports.com/reports/data-explorer.md): The Data Explorer provides a comprehensive view of all imported data sources and their structures within your reports - [Parameters](https://docs.cx-reports.com/reports/parameters.md): Report parameters allow you to customize and refine the data displayed in your reports - [Set Parameters](https://docs.cx-reports.com/reports/set-parameters.md): The Set Report Parameters window is where you define the values for your report's parameters - [Text](https://docs.cx-reports.com/reports/components/text.md): > Displays a single run of text — the simplest way to put words on a page - [Heading](https://docs.cx-reports.com/reports/components/heading.md): > A titled section at one of six levels — optionally numbered, and listed in the table of contents - [Paragraph](https://docs.cx-reports.com/reports/components/paragraph.md): > Displays a block of text with default vertical margins, so consecutive blocks space themselves apart without manual adjustment - [Link](https://docs.cx-reports.com/reports/components/link.md): > Displays text that becomes a clickable hyperlink in the exported PDF - [List](https://docs.cx-reports.com/reports/components/list.md): > Renders an ordered or unordered list - [Rich Text](https://docs.cx-reports.com/reports/components/rich-text-editor.md): > Provides formatted text authored in a visual editor — bold, italics, headings, lists and links — without writing markup - [HTML](https://docs.cx-reports.com/reports/components/html.md): > Renders raw HTML that you write directly, with text templates resolved before rendering - [Date and Time](https://docs.cx-reports.com/reports/components/date-and-time.md): > Prints the moment the report was generated - [Table of Contents](https://docs.cx-reports.com/reports/components/table-of-contents.md): > Automatically generates a navigational overview of report content from countable pages and Heading components - [Table of Figures](https://docs.cx-reports.com/reports/components/table-of-figures.md): > Automatically generates a list of figures with page references, working with Figure Caption components to track figures throughout the report - [Figure Caption](https://docs.cx-reports.com/reports/components/figure-caption.md): > Marks figures for automatic indexing and provides descriptive labels that integrate with the Table of Figures component - [Badge](https://docs.cx-reports.com/reports/components/badge.md): > Displays mapped values with color-coded styling - [Flow](https://docs.cx-reports.com/reports/components/flow.md): > Arranges the components inside it in a row or a column, with control over wrapping, alignment and spacing - [Spacer](https://docs.cx-reports.com/reports/components/spacer.md): > Reserves empty space in a layout - [Separator](https://docs.cx-reports.com/reports/components/separator.md): > Draws a horizontal or vertical line to divide content - [Content Placeholder](https://docs.cx-reports.com/reports/components/content-placeholder.md): > Marks the region of a template that a report fills in - [Data Table](https://docs.cx-reports.com/reports/components/data-table.md): > Renders rows from a data source as a table, with generated columns, grouping, aggregates and conditional styling - [Custom Table](https://docs.cx-reports.com/reports/components/custom-table.md): > Provides complete control over table structure and layout, allowing manual building of rows, columns, and cells with dynamic data binding and cell spanning ca - [Key-Value Table](https://docs.cx-reports.com/reports/components/key-value-table.md): > Displays structured information as manually configured key-value pairs with advanced styling options for each table element - [Image](https://docs.cx-reports.com/reports/components/image.md): > Places an image in the report, from file management or an external URL - [QR Code](https://docs.cx-reports.com/reports/components/qrcode.md): > Generates a scannable QR code from text, which can come from your data - [Bar Code](https://docs.cx-reports.com/reports/components/barcode.md): > Transforms text and data into scannable barcodes for automated data entry, inventory tracking, and identification purposes - [Pie Chart](https://docs.cx-reports.com/reports/components/pie-chart.md): > Displays proportional data as circular slices, with each slice size representing the relative value of data categories - [Generic Chart](https://docs.cx-reports.com/reports/components/generic-chart.md): > Creates data-driven visualizations supporting bar, line, column, and scatter chart types with extensive customization options for axes, styling, and legends - [ECharts](https://docs.cx-reports.com/reports/components/echart.md): > Creates advanced charts using the ECharts library with JavaScript callback functions for complex and non-standard visualizations - [Legend Entry](https://docs.cx-reports.com/reports/components/legend-entry.md): > Draws a single legend item — a coloured shape with a label — outside of a chart - [PDF Text Box](https://docs.cx-reports.com/reports/components/pdf-text-box.md): > Places a fillable form field in the exported PDF - [Report Types](https://docs.cx-reports.com/reports/report-types.md): Report types are a feature in CxReports used to categorize the different kinds of reports such as invoices, payment receipts, and others - [Page Types](https://docs.cx-reports.com/reports/page-types.md): Reports can incorporate a wide array of page types to effectively convey information - [File Management](https://docs.cx-reports.com/reports/file-management.md): In CxReports, you have the ability to upload and manage various files that are essential for customizing and enhancing your reports - [Dictionaries](https://docs.cx-reports.com/reports/dictionaries.md): Dictionaries allow the support of multilingual report generation - [Export Formats](https://docs.cx-reports.com/reports/export-formats.md): CxReports renders every report as a PDF by default, but the same report can also be exported into other file formats - [Overview](https://docs.cx-reports.com/reports/jobs/index.md): A Report Generation Job runs one or more report templates on a schedule (or on demand) and delivers the resulting PDFs to one or more destinations such as email - [Google Drive Delivery](https://docs.cx-reports.com/reports/jobs/google-drive.md): Walks through preparing a Google Cloud service account so that a Report Generation Job can deliver report PDFs to a Google Drive folder - [AI Assistant](https://docs.cx-reports.com/reports/ai-assistant.md): The AI Assistant is an interactive chat embedded in the Report Editor that can inspect your report, create and modify elements, manage data sources, parameters, - [AI Skills](https://docs.cx-reports.com/reports/ai-skills.md): AI Skills are user-defined instructions that are automatically provided to the AI Assistant as additional context ## Administration - [Overview](https://docs.cx-reports.com/administration/index.md): Everything here is setup and housekeeping — the parts you configure once and revisit occasionally - [Users](https://docs.cx-reports.com/administration/workspace/users.md): This section is crafted for administrators responsible for onboarding new users into the CxReports environment - [Roles](https://docs.cx-reports.com/administration/workspace/roles.md): Workspace roles govern user access within a workspace - [Languages](https://docs.cx-reports.com/administration/workspace/languages.md): In CxReports, managing the languages used across your workspace is a straightforward process, accessible through the workspace's configuration settings - [Databases](https://docs.cx-reports.com/administration/workspace/databases.md): In CxReports, the Databases page is where you establish a connection between the software and your specific database - [Emails](https://docs.cx-reports.com/administration/workspace/emails.md): CxReports offers a versatile feature that allows users to streamline communication by using the built-in email functionality - [SMTP Settings](https://docs.cx-reports.com/administration/workspace/smtp.md): CxReports uses SMTP (or Microsoft Graph as an SMTP-equivalent transport) to send report emails — both ad-hoc emails from a report and scheduled deliveries from - [AI Integrations](https://docs.cx-reports.com/administration/workspace/ai-integrations.md): AI Integrations connect external AI models to your CxReports workspace - [Data Export](https://docs.cx-reports.com/administration/workspace/data-export.md): Data Export saves your workspace configuration and content so you can move it to another workspace or CxReports installation - [Data Import](https://docs.cx-reports.com/administration/workspace/data-import.md): Data Import loads a previously exported file—JSON, or ZIP if the workspace filesystem was included—into the current workspace - [Users](https://docs.cx-reports.com/administration/system/users.md): The Users page in CxReports is a crucial feature that allows you to manage the users who can log into the application - [Workspaces](https://docs.cx-reports.com/administration/system/workspaces.md): Workspaces are a key feature in CxReports - [White Label](https://docs.cx-reports.com/administration/system/white-label.md): CxReports supports white labeling so you can replace the CxReports logo with your own across the Reports app - [appsettings.json](https://docs.cx-reports.com/administration/install/appsettings.md): CxReports supports a number of settings that can be configured in the appsettings.json file - [Environment Variables](https://docs.cx-reports.com/administration/install/environment-variables.md): Every setting described in appsettings.json can also be supplied as an environment variable — you do not have to mount a configuration file at all - [Single Sign-On](https://docs.cx-reports.com/administration/install/sso.md): CxReports supports Single Sign-On (SSO) authentication through multiple providers, allowing users to authenticate using their existing organizational credential - [Host on AWS EC2](https://docs.cx-reports.com/administration/install/aws-ec2.md): In this tutorial, we will guide you through all necessary steps in order to host a CxReports on an AWS EC2 instance - [Host on AWS ECS](https://docs.cx-reports.com/administration/install/aws-ecs.md): If you want such features taken care of and don't have the means to manage it, we recommend choosing one of our cloud packages - [Database Backup](https://docs.cx-reports.com/administration/install/database-backup.md): It is crucial to regularly back up your application database to protect your data and ensure you can restore it in case of corruption, server failure, or accide - [API](https://docs.cx-reports.com/administration/integration/api.md): The CxReports API allows developers to integrate CxReports into other applications seamlessly - [Developer Resources](https://docs.cx-reports.com/administration/integration/developer-resources.md): This page contains information about available resources to help you integrate CxReports into your environment - [Data Agent](https://docs.cx-reports.com/administration/integration/data-agent.md): The Data Agent connects your databases with cloud installations of CxReports that are accessible via the Internet - [Google Sheets](https://docs.cx-reports.com/administration/integration/google-sheets.md): In this tutorial, we will go trough all necessary steps to enable Google Sheets to be used as a data source ## Release Notes - [Changelog](https://docs.cx-reports.com/changelog/index.md): Every release, newest first - [Breaking Changes](https://docs.cx-reports.com/changelog/breaking-changes.md): We understand that breaking changes can be a pain, but we try to keep them to a minimum