This is something I have been thinking about & working on lately. The review guidance I present to my workshop attendees is focused on code review for the purpose of publishing computationally reproducible code that supports a paper, so perhaps a different objective than others in the thread. Looking forward to hearing how others do it in their labs!
My current (and always evolving) checklist is:
Organization
- One repository
- Separate code and data
Documentation
- Specify run environment
- Specify dependencies
- Create a project README
- Create a data dictionary
Automation
- Create a master script
- Create relative paths
- Use a container technology
Dissemination
- Specify a license
- Publish your repository / container with a persistent identifier