Skip to content

Documentation improvements to consider

Jeremy Monat edited this page Feb 8, 2022 · 25 revisions
  • Status flags:
    • (E) = endorsed in SymPy community (on Google Group, GitHub, etc.)
    • (I) = issue created
    • (P) = pull request
    • (M) = pull request merged

Improvements to consider:

  • General
    • Feature @SymPy twitter account on documentation template
    • (I-22652 P-22709 M) Navigation: Last page of a sections should have Next topic = index of next section, namely
      • Last page of Tutorial should have Next topic = Guides
      • Last page of Guides should have Next topic = Explanation
    • (E I-22716) Improve documentation formatting by changing Sphinx theme
      • Create pull request for PyData
      • Create pull request for Book
    • Set width and height of SymPy logo: Image elements do not have explicit width and height
      • Set an explicit width and height on image elements to reduce layout shifts and improve CLS. "../_static/sympylogo.png"
    • Display the Diataxis category even more prominently, in addition to breadcrumbs at the top of each page.
    • Improve explanation of how to update, build, and test documentation. Instructions are currently spread across multiple pages (Development workflow wiki, Documentation style guide), and there is no example of the whole process.
  • Reference (API) documentation
    • Core relational
      • Add table for valid values of rop: there is no listing of those keys, at least none found from searching for ValidRelationOperator on the docs site.
      • (I-22674 P 22694) Describe how rop can set, and rel_op can get, the relation type.
  • Tutorial
  • Guides
    • (I-22598) Parsing solutions
    • (E) Parsing unsolved expressions
    • (I-22629 P-22629) Reorder guides: Put Contributing to SymPy last
    • (E) Solvers: first explain how to solve equations and inequalities, particularly explaining the strengths of different solvers, when to use each, and giving examples of each
    • (E) Add an example to solveset() on how to solve a set of equations or inequalities in a single variable (if it does--the documentation is ambiguous on whether this is even possible)
    • (E) Add an example to solve() on how to solve a set of equations or inequalities, in a single variable, then in multiple variables (if possible)
    • What kinds of things you can do with SymPy (Calculus, Linear Algebra, etc.), as the wiki tutorial nicely does
  • Contributing documentation
  • (E) At the top of each of the low-level solvers pages, put a note that you probably want to use a high-level solver instead--I reached the inequalities solvers page via a web search, and thought I had to use it instead of solve
  • (E) Use simpler math for examples, or at least the first example for a function. For example, that page on solving inequalities has as its first example the following. I didn't know what the Poly function was (plus I couldn't find documentation for it), so I couldn't understand the solver.
    • solve_rational_inequalities([[ ((Poly(-x + 1), Poly(1, x)), '>='),
    • ((Poly(-x + 1), Poly(1, x)), '<=')]])
    • {1}
Clone this wiki locally