Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
41 changes: 41 additions & 0 deletions .github/ISSUE_TEMPLATE/ask_a_question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
name: Ask a Question
about: Ask a question about how to use or configure elements of the Grepper Node library.
title: '[Question]: '
labels: question
assignees: ''

body:
- type: input
id: question_summary
attributes:
label: Question Summary
placeholder: Enter a short summary...

- type: textarea
id: question_details
attributes:
label: Detailed Description
placeholder: Describe your question here...

- type: textarea
id: usage_context
attributes:
label: Usage Context
placeholder: Provide the context of how you're using the library...
optional: true
---

# Thank you for reaching out! Please provide as much detail as possible to help answer your question effectively.

## Question Summary
Summarize your question (e.g., "How do I use the `search` method?").

## Detailed Description
Describe your question in detail, including:
- What you're trying to achieve.
- Specific challenges or errors you're encountering.
- Any relevant code snippets or configurations.

## Usage Context
(Optional) Share any additional context, such as the environment (Node.js version, dependencies) or other information that might help answer your question.
69 changes: 69 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
---
name: Bug Report
about: Report a problem with this API client module.
title: '[Bug]: '
labels: bug
assignees: ''

body:
- type: input
id: bug_summary
attributes:
label: Bug Summary
placeholder: Enter a short summary of the bug...

- type: textarea
id: bug_description
attributes:
label: Detailed Description
placeholder: Describe the bug and how to reproduce it...

- type: textarea
id: reproduction_steps
attributes:
label: Steps to Reproduce
placeholder: List reproduction steps here...

- type: textarea
id: error_logs
attributes:
label: Error Logs or Output
placeholder: Paste error logs or console output here...
optional: true

- type: textarea
id: environment_info
attributes:
label: Environment Information
placeholder: Include Node.js version, OS, and library version here...

- type: textarea
id: additional_context
attributes:
label: Additional Context
placeholder: Add additional context here...
optional: true
---

# Thank you for reporting an issue! Please fill out the information below to help us diagnose and fix the problem.

## Bug Summary:
Briefly summarize the bug (e.g., "Error when using the search method").

## Detailed Description:
Provide a clear and detailed description of the bug, including:
- What you expected to happen.
- What actually happened.
- Any screenshots or relevant context.

## Steps to Reproduce:
List the steps to reproduce the issue (e.g., "1. Create a client instance. 2. Call the `search` method with a query string.").

## Error Logs or Output:
Include any relevant logs, error messages, or output. Attach screenshots if helpful.

## Environment Information:
Share your Node.js version, OS, and the version of this library.

## Additional Context:
Add any other context about the problem here, such as configuration files or dependencies that might affect the issue.
55 changes: 55 additions & 0 deletions .github/ISSUE_TEMPLATE/support.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
---
name: Request Support
about: Seek help for issues or challenges not covered by existing documentation or bug reports.
title: '[Support]: '
labels: support
assignees: ''

body:
- type: input
id: support_title
attributes:
label: Support Request Title
placeholder: Enter a short title...

- type: textarea
id: description
attributes:
label: Description
placeholder: Describe your issue or question...

- type: textarea
id: steps_tried
attributes:
label: Steps Taken
placeholder: Describe what you’ve tried so far...

- type: dropdown
id: urgency
attributes:
label: Urgency Level
description: Select how critical this request is for you.
options:
- Low
- Medium
- High
---

# Thank you for seeking support! Please provide as much detail as possible to help us assist you effectively.

## Support Request Title:
Summarize the issue or help you need (e.g., "How do I configure the API key?").

## Description:
Provide a detailed explanation of your request. Include:
- What you’re trying to achieve.
- Any error messages or unexpected behavior.
- Relevant context or configurations.

## Steps Taken:
List any steps you've already tried to resolve the issue or find the answer.

## Select how critical this request is for you:
- Low (General question or non-blocking issue).
- Medium (Important but not blocking development).
- High (Blocking progress or critical functionality).
68 changes: 68 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
name: Pull Request
about: Submit changes to improve or fix this project.
title: '[PR]: '
labels: enhancement
assignees: ''

