Skip to content

Add JOSS paper for SMACT v4#622

Merged
aronwalsh merged 13 commits into
masterfrom
joss
Apr 13, 2026
Merged

Add JOSS paper for SMACT v4#622
aronwalsh merged 13 commits into
masterfrom
joss

Conversation

@KingaMas
Copy link
Copy Markdown
Member

@KingaMas KingaMas commented Apr 9, 2026

Summary

  • Adds JOSS paper (joss/paper.md and joss/paper.bib) describing SMACT v4
  • Updates README and logo for v4
  • Includes all author contributions and affiliations

Changes

  • joss/paper.md — JOSS manuscript with summary, statement of need, state of the field, new features, and author contributions
  • joss/paper.bib — bibliography
  • joss/paper.pdf — rendered PDF for review
  • Updated README with v4 features and package structure diagram
  • Replaced SMACT logo with v4 version

Test plan

  • Verify PDF renders correctly via docker run --rm --volume $(pwd)/joss:/data openjournals/inara -o pdf paper.md
  • Check all author ORCIDs and affiliations are correct
  • Review bibliography entries

Summary by CodeRabbit

  • Documentation
    • Revised SMACT acronym and screenshots; added a package‑structure diagram and clarified capabilities including mixed‑valence support and updated ICSD‑2024 oxidation‑state data; introduced a property‑prediction module with pretrained composition→property models and a ROOST band‑gap predictor; reframed utils as a submodule and formatted developer commands in fenced bash blocks; expanded manuscript (SMACT v4) with metadata, author ORCIDs, DOIs for references, AI usage disclosure and detailed feature descriptions.

aronwalsh and others added 8 commits April 9, 2026 11:38
- Add ORCIDs for 9 authors (12/13 now have ORCIDs)
- Update date to 29 March 2026
- Add missing DOI for Nduma2025crystalyse bib entry
- Condense Software Design section, remove API-level detail
- Trim Research Impact section, remove uncited claims
- Minor clarity edits to Summary
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 9, 2026

Warning

Rate limit exceeded

@aronwalsh has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 19 minutes and 35 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 19 minutes and 35 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 300c29ed-3d8e-4822-91ab-02f4a7a5a419

📥 Commits

Reviewing files that changed from the base of the PR and between b837b36 and 806145c.

⛔ Files ignored due to path filters (1)
  • SMACT.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • joss/paper.md

Walkthrough

Updated documentation and publication metadata: README expanded with v4 wording (acronym, screenshot, mixed‑valence note, ICSD 2024 oxidation data, new property_prediction module and ROOST predictor), a package‑structure Mermaid diagram, and many shell commands fenced; JOSS manuscript and BibTeX updated with new entries and DOIs.

Changes

Cohort / File(s) Summary
README documentation
README.md
Changed acronym expansion; replaced screenshot reference SMACT.pngSMACT_v4.png; added mixed‑valence support note (mixed_valence=True), ICSD 2024 oxidation data mention, new property_prediction module (ROOST band‑gap predictor); introduced "Package structure" Mermaid diagram; reframed utils as a submodule and fenced shell commands in bash blocks.
JOSS manuscript
joss/paper.md
Added new manuscript joss/paper.md (SMACT v4): YAML frontmatter, expanded authors with ORCIDs and affiliations, date set to 13 April 2026, revised sections (Statement of Need, State of the Field, Software Design, Research Impact, AI Usage Disclosure, Author Contributions, Acknowledgements).
BibTeX / References
joss/paper.bib
Updated @article{Nduma2025crystalyse} to add doi = {10.48550/arXiv.2512.00977}; added @article{Merchant2023} and @article{Zeni2025} records including DOIs.

Sequence Diagram(s)

(Skipped — changes are documentation and metadata only; no new multi‑component control flow introduced.)

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Suggested labels

docs

Poem

🐰 I hopped through README fields and stitched a new view,
Screenshots and ROOSTs, ICSD whispers too,
Authors aligned, BibTeX entries primed,
Commands fenced in bash, the layout neatly timed,
A rabbit's small cheer — docs polished and new!

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Description check ❓ Inconclusive The description provides a clear summary and changes list but does not follow the repository's pull request template structure. Consider adding sections like 'Type of change', 'How Has This Been Tested' (beyond the test plan), and completing the template checklist for future consistency.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title directly and concisely describes the main change—adding a JOSS paper for SMACT v4.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch joss

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@KingaMas
Copy link
Copy Markdown
Member Author

