Thank you for your interest in contributing to IssueVista! This document provides guidelines and instructions for contributing to this project.
Repository: https://github.com/VibeTensor/IssueVista
Live Demo: https://issuevista.vibetensor.com
IssueVista participates in Hacktoberfest! If you're contributing during Hacktoberfest, please see our Hacktoberfest Guide for specific information about:
- How to participate
- Issue labels and what they mean
- Quality guidelines for PRs
- What counts as spam
- Quick start guide
Looking for Hacktoberfest issues? Check issues labeled hacktoberfest or good first issue.
- Code of Conduct
- Getting Started
- Development Setup
- How to Contribute
- Pull Request Process
- Coding Guidelines
- Testing
- Reporting Bugs
- Feature Requests
This project follows a Code of Conduct that all contributors are expected to adhere to. Please be respectful and constructive in all interactions.
- Use welcoming and inclusive language
- Be respectful of differing viewpoints and experiences
- Gracefully accept constructive criticism
- Focus on what is best for the community
- Show empathy towards other community members
- Fork the repository on GitHub
- Clone your fork locally
- Create a new branch for your contribution
- Make your changes
- Push to your fork
- Submit a pull request
- Node.js 18 or higher
- npm or pnpm package manager
- Git
# Clone your fork
git clone https://github.com/YOUR_USERNAME/IssueVista.git
cd IssueVista
# Install dependencies
npm install
# Start development server
npm run devThe application will be available at http://localhost:4321
IssueVista/
├── src/
│ ├── components/ # Svelte components
│ ├── layouts/ # Astro layouts
│ ├── lib/ # Utility functions and API clients
│ ├── pages/ # Astro pages
│ └── env.d.ts # TypeScript definitions
├── public/ # Static assets
├── astro.config.mjs # Astro configuration
├── package.json # Dependencies and scripts
└── tsconfig.json # TypeScript configuration
We welcome various types of contributions:
- Bug fixes - Fix issues in the codebase
- Features - Add new functionality
- Documentation - Improve or add documentation
- Performance - Optimize existing code
- Accessibility - Improve accessibility
- Tests - Add or improve test coverage
- UI/UX - Enhance user interface and experience
- Check the Issues page
- Look for issues labeled
good first issueorhelp wanted - Comment on an issue to express interest before starting work
- Ask questions if anything is unclear
-
Create a branch
git checkout -b feature/your-feature-name # or git checkout -b fix/bug-description -
Make your changes
- Write clear, concise commit messages
- Follow the coding guidelines
- Add tests if applicable
- Update documentation as needed
-
Test your changes
npm run build npm run preview
-
Commit your changes
git add . git commit -m "Description of changes"
-
Push to your fork
git push origin feature/your-feature-name
-
Create a Pull Request
- Go to the original repository
- Click "New Pull Request"
- Select your fork and branch
- Fill in the PR template
- Submit for review
- Title: Use a clear, descriptive title
- Description: Explain what changes you made and why
- Screenshots: Include screenshots for UI changes
- Testing: Describe how you tested your changes
- Breaking Changes: Clearly document any breaking changes
- Issue Reference: Link to related issues using
Fixes #123orCloses #123
## Description
Brief description of changes
## Type of Change
- [ ] Bug fix
- [ ] New feature
- [ ] Breaking change
- [ ] Documentation update
## How Has This Been Tested?
Describe your testing process
## Screenshots (if applicable)
Add screenshots here
## Checklist
- [ ] My code follows the project's style guidelines
- [ ] I have performed a self-review of my code
- [ ] I have commented my code where necessary
- [ ] I have updated the documentation
- [ ] My changes generate no new warnings
- [ ] I have tested my changes locally- Use TypeScript for type safety
- Define proper interfaces and types
- Avoid using
anytype when possible - Use meaningful variable and function names
- Keep components small and focused
- Use reactive statements (
$:) appropriately - Follow Svelte best practices
- Use proper event handling
- Use UnoCSS utility classes
- Follow mobile-first responsive design
- Maintain consistent spacing and colors
- Use the existing design tokens
- Use 2 spaces for indentation
- Use single quotes for strings
- Add semicolons
- Use meaningful variable names
- Write self-documenting code
- Add comments for complex logic
// Good
interface GitHubIssue {
number: number;
title: string;
url: string;
}
function fetchIssues(owner: string, repo: string): Promise<GitHubIssue[]> {
// Implementation
}
// Avoid
function getData(a: any, b: any): any {
// Implementation
}Before submitting a PR, test your changes:
-
Build the project
npm run build
-
Preview production build
npm run preview
-
Test on different devices
- Desktop browsers (Chrome, Firefox, Safari)
- Mobile devices (iOS Safari, Chrome Mobile)
- Different screen sizes
-
Test key functionality
- Search for issues in various repositories
- Test with and without authentication
- Verify rate limit display
- Check help popup on mobile and desktop
- All new features work as expected
- No regression in existing features
- Mobile responsiveness
- Accessibility (keyboard navigation, screen readers)
- Error handling
- Edge cases
- Check if the bug has already been reported
- Verify the bug exists in the latest version
- Collect relevant information
## Bug Description
Clear description of the bug
## Steps to Reproduce
1. Go to '...'
2. Click on '...'
3. Scroll down to '...'
4. See error
## Expected Behavior
What you expected to happen
## Actual Behavior
What actually happened
## Screenshots
Add screenshots if applicable
## Environment
- OS: [e.g., Windows 11, macOS 14]
- Browser: [e.g., Chrome 120, Safari 17]
- Version: [e.g., 1.0.0]
## Additional Context
Any other relevant informationWe welcome feature requests! Please provide:
- Clear description of the feature
- Use case - Why is this feature needed?
- Proposed solution - How would it work?
- Alternatives - What alternatives have you considered?
- Additional context - Screenshots, mockups, examples
## Feature Description
Clear description of the feature
## Problem Statement
What problem does this solve?
## Proposed Solution
How should this feature work?
## Alternatives Considered
What other solutions did you consider?
## Additional Context
Mockups, examples, referencesIf you have questions:
- Check existing documentation (README.md, OAUTH_SETUP.md, DEPLOYMENT.md)
- Search existing issues and discussions
- Open a new issue with the
questionlabel - Be specific and provide context
By contributing to IssueVista, you agree that your contributions will be licensed under the MIT License.
IssueVista is developed and maintained by VibeTensor Private Limited, an Indian technology company.
- Company: VibeTensor Private Limited
- Location: India
- Contact: info@vibetensor.com
Contributors will be recognized in the project. Thank you for helping make IssueVista better!
Happy Contributing!