Skip to content

feat. add crontab explainer#37

Closed
madhav2348 wants to merge 25 commits intobetterbugs:developfrom
madhav2348:crontab-explainer
Closed

feat. add crontab explainer#37
madhav2348 wants to merge 25 commits intobetterbugs:developfrom
madhav2348:crontab-explainer

Conversation

@madhav2348
Copy link
Contributor

Description

Implementing crontab explainer, while project already have crontab generator, this will provides a clear, human-readable sentence explaining the schedule (leveraging and extending the existing
humanize logic).

Fixes #32

Dependencies

NA

Future Improvements

NA

Mentions

@rishima17

Screenshots of relevant screens

Screenshot (109)

Developer's checklist

  • My PR follows the style guidelines of this project
  • I have performed a self-check on my work

If changes are made in the code:

  • I have followed the Coding Guidelines
  • My changes in code generate no new warnings
  • My changes are not breaking another fix/feature of the project
  • I have added test cases to show that my feature works
  • I have added relevant screenshots in my PR
  • There are no UI/UX issues

HarrysonLadines and others added 7 commits February 28, 2026 14:04
Adds a reusable CopyButton component and refactors WordCounter and JsonToTxt to use it.

Fixes betterbugs#17
# [1.4.0-develop.1](betterbugs/dev-tools@v1.3.2...v1.4.0-develop.1) (2026-02-28)

### Features

