Skip to content

Set up Sphinx documentation and pip installable package with pyproject.toml#1

Merged
pbowling merged 2 commits intomainfrom
copilot/setup-sphinx-documentation
Oct 8, 2025
Merged

Set up Sphinx documentation and pip installable package with pyproject.toml#1
pbowling merged 2 commits intomainfrom
copilot/setup-sphinx-documentation

Conversation

Copy link
Contributor

Copilot AI commented Oct 8, 2025

This PR implements the basic infrastructure to make qmld a proper Python package with documentation support.

Changes Made

Package Configuration

  • Added pyproject.toml with complete package metadata:
    • Package name: qmld
    • Version: 0.1.0
    • Author: Paige E. Bowling (pbowling@umich.edu)
    • Dependencies: numpy and sphinx
    • Uses modern setuptools build backend

Package Structure

  • Created qmld/ package directory with __init__.py
  • Package includes version, author, and email metadata attributes
  • Package is now pip installable via pip install . or pip install -e . for development

Sphinx Documentation

  • Set up complete Sphinx documentation structure in docs/ directory:
    • conf.py: Sphinx configuration with autodoc, napoleon, and viewcode extensions
    • index.rst: Main documentation page with project description
    • installation.rst: Installation instructions
    • api.rst: API reference documentation
    • Makefile and make.bat: Build scripts for Unix and Windows
    • requirements.txt: Documentation build dependencies
  • Created _static/ and _templates/ directories for Sphinx assets

Read the Docs Integration

  • Added .readthedocs.yaml configuration file for seamless RTD deployment
  • Configured to use Python 3.11 on Ubuntu 22.04
  • Specifies documentation requirements and build configuration

Testing

The implementation has been verified:

  • ✅ Package installs successfully with pip install -e .
  • ✅ Package imports correctly: import qmld
  • ✅ Metadata is accessible: qmld.__version__, qmld.__author__, qmld.__email__
  • ✅ Documentation builds without errors: cd docs && make html

Usage

Install the package:

pip install -e .

Build documentation:

cd docs
make html

The generated HTML documentation will be in docs/_build/html/.

Original prompt

Set up basic Sphinx/readthedocs documentation. Make the package pip installable with a pytoml file with "Paige E. Bowling" as the author (email: pbowling@umich.edu), version = 0.1.0. We will start with dependencies for numpy and Sphinx.


💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

@pbowling pbowling marked this pull request as ready for review October 8, 2025 13:46
Co-authored-by: pbowling <54327515+pbowling@users.noreply.github.com>
Copilot AI changed the title [WIP] Add Sphinx documentation and create pip installable package Set up Sphinx documentation and pip installable package with pyproject.toml Oct 8, 2025
Copilot AI requested a review from pbowling October 8, 2025 13:52
@pbowling pbowling merged commit ba84fd1 into main Oct 8, 2025
0 of 3 checks passed
@pbowling pbowling deleted the copilot/setup-sphinx-documentation branch October 8, 2025 13:53
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.

2 participants