Skip to content

Latest commit

 

History

History
118 lines (93 loc) · 2.87 KB

File metadata and controls

118 lines (93 loc) · 2.87 KB

🤝 Contributing to DeepSearch AI

Thank you for your interest in contributing to DeepSearch AI! We welcome contributions from the community.

🚀 Getting Started

Prerequisites

  • Node.js (v16+)
  • npm or yarn
  • Git
  • Google Gemini API key

Development Setup

  1. Fork the repository
  2. Clone your fork: git clone https://github.com/yourusername/deepsearch-ai.git
  3. Install dependencies:
    cd deepsearch-ai
    cd backend && npm install
    cd ../frontend && npm install
  4. Set up environment variables (copy .env.example to .env)
  5. Start development servers:
    # Terminal 1: Backend
    cd backend && npm start
    
    # Terminal 2: Frontend
    cd frontend && npm run dev

📋 Contribution Guidelines

Code Style

  • Use consistent indentation (2 spaces)
  • Follow existing naming conventions
  • Add comments for complex logic
  • Use meaningful variable and function names

Commit Messages

  • Use clear, descriptive commit messages
  • Start with a verb (Add, Fix, Update, Remove)
  • Keep the first line under 50 characters
  • Add detailed description if needed

Example:

Add caching support for search results

- Implement universal cache service
- Support memory, file, and Redis backends
- Add cache configuration options
- Include performance tests

Pull Request Process

  1. Create a feature branch: git checkout -b feature/your-feature-name
  2. Make your changes and test thoroughly
  3. Update documentation if needed
  4. Ensure all tests pass
  5. Submit a pull request with a clear description

Testing

  • Test your changes manually
  • Run existing tests: npm test (when available)
  • Add tests for new features
  • Verify the application works end-to-end

🐛 Bug Reports

When reporting bugs, please include:

  • Clear description of the issue
  • Steps to reproduce
  • Expected vs actual behavior
  • System information (OS, Node.js version, etc.)
  • Screenshots if applicable
  • Error logs or console output

💡 Feature Requests

For feature requests:

  • Describe the feature clearly
  • Explain the use case and benefits
  • Consider implementation complexity
  • Check if similar features exist

🔍 Areas for Contribution

High Priority

  • Unit and integration tests
  • Performance optimizations
  • Error handling improvements
  • Documentation updates

Medium Priority

  • UI/UX enhancements
  • Additional search engines
  • Mobile responsiveness
  • Accessibility improvements

Low Priority

  • Advanced AI features
  • Multi-language support
  • Theme customization
  • Analytics integration

📞 Getting Help

  • Check existing issues and discussions
  • Ask questions in GitHub Discussions
  • Join our Discord server (if available)
  • Email the maintainers

📄 License

By contributing, you agree that your contributions will be licensed under the MIT License.

Thank you for contributing to DeepSearch AI! 🎉