spopt icon indicating copy to clipboard operation
spopt copied to clipboard

Suggestion: Add `CONTRIBUTING.md` for smoother onboarding

Open Abhishek-Dimri opened this issue 8 months ago • 1 comments

Hi @jGaboardi,

As a new contributor, I found it a bit tricky to get everything up and running quickly - especially with optional dependencies and development setup. I’d like to suggest adding a CONTRIBUTING.md file to help others get started more smoothly.

I did find the Installation page - which is helpful - but it would be great to have a more centralized place with quick info for contributors, like how to install everything in one go or how to run tests.

If any of the following already exist, please let me know - I might've just missed them!

Suggested Outline for CONTRIBUTING.md

  • Developer’s Guide - Quick intro for contributors.
  • Requirements - Python 3.11+, pip or conda.
  • Getting Started - Fork, clone, and add upstream.
  • Installation - Something like pip install .[docs,tests,dev,notebooks] to install all dev dependencies easily.
  • Running Tests - Mention how to run tests with pytest.
  • Code Style - Not sure if tools like ruff, black, or pre-commit are used - if yes, would be helpful to document.
  • Documentation - How to build with Sphinx (make html).
  • Notebooks - There are some optional notebook dependencies, so info on how to run those would help.
  • Making a Release - For maintainers (build, version bump, publish).
  • Contributing Tips - If needed.

Happy to help draft a basic version if this sounds useful!

Thanks 🙌

Abhishek-Dimri avatar Apr 18 '25 02:04 Abhishek-Dimri

@Abhishek-Dimri Thanks for opening the issue!

While we do have a CONTRIBUTING.md with some of this information in there and pointer links to other resources (pointed to from Contribute in our README.md), it could certainly use some updating.

Moreover, Documentation/Developer at pysal.org could use some love.

cc @gegen07 @knaaptime @sjsrey @martinfleis

jGaboardi avatar Apr 19 '25 16:04 jGaboardi