Contributing #
Before you start, please fork this repository, clone it locally, and set up your Go development environment.
Here are some guidelines and suggestions for contributing code. You don’t have to strictly follow them, but they help speed up review and merging:
- Open an issue before adding new features, so we can discuss design and implementation details and avoid work that doesn’t fit the project design.
- Use modern development tools, format your code before committing, and keep the style consistent.
- Use Conventional Commits, and avoid vague or overly simple commit messages.
Contributing New Storage Backend #
- Add the new storage backend type in
pkg/enums/storage/storages.goand run code generation. - Define the storage backend configuration in the
config/storagedirectory and add it toconfig/storage/factory.go. - Create a new package in the
storagedirectory, implement the storage backend, and import it instorage/storage.go. - Update the documentation to include configuration details for the new storage backend.
Contributing New Parsers #
You can either implement native parsers in Go (recommended), or write JavaScript-based parser plugins.
If you use Go:
- Create a new package under the
parsersdirectory and implement the parser logic. - Register the parser in the
initfunction inparsers/parser.go.
If you use JavaScript:
- Refer to
plugins/example_parser_basic.jsas an example. - Create a new
.jsfile in thepluginsdirectory and implement your parsing logic there.
Note: Parsers under the plugins directory are not embedded into the binary by default. Users must download them manually and place them in the configured plugin directories to enable them.