Chores
- Refactor ([95](https://github.com/xability/py-maidr/pull/95),
[`63b7f3f`](https://github.com/xability/py-maidr/commit/63b7f3fb791e7945d54ad6cdf73a7054ab5b7bea))
- Refactor ([96](https://github.com/xability/py-maidr/pull/96),
[`a37b0f1`](https://github.com/xability/py-maidr/commit/a37b0f1a0ef1ea79483a5cd06b32dcb43c837cfa))
- **vscode**: Add a missing space to window title format in `.vscode/settings.json`
([`aa739d3`](https://github.com/xability/py-maidr/commit/aa739d3111b3dcaadc50fc940ae1cbf57b65af67))
- **vscode**: Add Copilot instructions for coding style and documentation
([`b7037d8`](https://github.com/xability/py-maidr/commit/b7037d83a1e4485f178a26951d5187247602689b))
- **vscode**: Refine Copilot instruction
([`f049b44`](https://github.com/xability/py-maidr/commit/f049b441ab980c6e9a1c3f9a47ff7c16ecffe836))
Continuous Integration
- Sort out semantic release config to display `feat` and `fix` first in the release notes
([`529c721`](https://github.com/xability/py-maidr/commit/529c721b6d0b70e5bfb6d2d46c40991027502ff2))
- **semantic-release**: Exclude non-conventional commits from `CHANGELOG`
([106](https://github.com/xability/py-maidr/pull/106),
[`d40a95c`](https://github.com/xability/py-maidr/commit/d40a95c1d380a43553328e246025faea760f5e04))
This pull request updates the `exclude_commit_patterns` in the `pyproject.toml` file. The previous
commits that don't match the conventional commits prefixes and internal changes that do not
necessarily affect end-user interactions, such as `chore`, `ci`, and `style`, are excluded from
our CHANGELOG and GitHub release note moving forward. This is not a direct fix, but after this
change, it ensures that only relevant commits are included in the release changelog as a fair
stopgap solution.
Closes 99
Documentation
- **example**: Add `streamlit` dashboard demo with `maidr`
([107](https://github.com/xability/py-maidr/pull/107),
[`ae7bc15`](https://github.com/xability/py-maidr/commit/ae7bc15fabe2927c3377402eb4dbf4646dbe5806))
<!-- Suggested PR Title: [feat/fix/refactor/perf/test/ci/docs/chore] brief description of the change
--> <!-- Please follow Conventional Commits: https://www.conventionalcommits.org/en/v1.0.0/ -->
Description This PR includes an example streamlit web app to demonstrate interactivity
capabilities with maidr.
closes 84
Type of Change
- [ ] Bug fix - [ ] New feature - [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected) - [x] Documentation update
Checklist
- [x] My code follows the style guidelines of this project - [x] I have performed a self-review of
my code - [x] I have commented my code, particularly in hard-to-understand areas - [x] I have made
corresponding changes to the documentation - [x] My changes generate no new warnings - [x] Any
dependent changes have been merged and published in downstream modules
Pull Request
Description Added a new file `example_streamlit_app.py` under streamlit folder in example
directory.
Screenshots (if applicable) <img width="1964" alt="image"
src="https://github.com/user-attachments/assets/bf3b5630-2e71-4057-87ad-5b9ca0940769">
Features
- Fetch LLM API keys from user env variables ([102](https://github.com/xability/py-maidr/pull/102),
[`fc84593`](https://github.com/xability/py-maidr/commit/fc84593a9b01904d24fd86da88f79e25db02417a))
<!-- Suggested PR Title: [feat/fix/refactor/perf/test/ci/docs/chore] brief description of the change
--> <!-- Please follow Conventional Commits: https://www.conventionalcommits.org/en/v1.0.0/ -->
Description This pull request fixes the handling of API keys for LLMs in the code. It adds a
JavaScript script to handle the API keys for LLMs and initializes the LLM secrets in the MAIDR
instance. The script injects the LLM API keys into the MAIDR instance and sets the appropriate
settings based on the presence of the Gemini and OpenAI API keys. This ensures that the LLM
functionality works correctly with the updated API key handling.
closes 76
Type of Change
- [x] Bug fix - [ ] New feature - [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected) - [ ] Documentation update
Checklist
- [x] My code follows the style guidelines of this project - [x] I have performed a self-review of
my code - [x] I have commented my code, particularly in hard-to-understand areas - [x] I have made
corresponding changes to the documentation - [x] My changes generate no new warnings - [x] Any
dependent changes have been merged and published in downstream modules
Pull Request
Description 1. Added a new method called `initialize_llm_secrets()` in environment.py which
fetches the keys from the environment variable. 2. Injected the script when the maidr iframe loads
initially.
Checklist <!-- Please select all applicable options. --> <!-- To select your options, please put
an 'x' in the all boxes that apply. -->
- [x] I have read the [Contributor Guidelines](../CONTRIBUTING.md). - [x] I have performed a
self-review of my own code and ensured it follows the project's coding standards. - [x] I have
tested the changes locally following `ManualTestingProcess.md`, and all tests related to this pull
request pass. - [x] I have commented my code, particularly in hard-to-understand areas. - [x] I
have updated the documentation, if applicable. - [x] I have added appropriate unit tests, if
applicable.
Additional Notes <!-- Add any additional notes or comments here. --> <!-- Template credit: This
pull request template is based on Embedded Artistry
{https://github.com/embeddedartistry/templates/blob/master/.github/PULL_REQUEST_TEMPLATE.md},
Clowder
{https://github.com/clowder-framework/clowder/blob/develop/.github/PULL_REQUEST_TEMPLATE.md}, and
TalAter {https://github.com/TalAter/open-source-templates} templates. -->