KingaMas commented Apr 9, 2026

@CompRhys Could you please review this PR and confirm you're happy to be listed as a co-author on the JOSS paper?

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@README.md`:
- Line 85: Update the package diagram label in README.md where the string core
--> init["init.py — Element, Species, neutral_ratios"] appears: change the label
to use Python package convention by replacing "init.py" with "__init__.py" so it
reads core --> init["__init__.py — Element, Species, neutral_ratios"] to avoid
misleading contributors; locate the diagram/string and perform the literal text
replacement.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: e19a42d1-5302-452e-a79d-2dc511bcd0c8

📥 Commits

Reviewing files that changed from the base of the PR and between f2f777f and 54489ea.

⛔ Files ignored due to path filters (3)
  • SMACT.png is excluded by !**/*.png
  • SMACT_v4.png is excluded by !**/*.png
  • joss/paper.pdf is excluded by !**/*.pdf
📒 Files selected for processing (3)
  • README.md
  • joss/paper.bib
  • joss/paper.md

Comment thread README.md
SMACT --> IO["🟢 io"]
SMACT --> UT["utils"]

core --> init["init.py — Element, Species, neutral_ratios"]
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Use __init__.py in the package diagram label.

Line 85 currently says init.py, which is misleading for Python package structure and may confuse new contributors.

Suggested doc fix
-    core --> init["init.py — Element, Species, neutral_ratios"]
+    core --> init["__init__.py — Element, Species, neutral_ratios"]
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
core --> init["init.py — Element, Species, neutral_ratios"]
core --> init["__init__.py — Element, Species, neutral_ratios"]
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 85, Update the package diagram label in README.md where
the string core --> init["init.py — Element, Species, neutral_ratios"] appears:
change the label to use Python package convention by replacing "init.py" with
"__init__.py" so it reads core --> init["__init__.py — Element, Species,
neutral_ratios"] to avoid misleading contributors; locate the diagram/string and
perform the literal text replacement.

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 9, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.31%. Comparing base (f2f777f) to head (806145c).
⚠️ Report is 14 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #622   +/-   ##
=======================================
  Coverage   89.31%   89.31%           
=======================================
  Files          49       49           
  Lines        4988     4988           
=======================================
  Hits         4455     4455           
  Misses        533      533           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@CompRhys
Copy link
Copy Markdown
Contributor

CompRhys commented Apr 9, 2026

@CompRhys Could you please review this PR and confirm you're happy to be listed as a co-author on the JOSS paper?

I have no objections to being listed as an author if the bugfix I contributed is sufficient in scope. The manuscript looks good and I don't see anything that needs corrections from my position.

@KingaMas
Copy link
Copy Markdown
Member Author

@aronwalsh Do you think it's ready to submit for JOSS review?

- Add GNoME (DeepMind) and MatterGen (Microsoft) to Research Impact section
- Add Merchant2023 and Zeni2025 references to bibliography
- Update date to 13 April 2026
- Minor text improvements throughout
- Recompile PDF

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
joss/paper.md (1)

77-77: Consider evidencing or softening the quantitative performance claim.

Line 77 makes a precise throughput claim without a benchmark reference in-text. Either cite measured evidence or make the statement less absolute.

Proposed wording tweak
-The library is designed for desktop-scale computation, with data caching and multiprocessing support that enables screening of millions of compositions in minutes.
+The library is designed for desktop-scale computation, with data caching and multiprocessing support that enables high-throughput screening of large composition spaces.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@joss/paper.md` at line 77, The sentence asserting throughput ("enables
screening of millions of compositions in minutes") is an unreferenced
quantitative claim; either add a citation to benchmark data or soften the
wording. Update the SMACT v4 description sentence (the one starting "SMACT v4
meets these needs...") to either include a reference to measured benchmark
results (e.g., "see benchmark" or cite a figure/table) or rephrase to a
qualified claim such as "can enable screening of millions of compositions in
minutes on typical desktop hardware in our tests" or "can screen millions of
compositions in minutes, depending on hardware and settings." Ensure the
modified sentence clearly links to the benchmark or uses the softened wording.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@joss/paper.md`:
- Line 128: The sentence listing funders is missing the definite article before
the council name; update the sentence in the paragraph containing "Engineering
and Physical Sciences Research Council (UKRI), the Royal Society..." to read
"the Engineering and Physical Sciences Research Council (UKRI)" so it becomes
"...including the Engineering and Physical Sciences Research Council (UKRI), the
Royal Society, the Leverhulme Trust, and the European Research Council."

---

Nitpick comments:
In `@joss/paper.md`:
- Line 77: The sentence asserting throughput ("enables screening of millions of
compositions in minutes") is an unreferenced quantitative claim; either add a
citation to benchmark data or soften the wording. Update the SMACT v4
description sentence (the one starting "SMACT v4 meets these needs...") to
either include a reference to measured benchmark results (e.g., "see benchmark"
or cite a figure/table) or rephrase to a qualified claim such as "can enable
screening of millions of compositions in minutes on typical desktop hardware in
our tests" or "can screen millions of compositions in minutes, depending on
hardware and settings." Ensure the modified sentence clearly links to the
benchmark or uses the softened wording.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 61864adb-8164-4234-a4bc-d5aedbc27752

📥 Commits

Reviewing files that changed from the base of the PR and between fd9c0fe and f12bbb5.

⛔ Files ignored due to path filters (1)
  • joss/paper.pdf is excluded by !**/*.pdf
📒 Files selected for processing (2)
  • joss/paper.bib
  • joss/paper.md

Comment thread joss/paper.md Outdated

# Acknowledgements

We acknowledge contributions from all members of the Materials Design Group at Imperial College London who have provided feedback, testing, and feature requests. We thank the JOSS editors and reviewers of the original 2019 paper. This work was supported by multiple funders over the years, including Engineering and Physical Sciences Research Council (UKRI), the Royal Society, the Leverhulme Trust, and the European Research Council.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Minor grammar fix in funder sentence.

Line 128 reads more naturally with “the” before the council name.

Suggested edit
-We acknowledge contributions from all members of the Materials Design Group at Imperial College London who have provided feedback, testing, and feature requests. We thank the JOSS editors and reviewers of the original 2019 paper. This work was supported by multiple funders over the years, including Engineering and Physical Sciences Research Council (UKRI), the Royal Society, the Leverhulme Trust, and the European Research Council. 
+We acknowledge contributions from all members of the Materials Design Group at Imperial College London who have provided feedback, testing, and feature requests. We thank the JOSS editors and reviewers of the original 2019 paper. This work was supported by multiple funders over the years, including the Engineering and Physical Sciences Research Council (UKRI), the Royal Society, the Leverhulme Trust, and the European Research Council.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
We acknowledge contributions from all members of the Materials Design Group at Imperial College London who have provided feedback, testing, and feature requests. We thank the JOSS editors and reviewers of the original 2019 paper. This work was supported by multiple funders over the years, including Engineering and Physical Sciences Research Council (UKRI), the Royal Society, the Leverhulme Trust, and the European Research Council.
We acknowledge contributions from all members of the Materials Design Group at Imperial College London who have provided feedback, testing, and feature requests. We thank the JOSS editors and reviewers of the original 2019 paper. This work was supported by multiple funders over the years, including the Engineering and Physical Sciences Research Council (UKRI), the Royal Society, the Leverhulme Trust, and the European Research Council.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~128-~128: Possible missing article found.
Context: ...tiple funders over the years, including Engineering and Physical Sciences Research Council ...

(AI_HYDRA_LEO_MISSING_THE)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@joss/paper.md` at line 128, The sentence listing funders is missing the
definite article before the council name; update the sentence in the paragraph
containing "Engineering and Physical Sciences Research Council (UKRI), the Royal
Society..." to read "the Engineering and Physical Sciences Research Council
(UKRI)" so it becomes "...including the Engineering and Physical Sciences
Research Council (UKRI), the Royal Society, the Leverhulme Trust, and the
European Research Council."

aronwalsh and others added 3 commits April 13, 2026 12:35
@aronwalsh
Copy link
Copy Markdown
Member

This looks very good to me. I had a final check with coauthors and made some light tweaks.

Copy link
Copy Markdown
Member

@aronwalsh aronwalsh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Satisfied

@aronwalsh aronwalsh merged commit 91abfc1 into master Apr 13, 2026
16 checks passed
@KingaMas KingaMas deleted the joss branch April 13, 2026 12:30
@aronwalsh aronwalsh restored the joss branch April 17, 2026 14:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants