Skip to content

Latest commit

 

History

History
81 lines (56 loc) · 2.45 KB

File metadata and controls

81 lines (56 loc) · 2.45 KB

Contributing

Thank you for your interest in contributing to CFX Developer Tools.

How to contribute

Reporting issues

Open a GitHub issue with:

  • A clear description of the problem
  • Steps to reproduce (if applicable)
  • Expected vs actual behavior
  • Your environment (OS, Cursor version, Python version)

Suggesting features

Open a GitHub issue with the "feature request" label. Describe:

  • What you want the plugin to do
  • Why it would be useful
  • Any examples or references

Submitting changes

  1. Fork the repository
  2. Create a feature branch from main
  3. Make your changes
  4. Test your changes in Cursor
  5. Submit a pull request

What to contribute

Templates

Add new resource templates for additional frameworks or use cases:

  • Place them in templates/your-template-name/
  • Include a complete fxmanifest.lua
  • Include working client and server scripts
  • Follow existing template conventions

Snippets

Add code patterns for common tasks:

  • Place them in the correct language folder under snippets/
  • Include a header comment explaining what the snippet does and when to use it
  • Keep snippets focused on a single pattern

Native data

The native databases (mcp-server/data/natives_gta5.json, natives_rdr3.json) are auto-generated by a weekly CI workflow that fetches from runtime.fivem.net/doc/. Do not edit them manually.

To improve the native transformation logic:

  • Edit .github/scripts/transform_natives.py
  • Changes to side classification, description parsing, or schema mapping go there
  • You can trigger a manual update via gh workflow run update-natives.yml

Events data

Help expand the event reference database:

  • mcp-server/data/events.json
  • Follow the existing JSON structure: name, side, description, params, game
  • Include accurate side (client/server/shared) and parameter lists

Documentation

Improve or expand documentation:

  • Fix typos or unclear explanations
  • Add examples
  • Update outdated information

Documentation changes auto-deploy to the docs site when merged to main.

Code style

  • No em dashes anywhere - use hyphens or rewrite the sentence
  • No hardcoded credentials, tokens, or passwords
  • Follow existing file naming conventions
  • Keep fxmanifest.lua syntax consistent with the fxmanifest-standards rule

License

By contributing, you agree that your contributions will be licensed under the project's CC-BY-NC-ND-4.0 license.