- Add config.lua for comprehensive configuration options (transparent, italic_comments, bold_keywords, bold_functions, bold_types, terminal_colors) - Add highlights.lua with 500+ highlight groups for 30+ plugins (Telescope, NvimTree, Neo-tree, GitSigns, nvim-cmp, Lazy.nvim, Mason, etc.) - Add colors/ directory for :colorscheme command support - Add terminal colors (16-color palette for :terminal) - Add test suite (test/test_colors.lua) - Add development tools (selene.toml, stylua.toml, vim.toml) - Add CHANGELOG.md following Keep a Changelog format - Fix colors.lua not being used by init.lua - Fix setup(opts) not applying configuration options - Fix README referencing non-existent files - Update documentation with accurate file structure and API docs
4.4 KiB
Contributing to CargDev-Cyberpunk.nvim
Thank you for your interest in contributing to CargDev-Cyberpunk.nvim! This document provides guidelines for contributing to the project.
Getting Started
Prerequisites
- Neovim 0.8.0 or higher
- Git
- A GitHub account
Fork and Clone
- Fork the repository on GitHub
- Clone your fork locally:
git clone https://github.com/YOUR_USERNAME/cargdev-cyberpunk.nvim.git cd cargdev-cyberpunk.nvim
Development Setup
Local Development
-
Create a new branch for your changes:
git checkout -b feature/your-feature-name -
Make your changes to the codebase
-
Test your changes:
# Test the color scheme in Neovim nvim --headless -c "lua dofile('test/test_colors.lua')"
Testing Your Changes
-
Open Neovim with your local version:
nvim -u NONE -c "set runtimepath+=/path/to/your/cargdev-cyberpunk.nvim" -
Test with different file types:
nvim examples/sample.ts -
Verify the colors are applied correctly
Making Changes
Code Style Guidelines
- Follow Lua best practices
- Use consistent indentation (2 spaces)
- Keep functions focused and concise
- Add comments for complex logic
- Maintain the cyberpunk aesthetic in color choices
File Structure
lua/cargdev-cyberpunk/
├── init.lua # Main plugin entry point
├── colors.lua # Color palette definitions
├── config.lua # Configuration management
├── highlights.lua # Highlight group definitions
└── plugin.lua # Plugin metadata
colors/
└── cargdev-cyberpunk.lua # Colorscheme command file
test/
└── test_colors.lua # Test suite
Color Guidelines
When adding new colors or modifying existing ones:
- Maintain high contrast for readability
- Use vibrant, neon colors that fit the cyberpunk theme
- Test colors in different lighting conditions
- Ensure accessibility standards are met
Submitting Your Changes
Commit Guidelines
-
Make atomic commits (one logical change per commit)
-
Use clear, descriptive commit messages
-
Follow conventional commit format:
type(scope): description [optional body] [optional footer]Examples:
feat(colors): add new neon purple for decoratorsfix(highlights): correct function highlighting in TypeScriptdocs(readme): update installation instructions
Pull Request Process
-
One Change Per PR: Each pull request should contain only one logical change or feature
-
Update Documentation: If your change affects user experience, update the README.md
-
Test Thoroughly: Ensure your changes work across different file types and Neovim configurations
-
Create Pull Request:
- Go to your fork on GitHub
- Click "New Pull Request"
- Select the
masterbranch as the base - Provide a clear title and description
Pull Request Template
## Description
Brief description of the changes made.
## Type of Change
- [ ] Bug fix
- [ ] New feature
- [ ] Documentation update
- [ ] Code refactoring
## Testing
- [ ] Tested with TypeScript files
- [ ] Tested with other file types
- [ ] Verified colors are applied correctly
- [ ] No breaking changes introduced
## Screenshots (if applicable)
Add screenshots showing the visual changes.
## Checklist
- [ ] My code follows the project's style guidelines
- [ ] I have tested my changes thoroughly
- [ ] I have updated documentation if needed
- [ ] My changes generate no new warnings
- [ ] I have added tests if applicable
Review Process
- Code Review: All PRs will be reviewed by maintainers
- Testing: Changes will be tested in different environments
- Feedback: You may be asked to make adjustments
- Merge: Once approved, your PR will be merged to master
Getting Help
If you need help or have questions:
- Check existing issues and discussions
- Create a new issue with detailed information
- Join the project discussions
Code of Conduct
- Be respectful and inclusive
- Focus on constructive feedback
- Help others learn and grow
- Follow the project's coding standards
License
By contributing to this project, you agree that your contributions will be licensed under the MIT License.
Thank you for contributing to CargDev-Cyberpunk.nvim! Your help makes the project better for everyone.