A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

Cover Crop Species Selector

Used to help farmers select a cover crop that fits their goals and constraints.
https://github.com/precision-sustainable-ag/dst-selector

Category: Consumption
Sub Category: Agriculture and Nutrition

Last synced: about 14 hours ago
JSON representation

Repository metadata

README.md

Cover Crop Species Selector Decision Support Tool

Date Created: 08/18/22

Date Last Modified: 04/22/2025

The species selector DST is used to help farmers select a cover crop that fits their goals and constraints. The user can either input specifics about their field location and cover cropping goals or explore cover crops without entering those details. The tool is mainly used to explore expert reccomendations and ratings for cover crops in the farmer's USDA Plant Hardiness Zone. This allows farmers to make educated decisions that are best suited for their specific goals and can save time as opposed to calling the extension office.

Support for this project is brought to us by Agricultural Informatics Lab, NE SARE, USDA NRCS, NECCC, and the Precision Sustainable Agriculture.

To access the live tool, visit https://covercrop-selector.org/
To see development progress, visit https://develop.covercrop-selector.org/

Table of Contents:

Tech stack

  • Single page application made in React.js
  • Ratings and zone info verified via Airtable and then ingested into a PostgreSQL database and served up using a Node.js API

Local Installation Steps

Prerequisites:

  1. Node and NPM Download Here
  2. Git Download Here
  3. A code editor (we recommend vs code) Download Here

Steps:

  1. Open a new Terminal for Mac/Linux or Command Prompt for Windows
  2. Move to the desired folder cd /path/to/folder
  3. Clone this repository into that folder git clone https://github.com/precision-sustainable-ag/dst-selector
  4. From the Terminal/Command Prompt, move into the cloned directory cd dst-selector
  5. Run npm config set '@psa:registry' https://node.bit.cloud
  6. From the same command window, run npm install to install project dependencies. A full list of the dependencies can be found in package.json. If you are running on a windows machine delete package-lock.json prior to running the below command.
  7. Create a file called .env in root directory (dst-selector). The file will contain the below keys. This document is in the git ignore, so it (and your API keys) won't be pushed to the repository. Ask @mikahpinegar or Adam Smith for the values of the keys
VITE_API_GOOGLE_API_KEY="<google key>"
VITE_API_OPEN_WEATHER_API_KEY="<open weather key>"
VITE_API_MAPBOX_API_KEY="<mapbox token key>"
VITE_API_AUTH0_DOMAIN="<auth0 domain>"
VITE_API_AUTH0_CLIENT_ID="<auth0 client id>"
VITE_API_AUTH0_AUDIENCE="<auth0 audience>"
VITE_API_USER_HISTORY_API_URL="<user history url>"
VITE_API_USER_HISTORY_SCHEMA="<schema>"
VITE_API_RELEASE_NOTES="<Release Notes URL>"
VITE_API_MAPBOX_TOKEN="<mabox token>"
  1. After the dependencies have been installed and the .env file has been created, run npm start to run the code locally. If you run into any issues take a look in the Runbook for previous issues and solutions. This will compile the JSX code into Javascript and open up a new browser window with the current version of the covercrops project!

Running in docker:

Run ./start_script.sh
Run open http://localhost:3000

Documentation

For in depth documentation see the wiki pages

Runbook

Symptom:
Node sass not supported on Mac OS Error: Node Sass does not yet support your current environment: OS X 64-bit with Unsupported runtime (88)

Solution:
npm rebuild node-sass

Symptom:
After running npm install you might run into an Error E404 - Not Found - GET https://registry.npmjs.org/@psa%2fdst.ui.map - Not found

Solution:
Follow these steps:

  1. Install the react-scripts package using npm install react-scripts --save
  2. Run npm start

Line Spacing
Set Line spacing (CRLF -> LF)
git config core.autocrlf false
git rm --cached -r .
git reset --hard

Unit Testing

To run the Cypress client
npx cypress open --config-file=dev.config.js

Helpful Links

Confluence Links
Development Best Practices
Design Best Practaces
ESLint
Release Notes
User History

Recomended Development Tools
VSCode
Cursor


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 7 days ago

Total Commits: 2,112
Total Committers: 25
Avg Commits per committer: 84.48
Development Distribution Score (DDS): 0.751

Commits in past year: 516
Committers in past year: 11
Avg Commits per committer in past year: 46.909
Development Distribution Score (DDS) in past year: 0.564