* **ui:** add reusable CopyButton and refactor wordCounter and jsonToTxt ([d5b9e83](betterbugs@d5b9e83)), closes [betterbugs#17](betterbugs#17)
Replaces placeholder hashing logic with bcryptjs implementation as contributed in PR betterbugs#23
Adds proper salt generation and verification using bcrypt.compare.

Fixes betterbugs#13
# [1.4.0-develop.2](betterbugs/dev-tools@v1.4.0-develop.1...v1.4.0-develop.2) (2026-02-28)

### Bug Fixes

* **tools:** implement proper bcrypt generator ([94d19be](betterbugs@94d19be)), closes [betterbugs#23](betterbugs#23) [betterbugs#13](betterbugs#13)
closes: betterbugs#21
Co-authored-by: Syed Fahad <sfahad2904@gmail.com>
* feat. json to csv convertor

* align checkbox
Fixes betterbugs#18
Copy link
Collaborator

@SyedFahad7 SyedFahad7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the contribution @madhav2348 . I really like the direction here. The Crontab Explainer is a useful addition and it complements the existing generator nicely. I’ve reviewed this as production level logic though, and I can’t approve it in its current state because there are correctness issues that could mislead users.

Here are the key points that need to be addressed:

  1. Day of Month and Day of Week logic mismatch
    I noticed the explanation text treats day of month and day of week as OR when both are set, but the execution preview logic appears to use strict AND. That means the explanation and the calculated next run times can disagree. This is a critical correctness issue.

  2. Next 5 executions preview is incomplete
    The search window is capped at around 10,000 minutes, which is roughly 7 days. That means monthly or yearly schedules may not reliably show 5 executions. The preview needs to work for all valid cron expressions, not just short interval ones.

  3. Validation is too weak
    Right now the validation only checks that there are 5 fields. Invalid values, ranges, and malformed expressions can still pass as valid. We need stronger validation before calling an expression valid.

  4. Step parsing is incorrect for some patterns
    Expressions like 1-10/2 are not handled correctly because the step logic assumes a numeric base. This can lead to incorrect schedule interpretation.

  5. UTC vs Local preview requirement
    The issue mentioned preview based on UTC or Local context, but the implementation currently only renders local time using toLocaleString(). That requirement is only partially fulfilled.

  6. UX issue with preview toggle
    If no executions are found, the preview section does not render at all, which hides the toggle. That creates a confusing user experience.

  7. Logic duplication
    This seems to duplicate cron explanation logic instead of reusing or extending the existing humanize path from the generator. We should align with the project’s reuse pattern for maintainability.

The overall idea is good and the routing and metadata wiring look correct. But since this tool deals with schedule correctness, it needs to be reliable before merging.

Please address the above points and open a fresh PR once updated. I’ll review it again quickly once the fixes are in.

@madhav2348
Copy link
Contributor Author

Sure , some valid points you have share ,
Thanks for the review,I'll update as suggested as soon as possible

SyedFahad7 and others added 9 commits March 3, 2026 20:38
This pull request implements a specialized IPv4 Subnet Calculator tool for network engineers and DevOps professionals. The tool simplifies network planning and infrastructure setup by instantly calculating subnet details from an IP address and CIDR prefix or subnet mask.

closes betterbugs#33
# [1.4.0-develop.3](betterbugs/dev-tools@v1.4.0-develop.2...v1.4.0-develop.3) (2026-03-03)

### Features

* Add IPv4 Subnet Calculator Tool ([ad1c03f](betterbugs@ad1c03f)), closes [betterbugs#33](betterbugs#33)
* Add Smart Repair feature to JSON Validator ([betterbugs#41](betterbugs#41)) ([7a3c7a5](betterbugs@7a3c7a5)), closes [betterbugs#38](betterbugs#38)
# [1.4.0-develop.4](betterbugs/dev-tools@v1.4.0-develop.3...v1.4.0-develop.4) (2026-03-03)

### Features

* Add lockfile guard workflow to prevent unintended lockfile changes ([aa20fb5](betterbugs@aa20fb5))
* feat(tools): add SVG to React/CSS utility

Add SVG converter tool that transforms raw SVG code into optimized variants:
- React Component: Clean, reusable functional component with dynamic sizing
- CSS Data URI: Inline SVG for CSS background images
- CSS Mask: SVG as CSS mask-image for flexible icon styling

Features:
- Automatic metadata cleanup (removes XML declarations, comments, DOCTYPE)
- viewBox preservation for responsive sizing
- Optional currentColor replacement for theme support
- Configurable default width/height
- File upload support (.svg files)
- Copy-to-clipboard functionality

Closes betterbugs#50
# [1.4.0-develop.5](betterbugs/dev-tools@v1.4.0-develop.4...v1.4.0-develop.5) (2026-03-05)

### Bug Fixes

* **release:** update GITHUB_TOKEN to use RELEASE_TOKEN for semantic release ([be3a012](betterbugs@be3a012))

### Features

* **tools:** add SVG to React/CSS utility ([218ccad](betterbugs@218ccad)), closes [betterbugs#50](betterbugs#50)
@SyedFahad7
Copy link
Collaborator

Sure , some valid points you have share , Thanks for the review,I'll update as suggested as soon as possible

Please sync your PR branch with the latest develop before re-review.

Use rebase (preferred) instead of merging develop into your feature branch to keep history clean:

git fetch upstream
git rebase upstream/develop
Resolve conflicts, then run local checks (npm run lint and npm run build)
git push --force-with-lease origin
Notes:

No need to fix unrelated pre-existing warnings across the repo.
Do fix any errors introduced by your PR (especially in touched files).
Rebase rewrites only your PR branch history; it does not rewrite our develop branch.
Once updated, we’ll re-review quickly.

@madhav2348 madhav2348 requested a review from SyedFahad7 March 7, 2026 06:30
@SyedFahad7
Copy link
Collaborator

Thanks for the contribution @madhav2348 and for adding the Crontab Explainer feature.

However, this PR currently contains a very large number of commits and several merge commits from your branch history, which makes the diff difficult to review. We also recently merged additional changes into the develop branch.

To keep the repository history clean and make the review process manageable, please do the following:

  1. Sync your branch with the latest develop using rebase instead of merge.
  2. Clean up the commit history so that only the commits related to the Crontab Explainer feature remain.
  3. Push the rebased branch and open a clean PR with a minimal and reviewable commit history.

Example workflow:

git fetch upstream
git rebase upstream/develop
resolve conflicts if any
git push --force-with-lease origin

For now, we will close this PR to keep the review queue clean. Please reopen or create a fresh PR once the branch has been rebased and cleaned up.

Looking forward to reviewing the updated PR.

@SyedFahad7 SyedFahad7 closed this Mar 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Standalone Crontab Explainer Tool

8 participants