OpenSpecy
Raman and (FT)IR spectral analysis tool for plastic particles and other environmental samples.
https://github.com/wincowgerdev/openspecy-package
Category: Industrial Ecology
Sub Category: Circular Economy and Waste
Keywords from Contributors
spectroscopy
Last synced: about 14 hours ago
JSON representation
Repository metadata
Analyze, Process, Identify, and Share, Raman and (FT)IR Spectra
- Host: GitHub
- URL: https://github.com/wincowgerdev/openspecy-package
- Owner: wincowgerDEV
- License: cc-by-4.0
- Created: 2021-01-29T12:52:33.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2025-12-05T23:06:16.000Z (about 1 month ago)
- Last Synced: 2026-01-11T02:20:13.226Z (5 days ago)
- Language: R
- Homepage: https://raw.githack.com/wincowgerDEV/OpenSpecy-package/main/docs/index.html
- Size: 182 MB
- Stars: 32
- Watchers: 2
- Forks: 12
- Open Issues: 24
- Releases: 21
-
Metadata Files:
- Readme: README.md
- Changelog: NEWS.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
README.md
Open Specy 1.0
Analyze, Process, Identify, and Share Raman and (FT)IR Spectra
Raman and (FT)IR spectral analysis tool for
environmental samples with a special focus on microplastics (Cowger et al. 2025, doi:
10.1021/acs.analchem.5c00962).
With read_any(), Open Specy provides a single function for reading individual,
batch, or map spectral data files like .asp, .csv, .jdx, .spc, .spa, .0, and
.zip. process_spec() simplifies processing spectra, including smoothing,
baseline correction, range restriction and flattening, intensity conversions,
wavenumber alignment, and min-max normalization.
Spectra can be identified in batch using an onboard reference library
using match_spec(). A Shiny app is available via run_app()
or online at https://www.openanalysis.org/openspecy/.
Installation
OpenSpecy is available from CRAN and GitHub.
Install from CRAN (stable version)
You can install the latest release of OpenSpecy from
CRAN with:
install.packages("OpenSpecy")
Install from GitHub (development version)
To install the development version of this package, paste the following code
into your R console (requires devtools):
if (!require(devtools)) install.packages("devtools")
devtools::install_github("wincowgerDEV/OpenSpecy-package")
Install on Web Assemply through webr (experimental), you can test here: https://webr.r-wasm.org/latest/
library(caTools)
library(data.table)
library(jsonlite)
library(yaml)
library(hyperSpec)
library(mmand)
library(plotly)
library(digest)
library(signal)
library(glmnet)
library(jpeg)
library(shiny)
webr::install("OpenSpecy", repos = "https://wincowger.com/OpenSpecy-package/")
library(OpenSpecy)
Getting started
library(OpenSpecy)
run_app()
Simple workflow for single spectral identification
See package vignette
for a detailed standard operating procedure.
# Fetch current spectral library from https://osf.io/x7dpz/
get_lib("derivative")
# Load library into global environment
spec_lib <- load_lib("derivative")
# Read sample spectrum
raman_hdpe <- read_extdata("raman_hdpe.csv") |>
read_any()
# Look at the spectrum
plotly_spec(raman_hdpe)
# Process the spectra and conform it to the library format
raman_proc <- raman_hdpe |>
process_spec(conform_spec_args = list(range = spec_lib$wavenumbers),
smooth_intens = T, make_rel = T)
# Compare raw and processed spectra
plotly_spec(raman_hdpe, raman_proc)
top_matches <- match_spec(raman_proc, library = spec_lib, na.rm = T, top_n = 5,
add_library_metadata = "sample_name",
add_object_metadata = "col_id")
# Print the top 5 results with relevant metadata
top_matches[, c("object_id", "library_id", "match_val", "SpectrumType",
"SpectrumIdentity")]
# Get all metadata for the matches
get_metadata(spec_lib, logic = top_matches$library_id)
Related Packages
Open Specy on Python
Kris Heath created a Open Specy python package!
https://pypi.org/project/openspi/
Citations
Cowger W, Steinmetz Z, Gray A, Munno K, Lynch J, Hapich H, Primpke S,
De Frond H, Rochman C, Herodotou O (2021). “Microplastic Spectral Classification
Needs an Open Source Community: Open Specy to the Rescue!”
Analytical Chemistry, 93(21), 7543–7548. doi:
10.1021/acs.analchem.1c00123.
Cowger W, Steinmetz Z, Leong N, Faltynkova A, Sherrod H (2024). “OpenSpecy: Analyze,
Process, Identify, and Share Raman and (FT)IR Spectra.” R package, 1.0.8.
https://github.com/wincowgerDEV/OpenSpecy-package.
Owner metadata
- Name: Win Cowger, PhD
- Login: wincowgerDEV
- Email: wincowger@gmail.com
- Kind: user
- Description: Win is Research Director at the Moore Institute for Plastic Pollution Research. He studies the prevention and transport of plastic pollution.
- Website: wincowger.com
- Location: Long Beach, CA
- Twitter:
- Company: Moore Institute for Plastic Pollution Research
- Icon url: https://avatars.githubusercontent.com/u/26821843?u=e4ea50ede62fdb61890d966fccac998c769e9b23&v=4
- Repositories: 46
- Last ynced at: 2025-10-22T13:54:15.622Z
- Profile URL: https://github.com/wincowgerDEV
GitHub Events
Total
- Create event: 4
- Issues event: 16
- Release event: 3
- Watch event: 6
- Issue comment event: 18
- Push event: 103
- Pull request review event: 1
- Pull request review comment event: 1
- Pull request event: 4
- Fork event: 1
Last Year
- Create event: 3
- Release event: 2
- Issues event: 4
- Watch event: 3
- Issue comment event: 1
- Push event: 75
- Pull request review event: 1
- Pull request review comment event: 1
- Pull request event: 4
- Fork event: 1
Committers metadata
Last synced: 3 days ago
Total Commits: 795
Total Committers: 6
Avg Commits per committer: 132.5
Development Distribution Score (DDS): 0.46
Commits in past year: 54
Committers in past year: 2
Avg Commits per committer in past year: 27.0
Development Distribution Score (DDS) in past year: 0.074
| Name | Commits | |
|---|---|---|
| Win Cowger, PhD | w****r@g****m | 429 |
| Zacharias Steinmetz | s****z@u****e | 202 |
| Zacharias Steinmetz | g****t@z****e | 135 |
| nickleong20 | n****k@m****g | 15 |
| hsherrod2019 | h****9@g****m | 9 |
| hazelvaq | h****8@g****m | 5 |
Committer domains:
Issue and Pull Request metadata
Last synced: about 1 month ago
Total issues: 81
Total pull requests: 80
Average time to close issues: 5 months
Average time to close pull requests: 30 days
Total issue authors: 11
Total pull request authors: 2
Average comments per issue: 3.17
Average comments per pull request: 3.48
Merged pull request: 70
Bot issues: 0
Bot pull requests: 0
Past year issues: 8
Past year pull requests: 4
Past year average time to close issues: N/A
Past year average time to close pull requests: about 3 hours
Past year issue authors: 1
Past year pull request authors: 1
Past year average comments per issue: 0.0
Past year average comments per pull request: 0.0
Past year merged pull request: 3
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- wincowgerDEV (64)
- zsteinmetz (6)
- valentinavan (2)
- GCov (2)
- philipp-baumann (1)
- paloeffler (1)
- joe007li (1)
- ardcarvalho (1)
- nletwin97 (1)
- MPresearcher (1)
- zzhui43 (1)
Top Pull Request Authors
- zsteinmetz (47)
- wincowgerDEV (33)
Top Issue Labels
- enhancement (46)
- bug (25)
- Shiny app (17)
- R package (15)
- good first issue (5)
- documentation (4)
- question (4)
- wontfix (2)
Top Pull Request Labels
- codex (4)
- documentation (1)
- enhancement (1)
- Shiny app (1)
Package metadata
- Total packages: 3
-
Total downloads:
- cran: 254 last-month
- Total dependent packages: 0 (may contain duplicates)
- Total dependent repositories: 0 (may contain duplicates)
- Total versions: 59
- Total maintainers: 1
proxy.golang.org: github.com/wincowgerdev/openspecy-package
- Homepage:
- Documentation: https://pkg.go.dev/github.com/wincowgerdev/openspecy-package#section-documentation
- Licenses: cc-by-4.0
- Latest release: v1.5.1 (published 8 months ago)
- Last Synced: 2026-01-11T21:32:18.809Z (4 days ago)
- Versions: 21
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent packages count: 5.395%
- Average: 5.576%
- Dependent repos count: 5.758%
proxy.golang.org: github.com/wincowgerDEV/OpenSpecy-package
- Homepage:
- Documentation: https://pkg.go.dev/github.com/wincowgerDEV/OpenSpecy-package#section-documentation
- Licenses: cc-by-4.0
- Latest release: v1.5.1 (published 8 months ago)
- Last Synced: 2026-01-11T21:32:19.788Z (4 days ago)
- Versions: 21
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent packages count: 5.395%
- Average: 5.576%
- Dependent repos count: 5.758%
cran.r-project.org: OpenSpecy
Analyze, Process, Identify, and Share Raman and (FT)IR Spectra
- Homepage: https://github.com/wincowgerDEV/OpenSpecy-package/
- Documentation: http://cran.r-project.org/web/packages/OpenSpecy/OpenSpecy.pdf
- Licenses: CC BY 4.0
- Latest release: 1.5.3 (published 9 months ago)
- Last Synced: 2026-01-11T21:32:19.539Z (4 days ago)
- Versions: 17
- Dependent Packages: 0
- Dependent Repositories: 0
- Downloads: 254 Last month
-
Rankings:
- Forks count: 8.331%
- Stargazers count: 16.258%
- Average: 25.553%
- Dependent packages count: 29.797%
- Dependent repos count: 35.455%
- Downloads: 37.924%
- Maintainers (1)
Dependencies
- actions/checkout v2 composite
- actions/upload-artifact main composite
- r-lib/actions/check-r-package v1 composite
- r-lib/actions/setup-pandoc v1 composite
- r-lib/actions/setup-r v1 composite
- r-lib/actions/setup-r-dependencies v1 composite
- R >= 4.0.0 depends
- digest * imports
- dplyr * imports
- hexView * imports
- hyperSpec * imports
- osfr * imports
- rlang * imports
- shiny * imports
- signal * imports
- DT * suggests
- config * suggests
- curl * suggests
- data.table * suggests
- ggplot2 * suggests
- knitr * suggests
- loggit * suggests
- mongolite * suggests
- plotly * suggests
- rdrop2 * suggests
- rmarkdown * suggests
- shinyBS * suggests
- shinyWidgets * suggests
- shinyjs * suggests
- shinythemes * suggests
- testthat >= 3.0.0 suggests
- JamesIves/github-pages-deploy-action v4.4.1 composite
- actions/checkout v3 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- actions/checkout v3 composite
- actions/upload-artifact v3 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
Score: 11.35837470512163