Name Email Commits
Rohit Bandooni r****o@n****u 526
Mikah Pinegar 5****r 435
Adam Smith a****3@g****m 352
YazidZidane x****8@g****m 341
ameyachavan007 c****7@g****m 78
drewlearns d****s@h****m 51
Rick Hitchcock r****k@o****m 44
Ravi Ghevariya r****0@g****m 42
Brennen Farrell b****2@n****u 34
Boscosylvester John Chittilapilly b****n@g****m 33
Diksha Maurya m****0@g****m 29
ssharm1524 s****5@g****m 28
dearpriyankasa d****a@g****m 28
Nisarg Prajapati n****1@g****m 22
Akshat Savla a****2@g****m 19
Jinam Shah j****7@g****m 12
milad m****d@n****u 8
mil m****l@m****l 7
Boscosylvester John Chittilapilly b****i@n****u 6
sudokita s****a@g****m 4
Juliet Norton j****n@g****m 4
Neel Shah s****r@g****m 3
Rohit Bandooni r****o@C****l 2
root r****t@c****s 2
Aaron Zeng a****3@g****m 2

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 221
Total pull requests: 244
Average time to close issues: about 2 months
Average time to close pull requests: 6 days
Total issue authors: 10
Total pull request authors: 11
Average comments per issue: 0.36
Average comments per pull request: 5.24
Merged pull request: 219
Bot issues: 0
Bot pull requests: 0

Past year issues: 135
Past year pull requests: 142
Past year average time to close issues: 24 days
Past year average time to close pull requests: 4 days
Past year issue authors: 8
Past year pull request authors: 10
Past year average comments per issue: 0.13
Past year average comments per pull request: 4.99
Past year merged pull request: 128
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/precision-sustainable-ag/dst-selector

Top Issue Authors

  • mikahpinegar (80)
  • Adamws33 (78)
  • julietnpn (21)
  • YazidZidane (15)
  • saseehav (13)
  • trevorjpuckett (5)
  • brianwdavis (3)
  • akshat22 (3)
  • eseyler1213 (2)
  • shannon-gt (1)

Top Pull Request Authors

  • mikahpinegar (67)
  • Adamws33 (41)
  • YazidZidane (40)
  • ameyachavan007 (31)
  • ravighevariya10 (16)
  • akshat22 (12)
  • BrennenFa (12)
  • Diksha-Maurya (11)
  • nisarg210 (8)
  • boscosylvester-john (4)
  • jinamshah (2)

Top Issue Labels

  • WCCC Planning (7)
  • bug (6)
  • On Hold (4)
  • enhancement (3)
  • FAQ (1)
  • documentation (1)
  • duplicate (1)
  • good first issue (1)

Top Pull Request Labels

  • bug (8)
  • enhancement (5)
  • styling - epic (1)

Dependencies

package.json npm
  • @babel/plugin-proposal-export-default-from ^7.18.10 development
  • @types/react-leaflet ^2.8.2 development
  • sass ^1.54.0 development
  • sass-loader ^13.0.2 development
  • webpack ^5.74.0 development
  • @emotion/react ^11.10.0
  • @emotion/styled ^11.10.0
  • @mui/icons-material ^5.8.4
  • @mui/lab ^5.0.0-alpha.93
  • @mui/material ^5.9.3
  • @mui/styles ^5.9.3
  • autosuggest-highlight ^3.1.1
  • axios ^0.21.4
  • bootstrap ^4.5.2
  • date-fns ^2.29.1
  • jszip ^3.5.0
  • jszip-utils ^0.1.0
  • leaflet ^1.7.1
  • leaflet-control-geocoder ^2.4.0
  • leaflet-draw ^1.0.4
  • lodash ^4.17.20
  • mdbreact ^4.24.0
  • moment ^2.24.0
  • moment-timezone ^0.5.28
  • notistack ^2.0.5
  • prop-types ^15.7.2
  • react ^17.0.0
  • react-date-range ^1.4.0
  • react-dom ^17.0.0
  • react-ga ^3.3.0
  • react-leaflet ^3.2.1
  • react-leaflet-draft ^1.1.0
  • react-movable ^2.4.0
  • react-router-dom ^5.1.2
  • react-scripts 5.0.1
  • sass-mediaqueries ^1.6.1
  • save-as ^0.1.8
.github/workflows/azure-static-web-apps-polite-rock-0c9dd1f10.yml actions
  • Azure/static-web-apps-deploy v1 composite
  • actions/checkout v2 composite
Dockerfile docker
  • nginx 1.23.1-alpine build
  • node 18 build
.github/workflows/publish_issues.yml actions
  • actions/create-github-app-token v1 composite

Score: 6.354370040797351