textAnnotatoR: An Interactive Text Annotation Tool with 'shiny' GUI
textAnnotatoR: An Interactive Text Annotation Tool with 'shiny' GUI - Published in JOSS (2025)
Science Score: 93.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in JOSS metadata -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Last synced: 8 months ago
·
JSON representation
Repository
Interactive Text Annotation Tool with Shiny GUI
Basic Info
- Host: GitHub
- Owner: chaoliu-cl
- License: gpl-3.0
- Language: R
- Default Branch: master
- Homepage: http://liu-chao.site/textAnnotatoR/
- Size: 20.5 MB
Statistics
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
- Releases: 3
Created over 1 year ago
· Last pushed 10 months ago
Metadata Files
Readme
Changelog
License
Code of conduct
README.Rmd
---
output: github_document
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# textAnnotatoR: Interactive Text Annotation Tool for R
[](https://github.com/chaoliu-cl/textAnnotatoR/actions/workflows/R-CMD-check.yaml)
[](https://codecov.io/gh/chaoliu-cl/textAnnotatoR?branch=main)
[](https://CRAN.R-project.org/package=textAnnotatoR)
[](https://lifecycle.r-lib.org/articles/stages.html#experimental)
## Overview
`textAnnotatoR` provides an interactive graphical user interface for qualitative text analysis in R. The package allows researchers, students, and practitioners to annotate text, manage codes, create memos, and visualize coding patterns through an intuitive Shiny interface.
## Key Features
- **Interactive Text Annotation**: Select and code text segments directly within the GUI
- **Code Management**: Create, organize, and merge codes with a hierarchical structure
- **Theme Organization**: Group related codes into themes with a tree-based hierarchy
- **Memo Creation**: Attach notes and observations to annotations
- **Advanced Visualization**: Analyze code frequencies, co-occurrences, and patterns
- **Comparison Tools**: Compare coding patterns between different coders or documents
- **Project Management**: Save, load, and manage annotation projects
- **Export Options**: Save annotations and coded text in various formats (CSV, JSON, HTML)
- **R Integration**: Seamlessly combine with other R packages for advanced analysis
## Installation
```{r eval=FALSE}
# Install from CRAN
install.packages("textAnnotatoR")
# Or install the development version from GitHub
# install.packages("devtools")
devtools::install_github("chaoliu-cl/textAnnotatoR")
```
## Getting Started
Launch the annotation interface with a simple function call:
```{r eval=FALSE}
library(textAnnotatoR)
annotate_gui()
```
This opens the Shiny application in your default web browser. The interface includes a toolbar for project management, a tabbed main area for different functions, and a text display area.
## Basic Usage
1. **Create a New Project**: Click "New Project" in the top toolbar
2. **Import Text**: Go to the "File" tab, upload your text document (.txt, .docx, .pdf)
3. **Annotate Text**: Select text segments and apply codes
4. **Organize Codes**: Create a hierarchical structure of themes and codes
5. **Analyze Patterns**: Use the analysis tools to explore your coding
6. **Export Results**: Save your annotations and analysis for further use
## Documentation
Comprehensive documentation is available through vignettes:
```{r eval=FALSE}
# List available vignettes
vignette(package = "textAnnotatoR")
# Read specific vignettes
vignette("practical_example", package = "textAnnotatoR")
vignette("technical_integration", package = "textAnnotatoR")
```
## Advanced Features
### Code Hierarchies
Create and manage hierarchical code structures with themes and subthemes:
- Use "Add Theme" to create organizational categories
- Group related codes under appropriate themes
- Visualize the hierarchy in a tree structure
### Co-occurrence Analysis
Explore relationships between different codes:
- Identify patterns of code co-occurrence
- Visualize connections through network graphs
- Examine statistical measures of code relationships
### Comparison Tools
Compare coding patterns between different coders or documents:
- Upload two annotation sets
- Analyze similarities and differences
- Visualize comparative patterns
### Data Export
Export your annotations in various formats:
- CSV for quantitative analysis
- JSON for web applications
- HTML for formatted viewing with code highlighting
## Integration with R Ecosystem
`textAnnotatoR` is designed to work seamlessly with other R packages:
- **tidytext**: For text mining and natural language processing
- **quanteda**: For advanced text analysis
- **igraph/ggraph**: For network visualizations of code relationships
- **rmarkdown/shiny**: For reporting and interactive dashboards
## System Requirements
- R version 4.0.0 or higher
- Shiny and its dependencies
- A modern web browser
## Testing
The package includes comprehensive automated tests for core functionality, data processing, and utility functions. While testing interactive Shiny components presents unique challenges, the package maintains good test coverage for the underlying logic and data manipulation functions that power the user interface. Interactive components are validated through manual testing and user feedback.
## Contributing
Contributions to `textAnnotatoR` are welcome! Please feel free to submit issues or pull requests on GitHub.
## License
This package is licensed under the GPL-3 License.
## Contact
- Issues: Please report issues on the [GitHub issues
page](https://github.com/chaoliu-cl/textAnnotatoR/issues)
- Email:
- X: [@X](https://x.com/ChaoLiu77600168)
Owner
- Name: Chao Liu
- Login: chaoliu-cl
- Kind: user
- Location: Cedarville, OH
- Company: Cedarville University
- Repositories: 1
- Profile: https://github.com/chaoliu-cl
JOSS Publication
textAnnotatoR: An Interactive Text Annotation Tool with 'shiny' GUI
Published
September 19, 2025
Volume 10, Issue 113, Page 7971
Tags
text analysis qualitative data analysis annotation shinyGitHub Events
Total
- Create event: 6
- Issues event: 23
- Release event: 3
- Watch event: 1
- Issue comment event: 3
- Push event: 67
- Public event: 1
- Pull request event: 2
- Fork event: 1
Last Year
- Create event: 6
- Issues event: 23
- Release event: 3
- Watch event: 1
- Issue comment event: 3
- Push event: 67
- Public event: 1
- Pull request event: 2
- Fork event: 1
Dependencies
.github/workflows/R-CMD-check.yaml
actions
- actions/checkout v4 composite
- r-lib/actions/check-r-package v2 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/pkgdown.yaml
actions
- JamesIves/github-pages-deploy-action v4.5.0 composite
- actions/checkout v4 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
DESCRIPTION
cran
- R >= 3.5.0 depends
- DT * imports
- data.tree * imports
- grDevices * imports
- graphics * imports
- jsonlite * imports
- magrittr * imports
- readtext * imports
- shiny >= 1.7.0 imports
- shinyFiles * imports
- shinydashboard * imports
- shinyjs * imports
- stats * imports
- tools * imports
- utils * imports
- covr * suggests
- knitr * suggests
- mockery * suggests
- rmarkdown * suggests
- testthat >= 3.0.0 suggests
