Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
fc7e6de
fixed tests
christianchimezie Jun 15, 2025
8363556
updated readme
OLAMILEKAN011 Jun 24, 2025
a66d9b6
Merge pull request #28 from christianchimezie/feature/develop/fixpyte…
christianchimezie Jun 24, 2025
55df9ea
Merge pull request #29 from christianchimezie/feature/develop/fix_pyt…
christianchimezie Jun 28, 2025
24d4684
PEP8 Compliance for recommender
ojumah20 Jul 24, 2025
48ba9d3
Cleaning up recommender code
ojumah20 Jul 24, 2025
261eba7
Merge pull request #31 from ojumah20/ojumah20-visual_suggestion
christianchimezie Jul 27, 2025
d60c226
generator code was made pep8 compliant
T-leke Jul 27, 2025
0981523
Merge pull request #32 from christianchimezie/plot-generator-pep8
christianchimezie Sep 14, 2025
da4cd15
repo pep 8 complaint
christianchimezie Sep 14, 2025
9f307f0
Merge pull request #34 from PlotSenseAI/feature/develop/code_compliance
christianchimezie Sep 21, 2025
793837d
Update README.md
christianchimezie Sep 21, 2025
cea692d
Merge pull request #36 from PlotSenseAI/christianchimezie-update_readme
christianchimezie Sep 21, 2025
a80e13b
add GA4 analytics with env-driven ID and SPA route tracking (#37)
jerryola1 Sep 25, 2025
eaff941
Feat/ga analytics (#33)
jerryola1 Oct 14, 2025
1fa08e0
"feat: add comprehensive testing infrastructure and GitHub templates"…
christianchimezie Oct 25, 2025
16f6344
test
christianchimezie Oct 25, 2025
be341e7
fixed errors
christianchimezie Nov 13, 2025
b73102f
fixed errors
christianchimezie Nov 13, 2025
7c6f86c
fixed errors
christianchimezie Nov 13, 2025
0c4030b
fix: resolve f-string syntax errors and update CI/CD configuration
christianchimezie Nov 13, 2025
e6a5ae5
commit pytest.log
christianchimezie Nov 13, 2025
b07a7f8
fix: add required blank line in test/conftest.py for PEP 8 compliance
christianchimezie Nov 13, 2025
8d541b1
commit pytest
christianchimezie Nov 13, 2025
2da8445
Merge pull request #70 from PlotSenseAI/feature/test/cicd
christianchimezie Nov 13, 2025
5542106
fix: resolve ESLint errors in web frontend
christianchimezie Nov 13, 2025
6a55834
fix: use type-only imports in test-utils.tsx for verbatimModuleSyntax
christianchimezie Nov 13, 2025
e4f5ce4
Merge pull request #71 from PlotSenseAI/feature/test/cicd
christianchimezie Nov 13, 2025
a2999f8
docs: add PyPI version and downloads badges to README
christianchimezie Nov 13, 2025
32242b9
docs: add maintainers section with team information
christianchimezie Nov 13, 2025
3bb3ef6
Update Readme with Maintainers
christianchimezie Nov 13, 2025
2f08fb3
Merge pull request #72 from PlotSenseAI/feature/test/cicd
christianchimezie Nov 13, 2025
39427c0
create custom exception script
T-leke Nov 19, 2025
b5f5ac4
tracking exception dependecies
T-leke Nov 19, 2025
2ea5fe5
adding plotsense custom exception to validate key function
T-leke Nov 24, 2025
cd790e1
applying custom plotsense exception to more functions
T-leke Nov 24, 2025
b6fe831
creating a test script for the custom exceptions
T-leke Nov 24, 2025
d3e655d
testing the inheritance of each exception
T-leke Nov 24, 2025
e19f3ee
raising and catching each exception
T-leke Nov 24, 2025
6e2d6e2
testing the exception in a notebook
T-leke Nov 24, 2025
99a552e
testing the exception
T-leke Nov 24, 2025
a11763e
added the custom exception to the suggestion module
T-leke Nov 24, 2025
c896339
all test for the custom exceptions passed
T-leke Nov 24, 2025
15bf64b
Merge pull request #74 from T-leke/feature/improve-error-handling
christianchimezie Nov 27, 2025
fb9f552
build: migrate project to uv package manager
christianchimezie Jan 16, 2026
12a16ac
commit
christianchimezie Jan 16, 2026
ed98137
tested code
christianchimezie Jan 16, 2026
843f634
test: fix exception type in PlotExplainer tests
christianchimezie Jan 16, 2026
3587ebf
refactor: clean up API key error messages
christianchimezie Jan 16, 2026
d1639f9
log
christianchimezie Jan 16, 2026
31888cf
Merge pull request #76 from PlotSenseAI/feature/develop/update_projec…
christianchimezie Jan 16, 2026
6160082
docs: add technical roadmap link to README
christianchimezie Jan 17, 2026
e96ea69
Merge pull request #77 from PlotSenseAI/feature/develop/update_projec…
christianchimezie Jan 17, 2026
e174ff2
add methodology and roadmap
christianchimezie Jan 17, 2026
ec94940
Merge pull request #78 from PlotSenseAI/feature/develop/update_projec…
christianchimezie Jan 17, 2026
c4171b7
docs: add community section with Discord server link
christianchimezie Jan 17, 2026
52bf520
Merge pull request #79 from PlotSenseAI/feature/develop/update_projec…
christianchimezie Jan 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions .commitlintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"extends": ["@commitlint/config-conventional"],
"rules": {
"type-enum": [
2,
"always",
[
"feat",
"fix",
"docs",
"style",
"refactor",
"perf",
"test",
"build",
"ci",
"chore",
"revert"
]
],
"subject-case": [0],
"header-max-length": [2, "always", 100]
}
}
Binary file modified .coverage
Binary file not shown.
92 changes: 92 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# Coverage.py configuration file
# https://coverage.readthedocs.io/

[run]
# Measure branch coverage in addition to statement coverage
branch = True

# Source directories to measure
source = plotsense

# Files to omit from coverage
omit =
*/tests/*
*/test_*.py
*/__pycache__/*
*/venv/*
*/env/*
*/.venv/*
setup.py
*/site-packages/*

# Parallel mode for running tests in parallel
parallel = False

[report]
# Precision for coverage percentage
precision = 2

# Show lines that weren't executed
show_missing = True

# Don't skip covered files in the report
skip_covered = False

# Skip files with no statements
skip_empty = True

# Sort report by coverage percentage
sort = Cover

# Fail if coverage is below this percentage (can be overridden in CI)
# fail_under = 80

# Regexes for lines to exclude from consideration
exclude_lines =
# Have to re-enable the standard pragma
pragma: no cover

# Don't complain about missing debug-only code:
def __repr__
def __str__

# Don't complain if tests don't hit defensive assertion code:
raise AssertionError
raise NotImplementedError
raise ValueError

# Don't complain if non-runnable code isn't run:
if __name__ == .__main__.:
if 0:
if False:

# Type checking only code
if TYPE_CHECKING:
if typing.TYPE_CHECKING:

# Abstract methods
@abstractmethod
@abc.abstractmethod

# Overloaded functions
@overload

# Protocol methods
@protocol
\.\.\.

[html]
# Directory for HTML report
directory = htmlcov

# Title for HTML report
title = PlotSense Test Coverage Report

[xml]
# Output file for XML report (for CI/CD tools)
output = coverage.xml

[json]
# Output file for JSON report
output = coverage.json
show_contexts = True
85 changes: 85 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
---
name: Bug Report
about: Create a report to help us improve
title: '[BUG] '
labels: bug
assignees: ''
---

## Bug Description

<!-- A clear and concise description of what the bug is -->

## To Reproduce

Steps to reproduce the behavior:

1.
2.
3.
4.

**Minimal Reproducible Example:**

```python
# Paste your code here
import plotsense as ps
import pandas as pd

# Your code that reproduces the issue
```

## Expected Behavior

<!-- A clear and concise description of what you expected to happen -->

## Actual Behavior

<!-- What actually happened -->

## Error Messages

```
# Paste the full error traceback here
```

## Environment

**System Information:**
- OS: <!-- e.g., Windows 11, Ubuntu 22.04, macOS 14 -->
- Python Version: <!-- e.g., 3.11.5 -->
- PlotSense Version: <!-- e.g., 0.1.3 -->

**Dependencies:**
```bash
# Paste output of: pip list | grep -E "plotsense|pandas|matplotlib|groq"
```

## Screenshots

<!-- If applicable, add screenshots to help explain your problem -->

## Additional Context

<!-- Add any other context about the problem here -->

**Data Sample (if applicable):**

```python
# If the bug is data-related, provide a small sample DataFrame
df = pd.DataFrame({
# Your data
})
```

## Workaround

<!-- If you found a temporary workaround, describe it here -->

## Checklist

- [ ] I have searched existing issues to ensure this bug hasn't been reported
- [ ] I have tested with the latest version of PlotSense
- [ ] I have provided a minimal reproducible example
- [ ] I have included the full error traceback
- [ ] I have checked that my GROQ_API_KEY is valid (if applicable)
83 changes: 83 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
---
name: Feature Request
about: Suggest an idea for PlotSense
title: '[FEATURE] '
labels: enhancement
assignees: ''
---

## Feature Description

<!-- A clear and concise description of the feature you'd like -->

## Problem Statement

<!-- Is your feature request related to a problem? Please describe. -->
<!-- Example: "I'm always frustrated when..." -->

## Proposed Solution

<!-- Describe the solution you'd like -->

**Example Usage:**

```python
# How you envision using this feature
import plotsense as ps

# Your proposed API/usage
```

## Alternatives Considered

<!-- Describe any alternative solutions or features you've considered -->

## Benefits

<!-- Why would this feature be useful? Who would benefit from it? -->

- **For Data Scientists:**
- **For Analysts:**
- **For the Project:**

## Implementation Ideas

<!-- If you have ideas about how this could be implemented, share them here -->

**Affected Components:**
- [ ] Recommendation Engine
- [ ] Plot Generator
- [ ] Explanation System
- [ ] Web Interface
- [ ] Documentation
- [ ] Tests
- [ ] Other: <!-- specify -->

**Potential Challenges:**

## Mockups/Examples

<!-- If applicable, add mockups, diagrams, or examples from other tools -->

## Additional Context

<!-- Add any other context or screenshots about the feature request here -->

## Would you like to work on this?

- [ ] Yes, I'd like to contribute this feature
- [ ] No, but I'm happy to help test it
- [ ] Just suggesting the idea

## Related Features/Issues

<!-- Link to related issues or features -->

Related to #

## Checklist

- [ ] I have searched existing issues/PRs for similar feature requests
- [ ] I have provided a clear use case for this feature
- [ ] I have considered how this fits with PlotSense's mission
- [ ] I have provided example usage code.
45 changes: 45 additions & 0 deletions .github/ISSUE_TEMPLATE/question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
name: Question
about: Ask a question about using PlotSense
title: '[QUESTION] '
labels: question
assignees: ''
---

## Question

<!-- Ask your question here -->

## Context

<!-- Provide context about what you're trying to accomplish -->

**What I'm trying to do:**

**What I've tried:**

```python
# Your code attempts
```

## Environment

- PlotSense Version: <!-- e.g., 0.1.3 -->
- Python Version: <!-- e.g., 3.11 -->

## Expected Outcome

<!-- What result are you hoping to achieve? -->

## Resources Checked

<!-- Have you checked these resources? -->

- [ ] README.md
- [ ] TESTING.md
- [ ] [Documentation/Examples](<!-- link if available -->)
- [ ] Existing issues

## Additional Information

<!-- Any other details that might help answer your question -->
61 changes: 61 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Pull Request

## Description

<!-- Provide a brief description of the changes in this PR -->

### Type of Change

<!-- Mark the relevant option with an "x" -->

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Documentation update
- [ ] Code refactoring (no functional changes)
- [ ] Performance improvement
- [ ] Test additions/improvements
- [ ] CI/CD changes
- [ ] Dependencies update

## Related Issues

<!-- Link to related issues using #issue_number -->

Closes #
Related to #

## Changes Made

<!-- Provide a detailed list of changes -->

-
-
-

## Documentation

- [ ] I have updated the README.md (if needed)
- [ ] I have updated TESTING.md (if test-related changes)
- [ ] I have added/updated docstrings for new functions/classes
- [ ] I have updated type hints/annotations
- [ ] I have added comments for complex logic


## Checklist

<!-- Final checklist before submitting -->

- [ ] I have read the [CONTRIBUTING](../CONTRIBUTING.md) guidelines
- [ ] My branch is up to date with the target branch
- [ ] I have resolved all merge conflicts
- [ ] All CI/CD checks pass
- [ ] Code has been reviewed by me
- [ ] I have tested this on my local environment
- [ ] Documentation is updated
- [ ] Commit messages follow [Conventional Commits](https://www.conventionalcommits.org/)

<!--
Thank you for contributing to PlotSense! 🎉
Please ensure all checklist items are completed before requesting a review.
-->
Loading
Loading