- Full Documentation: https://riddl.tech
- Coveralls Code Coverage Report: https://coveralls.io/github/ossuminc/riddl?branch=main
- SonarCloud Reports: https://sonarcloud.io/project/overview?id=ossuminc_riddl
RIDDL, the Reactive Interface to Domain Definition Language, is a specification lanugage and tooling to help capture requirements and specify designs for the class of systems that can be designed with DDD and utilize a distributed, reactive cloud native architecture.
RIDDL allows subject matter experts, business analysts, and system architects to work at a higher level of abstraction than they would if they were coding directly in a programming language. RIDDL aims to relieve developers of the burden of maintaining infrastructural code through evolution of the system abstractions.
- Introduction - answer the important initial questions
- Concepts - provides a conceptual understanding of RIDDL before diving into the details
- Guides - four guides for different kinds of RIDDL audiences.
- riddlc - various ways to obtain the RIDDL compiler
TBD
To use riddlc locally and be able to update it with new changes, use this approach:
git clone https://github.com/ossuminc/riddl.git- Change the directory to that cloned repository
- Put the full path to
riddl/riddlc/target/universal/stage/bindirectory in your PATH variable - Build the entire package with
sbt compile - Chane directory to the
riddlcsub-project - Run
sbt stageto build the program into theriddlc/target/universal/stage/bindirectory - To update, run
git pullfrom theriddlcloned repository and rerun thesbt stagecommand in theriddlcsub-project to rebuild.
This allows you to both make local changes and pull in changes from others to
keep your local copy of riddlc up to date.
To get the most recent options, run riddlc help. That command will give you
the syntax for doing various things with the riddl compiler (riddlc)
The riddlc compiler has two commands, info and version that just print
out information about the build, and the version number, respectively, and then exit.
Contributions are very welcome!
If you see an issue that you'd like to see fixed or want us to consider a change, the best way to make it happen is to help by submitting a pull request implementing it. We welcome contributions from all, even if you are unfamiliar with RIDDL. We will endeavor to guide you through the process once you've submitted your PR.
Please refer to the CONTRIBUTING.md file for more details about the workflow and general hints on preparing your pull request. You can also ask for clarifications or guidance on GitHub issues directly.
The RIDDL family of repositories is owned by Ossum, Inc., and they require the use of a CLA (Contributor License Agreement). You can sign at that link or be prompted to do so when you submit your first Pull Request.
The language directory contains two files that will improve the visual appeal of
RIDDL source code in your IntelliJ IDEA. To load them, follow the instructions below:
This will provide support for the .riddl file type which you should use for
your RIDDL files. This is provided in intellij-idea-riddl-file-type-settings.zip
- To load into IntelliJ:
- Select
File -> Manage IDE Settings -> Import Settings...from IntelliJ menu - Navigate to your cloned repository in the
languagefolder - Select
intellij-idea-riddl-file-type-settings.zip
- Select
Differentiating between keywords, readability words, definitions, punctuation, types, etc.
is supported through the use of color scheme settings in this file:
intellij-idea-riddl-colour-scheme-settings.jar. Note that using this colour scheme
requires overriding other themes as only 1 scheme can be used in IDEA at a time. You
can switch themes in the Settings under Editor --> Color Schemes
- To load into IntelliJ:
- Load the IntelliJ Settings dialog (
File -> Settingsor Settings gear on top right) - Navigate to the
Editor -> Color Schemesettings - Click the
Show Scheme Actionsgear icon to the right of the scheme selector - Choose
Import Scheme...from the pop up menu - Navigate to your cloned repository in the
languagefolder - Select
intellij-idea-riddl-colour-scheme-settings.jar
- Load the IntelliJ Settings dialog (