body:
- type: input
id: pr_title
attributes:
label: Pull Request Title
placeholder: Enter a short title for your changes...

- type: textarea
id: pr_description
attributes:
label: Description
placeholder: Describe the purpose and scope of your changes...

- type: textarea
id: related_issues
attributes:
label: Related Issues
placeholder: Link related issues here...

- type: textarea
id: testing
attributes:
label: Testing
placeholder: Describe your testing process here...

- type: textarea
id: compatibility
attributes:
label: Compatibility
placeholder: Enter compatibility details here...
optional: true

- type: textarea
id: additional_notes
attributes:
label: Additional Notes
description: Add any other relevant information, such as known limitations or future improvements.
placeholder: Add additional notes here...
optional: true
---

# Thank you for your contribution! I’ll review your changes soon.

## Description
Describe your changes in detail. Include:
- What problem your changes address.
- How your changes fix the problem.
- Any additional context or considerations.

## Related Issues
Link to any related issues (e.g., "Closes #12"). If none, write "None."

## Testing
Explain how you tested your changes. Include steps to verify functionality, unit tests, or screenshots if applicable.

## Compatibility
Describe any compatibility concerns, such as supported Node.js versions, TypeScript configurations, or external dependencies.

## Additional Notes
Add any other relevant information, such as known limitations or future improvements.

80 changes: 80 additions & 0 deletions .github/workflows/pipeline.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: CI/CD Pipeline
on:
push:
pull_request:

permissions:
contents: write

jobs:

checks:
name: Quality Checks
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.x, 23.x]
steps:

- name: Checkout repository
uses: actions/checkout@v4

- name: Setup NodeJS
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'

- name: Yarn Setup
run: npm install -g yarn

- run: yarn cache clean

- name: Install Dependencies
run: yarn install --frozen-lockfile
env:
HUSKY: false

- name: Lint CodeBase
run: yarn lint

- name: Unit Tests
run: yarn test

- name: Test Coverage
run: yarn test:coverage
if: success()

- name: Compile Code
run: yarn build

publish:
name: Relase Publish
needs: [checks]
if: ${{ github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup NodeJS
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'yarn'

- name: Yarn Setup
run: npm install -g yarn

- run: yarn cache clean

- name: Install Dependencies
run: yarn install --frozen-lockfile
env:
HUSKY: false

- name: Publish
run: yarn release
env:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/dist
/node_modules
/coverage
2 changes: 2 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
yarn exec lint-staged
yarn test
1 change: 1 addition & 0 deletions .husky/prepare-commit-msg
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
exec < /dev/tty && npx cz --hook || true
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
## [1.0.1](https://github.com/h33n0k/grepper-node/compare/v1.0.0...v1.0.1) (2025-03-30)


### Bug Fixes

* trigger release ([661e174](https://github.com/h33n0k/grepper-node/commit/661e1744d2dcdc5860263ff9dddb98e6baf65b22))

# 1.0.0 (2025-03-30)


### Features

* api client ([818f673](https://github.com/h33n0k/grepper-node/commit/818f673418a3f3889d836d6b7d884cd4a8a8eae4))
* export core utilities ([45a6ea8](https://github.com/h33n0k/grepper-node/commit/45a6ea80e351c8a07a32d2039602857f8768dd32))
23 changes: 23 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Contributing to Grepper Node

Thank you for considering contributing to this project! Here’s how you can help:

## How to Contribute
1. Fork the repository.
2. Create a feature branch: `git checkout -b feature-name`.
3. Commit your changes: `git commit -m 'feat(scope optional): Add new feature'`.
4. Push the branch: `git push origin feature-name`.
5. Open a pull request.

## Guidelines
- Follow the project’s coding style and conventions.
- Add comments and documentation where necessary.
- Ensure all tests pass before submitting your PR.
- If possible add your own tests within your PR

## Issues
If you find a bug or have an idea for a feature, open an issue and describe it in detail.

---

We appreciate your contributions!
9 changes: 9 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
MIT License

Copyright (c) 2024 h33n0k

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Loading