How it works
Understanding NaturaList's conceptual model before diving into the details will make every subsequent step more intuitive.
The spreadsheet is the entire database
Your xlsx workbook is the whole data source. There is no separate CMS to deploy, database server to install, or admin panel to populate. Everything - taxon hierarchy, descriptions, images references, maps data, identification keys, BibTeX bibliography, language variants, filter behaviour, category colors - flows from this one file. You can keep it on your own computer, in the cloud accessible to your collaborators, or in a shared version control system like GitHub.
The app compiles the workbook into a compressed JSON file (checklist.json) which is published to the apps usercontent/data folder and contains all the data the end users see. If you edit your spreadsheet, simply recompile, and republish. This single-file model means your data is always portable, version-controllable, and shareable without proprietary tooling. If you need external media files, you can reference them in your spreadsheet and keep inside the usercontent folder.
Three sheets, three roles
The workbook has three sheets, each with a distinct purpose:
| Sheet | Role |
|---|---|
checklist | Your raw data - one row per taxon or occurrence; the sheet name is configurable |
nl_content | What your data means - column definitions, filters, keys, bibliography |
nl_appearance | How it looks - branding, categorical data colors, map regions display names, language settings |
The data sheet is intentionally "dumb" - it is just rows and columns of values. The nl_content and nl_appearance sheets are where every piece of interpretation happens.
Additional sheets
You can keep other sheets in your workbook if you need private supplementary data. NaturaList wont't touch or publish them.
The compilation step
You do not edit a live database. Instead, you upload your spreadsheet through the Manage screen inside the app. The compiler:
- Parses all three sheets and validates the structure
- Resolves any external file references (additional text files to include, media paths)
- Checks that referenced media files exist on the server
- Produces a
checklist.jsonfile
A detailed compilation log shows errors and warnings before you commit to publishing. If the compilation passes without errors, you will see a fully functional draft version which you can use to check all the data is as expected.
This file is then either uploaded directly to your server (if PHP is available) or downloaded for manual deployment. Once published, users devices will load this checklist.json - not your original xlsx file. The spreadsheet is processed locally and never leaves your device.
Before you start
These steps assume you already have a running NaturaList installation. If you have not yet deployed the app to a server, see Installation and Deployment first.