Thank you for the all the great feedbacks on my last post.
Context:
What My Project Does?
Penify is a GitHub App that auto-generates and dynamically updates documentation for your repo. It supports various styles like Google, Numpy, reST, and Epydoc, ensuring your documentation stays current with every change.
Check it out: [Penify GitHub App](https://github.com/apps/penify-dev).
Here's how it works in action: [Sample PR](https://github.com/NVIDIA/trt-llm-rag-windows/pull/44/files).
Updates:
-
Generates consistent style docstrings: Google, reST, Numpy, Epydoc.
-
Reduces hallucination through improved prompts and more context.
-
Offers Full Repo documentation generation - previously it used to generate docs for only code changes.
Working on
-
ignore-private
-
ignore-semiprivate
-
ignore-init-method
-
ignore-setters-getters
Target Audience:
-
Ideal for freelance developers requiring high-quality project documentation.
-
Perfect for project managers desiring updated codebase docs for smooth onboarding of new developers.
Alternatives: Copilot & Tabnine Cons:
-
In consistent style docstring style - sometimes it generates Google,Numpy....
-
Context selection is very limited in Co-pilot
-
Need to manually do doc updates for each modified code; Penify does it automatically in the background(it detects code changes and generates docs)
Pros:
-
You can update the modified docstring before pushing it.
I know the community believes that Docstring generation shouldn't be done by LLMs - but I am seeing some good results. Hence, I am giving my effort. Please try and let me know your feedback.
Looks like it can be done:

Only test the sample code in the post.
Absolutely, those are useful strategies for using Copilot to streamline your coding process:
When working on a class or multiple functions that are interdependent:
- Start by writing one or two functions.
- After completing your initial functions, place your cursor at the
:character after the function definition, press enter, and begin typing""". Copilot will automatically generate a docstring for you. - Now, when you type
def function_name():, Copilot will auto-generate both the function's body and its accompanying docstring.
For simpler cases or standalone functions, you can directly use the second step from the previous instructions, which involves just generating a docstring for a function by typing
"""after the function definition.