Repository navigation
feat: add BETYdb public website and static data explorer - #35
Open
ANAMASGARD wants to merge 1 commit into
Open
ANAMASGARD wants to merge 1 commit into
ANAMASGARD wants to merge 1 commit into
Conversation
Signed-off-by: Gaurav Chaudhary <chaudharygaurav2004@gmail.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR turns the existing package-focused website into a public landing page for BETYdb. Researchers can discover, search, and download public plant trait and yield observations while continuing to use the existing R package documentation.
The homepage now includes BETYdb branding, a prominent data search, observation-based summary counts, historical sponsor graphics, and clear links to access, explore, download, contribute, use the R package, and report corrections.
A dedicated explorer searches authors, scientific and common species names, variable names, and descriptions. It supports combined filters, pagination, shareable URLs, and browser back/forward navigation. The static search index loads only after a query is submitted, with error messages and retry support when loading fails.
Variable definitions retain their original catalog IDs. Definitions sharing a variable name do not duplicate observations, and their contextual counts are explicitly labelled as shared name-level counts. Matching definitions remain visible even when no observations satisfy the species or author filters.
The complete observation CSV is generated from the packaged public dataset and independently checked against the source access and quality-control rules. Homepage summaries regenerate when data changes. This also repairs existing ID parsing that had converted large database identifiers into missing values.
The implementation uses Quarto, R, plain JavaScript, and CSS, with no new backend.
Related Issue(s)
Addresses #15.
Related follow-up work:
This implementation credits and supersedes the homepage summary work proposed in #33. Recommend closing #33 after this contribution is accepted.
Type of Change
Checklist
devtools::check()with no errors or warningsLocal verification:
/and/betydata/.devtools::check(args = "--no-manual")reported zero errors, zero warnings, and one pre-existing NOTE about the missingORGANIZATIONfield in the license stub. The unchanged upstream baseline produced the same NOTE.Data Changes (if applicable)
Only
data/traitsview.rdawas regenerated using the corrected ID parsing; a complete rebuild of every packaged table was not performed.Six ID columns now use numeric parsing to preserve identifiers exceeding the signed 32-bit integer range. This restores 12 missing ID values across three observations, including observation IDs
5000000006,5000000007, and5000000008.The dataset retains 43,532 observations. Measurements, column order, and previously nonmissing IDs are unchanged. Raw CSVs and all other packaged datasets are unchanged.
datapackage.jsonwas not modified because this repair does not change the logical schema or row count.The website export preserves all 35 observation columns, excludes restricted and failed-QC records, and validates CSV round-trip equality and unique observation identities.
Additional Notes
main.docs/issue15-verification.md.