We welcome contributions to the SVECTOR SDK! This document provides guidelines for contributing to the project.
-
Clone the repository:
git clone https://github.com/SVECTOR-CORPORATION/svector-node.git cd svector-sdk -
Install dependencies:
npm install
-
Build the project:
npm run build
-
Run examples:
# Set your API key export SVECTOR_API_KEY="your-api-key-here" # Run examples npm run examples
svector-sdk/
├── src/
│ ├── index.ts # Main exports
│ ├── client.ts # Main SVECTOR client
│ ├── types.ts # TypeScript type definitions
│ ├── errors.ts # Custom error classes
│ ├── utils.ts # Utility functions
│ └── api/ # API endpoint implementations
│ ├── chat.ts # Chat completions
│ ├── files.ts # File uploads
│ ├── knowledge.ts # Knowledge collections
│ └── models.ts # Model listing
├── examples/ # Usage examples
├── dist/ # Compiled output
├── README.md # Project documentation
├── package.json # Package configuration
└── tsconfig.json # TypeScript configuration
- Use TypeScript for all source code
- Follow existing code style and conventions
- Use descriptive variable and function names
- Add JSDoc comments for public APIs
- Keep functions focused and single-purpose
- API Endpoints: Add new endpoint implementations in
src/api/ - Types: Update
src/types.tswith new interface definitions - Errors: Add new error types in
src/errors.tsif needed - Examples: Create usage examples in
examples/ - Documentation: Update README.md with new features
While we're working on a comprehensive test suite, please manually test your changes:
- Build the project:
npm run build - Test with real API calls using your SVECTOR API key
- Verify TypeScript types compile correctly:
npm run type-check
- Fork the repository and create your feature branch from
main - Make your changes following the code style guidelines
- Test your changes thoroughly
- Update documentation if you're adding new features
- Submit a pull request with a clear title and description
- Keep changes focused and atomic
- Write clear commit messages
- Include relevant examples if adding new features
- Update README.md if needed
- Ensure TypeScript types are correct
When reporting issues, please include:
- SVECTOR SDK version
- Node.js version (if applicable)
- Browser version (if applicable)
- Minimal code example that reproduces the issue
- Error messages and stack traces
We welcome feature requests! Please:
- Check if the feature already exists
- Describe the use case clearly
- Provide examples of how it would be used
- Consider backwards compatibility
We follow semantic versioning and strive to maintain backwards compatibility:
- Major versions: Breaking changes
- Minor versions: New features, backwards compatible
- Patch versions: Bug fixes, backwards compatible
Please be respectful and professional in all interactions. We're building an inclusive community around SVECTOR's AI tools.
If you have questions about contributing:
- Open an issue for general questions
- Email us at: support@svector.co.in
- Check our documentation: https://platform.svector.co.in
Thank you for contributing to SVECTOR SDK! 🚀