8000
Skip to content

yetone/avante.nvim-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
8000
 
 

Repository files navigation

Contributing

We welcome contributions to avante.nvim! This guide will help you get started with contributing to the project.

How to Contribute

Reporting Issues

If you encounter a bug or have a feature request:

  1. Check existing issues first to avoid duplicates
  2. Use the appropriate issue template
  3. Provide detailed information including:
    • Neovim version
    • Plugin version
    • Operating system
    • Reproduction steps
    • Expected vs actual behavior
    • Error messages (if any)

Submitting Pull Requests

Before submitting a pull request:

  1. Fork the repository
  2. Create a feature branch from main
  3. Make your changes following the coding standards
  4. Test thoroughly on multiple scenarios
  5. Write clear commit messages
  6. Update documentation if needed
  7. Submit the pull request

Development Setup

  1. Clone the repository:

    git clone https://github.com/yetone/avante.nvim.git
    cd avante.nvim
  2. Install dependencies:

    # For Rust components
    cargo build
    
    # For Lua components
    make deps
  3. Build the project:

    make

Testing

Before submitting changes:

  1. Test in different environments:

    • Different Neovim versions (0.10.1+)
    • Different operating systems
    • Different AI providers
  2. Test key functionality:

    • Basic ask/chat functionality
    • File selection and context
    • Provider switching
    • Key bindings
    • Integration with other plugins
  3. Run automated tests (if available):

    make test

Coding Standards

Lua Code

  • Use 2 spaces for indentation
  • Follow LuaLS conventions
  • Use meaningful variable names
  • Add comments for complex logic
  • Follow the existing code style

Rust Code

  • Use cargo fmt for formatting
  • Use cargo clippy for linting
  • Follow Rust conventions
  • Add documentation comments

Documentation

  • Update relevant documentation for new features
  • Use clear and concise language
  • Provide examples where helpful
  • Follow the existing documentation structure

Community Guidelines

Code of Conduct

  • Be respectful and inclusive
  • Help others learn and grow
  • Focus on constructive feedback
  • Respect different perspectives and experiences

Communication

  • GitHub Issues: For bug reports and feature requests
  • GitHub Discussions: For general questions and discussions
  • Discord: For real-time chat and community support
  • Pull Requests: For code contributions

Development Areas

Areas Where We Need Help

  1. Provider Support:

    • Adding new AI providers
    • Improving existing provider integrations
    • Testing provider configurations
  2. Plugin Integrations:

    • Adding support for more Neovim plugins
    • Improving existing integrations
    • Creating extension examples
  3. Documentation:

    • Improving existing documentation
    • Adding more examples
    • Creating video tutorials
  4. Testing:

    • Writing automated tests
    • Manual testing on different platforms
    • Performance testing
  5. UI/UX Improvements:

    • Enhancing the sidebar interface
    • Improving visual feedback
    • Better error handling
  6. Performance:

    • Optimizing response times
    • Reducing memory usage
    • Improving startup time

Roadmap

Current Focus Areas

  • Enhanced AI Interactions: Improve the depth of AI analysis and recommendations
  • LSP + Tree-sitter + LLM Integration: More accurate code suggestions and analysis
  • Better codebase indexing: Improved context understanding
  • Advanced tool integrations: More powerful built-in tools

TODOs

  • Chat with current file
  • Apply diff patch
  • Chat with the selected block
  • Slash commands
  • Edit the selected block
  • Smart Tab (Cursor Flow)
  • Chat with project (@codebase)
  • Chat with selected files
  • Tool use
  • MCP integration
  • Better codebase indexing
  • Enhanced AI interactions
  • LSP + Tree-sitter + LLM integration

Sponsorship

If you like this project, please consider supporting the maintainer:

Sponsor on Patreon

Business Sponsors

Meshy AI
Meshy AI
 
The #1 AI 3D Model Generator for Creators
BabelTower API
BabelTower API
 
No account needed, use any model instantly

Acknowledgments

We would like to express our heartfelt gratitude to the contributors of the following open-source projects, whose code has provided invaluable inspiration and reference for the development of avante.nvim:

Project License Functionality Location
git-conflict.nvim No License Diff comparison functionality lua/avante/diff.lua
ChatGPT.nvim Apache 2.0 License Calculation of tokens count lua/avante/utils/tokens.lua
img-clip.nvim MIT License Clipboard image support lua/avante/clipboard.lua
copilot.lua MIT License Copilot support lua/avante/providers/copilot.lua
jinja.vim MIT License Template filetype support syntax/jinja.vim
codecompanion.nvim MIT License Secrets logic support lua/avante/providers/init.lua
aider Apache 2.0 License Planning mode user prompt lua/avante/templates/planning.avanterules

The high quality and ingenuity of these projects' source code have been immensely beneficial throughout our development process. We extend our sincere thanks and respect to the authors and contributors of these projects.

Resources

Documentation

Community

Related Projects

License

avante.nvim is licensed under the Apache 2.0 License. By contributing to this project, you agree that your contributions will be licensed under the same license.

Apache 2.0 License Summary

  • Commercial use: ✅ Allowed
  • Modification: ✅ Allowed
  • Distribution: ✅ Allowed
  • Patent use: ✅ Allowed
  • Private use: ✅ Allowed
  • Liability: ❌ Not provided
  • Warranty: ❌ Not provided

For the full license text, see the LICENSE file.

Star History

The project has been growing steadily with contributions from the community. You can view the star history on GitHub.

Getting Help

For Contributors

  • Questions about contributing: Open a GitHub Discussion
  • Technical issues: Open a GitHub Issue
  • Real-time chat: Join our Discord server
  • Documentation: Check the Wiki

For Users

Thank you for considering contributing to avante.nvim! Every contribution, no matter how small, helps make the project better for everyone.

About

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

0