Skip to Content
πŸŽ‰ Now published as @nfsfu234/tour-guide project-wide config support β€” see what's new β†’
Contributing

🀝 Contributing

Thank you for contributing to nfsfu234-tour-guide! Every bug fix, feature, and doc improvement makes a difference.


πŸ› οΈ Getting Started

1. Fork & Clone

git clone https://github.com/nforshifu234dev/nfsfu234-tour-guide.git cd nfsfu234-tour-guide

2. Install Dependencies

npm install

3. Create a Branch

git checkout -b feat/your-feature-name # or git checkout -b fix/your-bug-fix # or git checkout -b docs/what-you-updated

πŸ“ Project Structure

nfsfu234-tour-guide/ β”œβ”€β”€ src/ β”‚ β”œβ”€β”€ index.tsx # Main Tour component β”‚ └── index.d.ts # TypeScript definitions β”œβ”€β”€ dist/ # Build output (auto-generated) β”œβ”€β”€ README.md # Main documentation β”œβ”€β”€ CHANGELOG.md # Version history β”œβ”€β”€ MIGRATION.md # v0.x β†’ v1.0 guide └── package.json

πŸ”§ Development Workflow

Build the Package

npm run build

Test Locally

# Link the package npm link # In your test project npm link @nfsfu234/tour-guide # Test your changes npm run dev

Verify Build Before PR

npm run build # Check dist/ folder is generated correctly

✍️ Commit Convention

We use Conventional CommitsΒ  β€” this drives automated versioning via standard-version.

PrefixVersion BumpExample
feat:Minor (0.2.x β†’ 0.3.0)feat: add RTL support
fix:Patch (0.2.21 β†’ 0.2.22)fix: tooltip off-screen on mobile
docs:Nonedocs: update README examples
chore:Nonechore: update dependencies
refactor:Nonerefactor: simplify positioning logic
BREAKING CHANGE:Major (0.x β†’ 1.0.0)In commit body

Good commit examples:

git commit -m "feat: add keyboard navigation support" git commit -m "fix: welcome screen backdrop scrolls on mobile" git commit -m "docs: add SaaS onboarding example" git commit -m "chore: bump typescript to 5.4"

Breaking change:

git commit -m "feat: redesign theme API BREAKING CHANGE: removed className props, use customTheme instead"

πŸ” Submitting a Pull Request

1. Push Your Branch

git push origin feat/your-feature-name

2. Open a PR on GitHub

  • Target: main branch
  • Title: Follow conventional format β€” feat: add X or fix: resolve Y
  • Description template:
## What Changed - Brief description of changes ## Why - The problem this solves ## Testing - [ ] Builds successfully (`npm run build`) - [ ] Tested in a real project - [ ] TypeScript types updated if needed - [ ] README updated if needed Closes #123

3. Automated Checks

  • βœ… Build must pass
  • βœ… PR title must be conventional commit format
  • βœ… Changelog auto-generated on merge

🌱 First-Time Contributors

New to open source? You’re in the right place! πŸ’–

  • Look for good first issue labels
  • Comment on an issue: β€œI’d like to work on this!”
  • Ask questions β€” no judgment here πŸ™Œ

🎯 High Priority Areas

Things we’d love help with:

  • β™Ώ Accessibility β€” ARIA labels, keyboard navigation, screen reader support
  • πŸ“± Mobile β€” Better positioning on small screens
  • 🌍 i18n β€” Built-in language utilities
  • 🎨 Themes β€” More built-in theme presets
  • βœ… Tests β€” Unit and integration test coverage
  • πŸ“ Docs β€” Examples, guides, tutorials

πŸ› Reporting Bugs

Before opening an issue:

  1. Check existing issuesΒ 
  2. Test with the latest version

Bug report should include:

  • Library version (npm list @nfsfu234/tour-guide)
  • React version
  • Browser & OS
  • Minimal code example
  • Error messages / screenshots

πŸ’‘ Feature Requests

Open an issue with the enhancement label. Include:

  • What: The feature you want
  • Why: The problem it solves
  • How: Optional β€” your proposed implementation

πŸ“œ Code of Conduct

Be respectful, inclusive, and collaborative. We follow the Contributor CovenantΒ .


πŸ’› Thank You

Your contributions make nfsfu234-tour-guide better for developers worldwide.

Built with ❀️ by NFORSHIFU234 Dev  and contributors like you.

Last updated on