Our mission is to build a new generation of rule engines suitable for various scenario requirements and to foster a vibrant component ecosystem, leading software development into a new paradigm of innovation.
Welcome to the rulego community! We are an open and inclusive team dedicated to advancing the technology of rule engines. We believe that with the power of the community, we can together realize this vision.
rulego
├── api
├── builtin
├── components
├── doc
├── endpoint
├── engine
├── examples
├── node_pool
├── test
├── testdata
├── utils
├── rulego.go
Directory | Description |
---|---|
api | Defines interfaces for components, nodes, and rule engines |
builtin | Built-in functions, slices, endpoint processors, etc. |
components | Node components, such as action, filter, converter, external components, sub-rule chain components, etc. |
doc | Project documentation and update logs |
endpoint | Input modules and components |
engine | Core implementation of the rule engine |
examples | Code examples and demonstrations |
node_pool | Shared node pool |
test | Testing tools and scripts |
testdata | Test datasets |
utils | Utility classes |
rulego.go | Engine initialization and execution entry point |
We are committed to providing an open and inclusive community environment. Please adhere to our [Code of Conduct] when participating in this project.
/assign @yourself
.Check Existing PRs: Search for related PRs in Github Pull Requests to avoid duplicate work.
Discuss Design: Discussing your design before submitting a PR can help ensure that your work meets the project's requirements.
Sign DCO: Ensure each commit is signed with DCO using git commit -s
.
Fork the Repository: Fork and clone the rulego/rulego repository on Github.
Create a Branch: git checkout -b my-feature-branch main
.
Write Code and Tests: Add your code and corresponding test cases.
Format Code: Format your code using the gofmt -s -w .
command.
Commit the code: Use git add .
and git commit -s -m "fix: add new feature"
to commit the changes.
feat
: Abbreviation for feature, a new functionality or enhancement.fix
: Bug fix.docs
: Documentation changes.style
: Formatting changes. For example, adjusting indentation, spaces, removing extra blank lines, or adding missing semicolons. In short, changes that do not affect the meaning or functionality of the code.refactor
: Code refactoring. Modifications that are neither bug fixes nor new feature additions.perf
: Abbreviation for performance, improvements to code performance.test
: Changes to test files.chore
: Other minor changes. Typically one or two lines of changes, or a series of small changes that belong to this category.For more detailed information, please refer to Conventional Commits.
Push the code: Before committing the code, please first perform a rebase operation to ensure that your branch is synchronized with the main branch of the upstream repository.
git fetch --all
git rebase upstream/main
git push origin my-fix-branch
Create a PR: Create a PR on Github and ensure you fill in a detailed PR description.
# Set GOPATH (customize the directory)
export GOPATH=$HOME/gocodez
export GOPROXY=https://goproxy.cn,direct
export GO111MODULE=on
export GONOSUMDB=*
export GOSUMDB=off
git clone git@github.com:<username>/rulego.git
cd rulego/examples/server/cmd/server
# Compile
go build .
# Or compile with extended components
go build -tags "with_extend,with_ai,with_ci,with_iot" .
For more details, refer to: server
./server -c ./config.config
Use the RuleGo-Editor 、RuleGo-Example or RuleGo-Server UI for testing.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )