Skip to content

Schemarise/demo-alfa-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Built using ALFA

ALFA Sample Project

This Repository contains an example ALFA project showcasing some ALFA data modelling features - entity, trait, service, library, testcase definitions.

It demonstrates features of that can be used to clearly capture data models, APIs, validations, calculation rules and testcases. For more information see www.schemarise.com/products or the ALFA Language Guide. Alongside the model, there are few sample Java and Python projects showing how the models can be used in various usecases and technologies.

This project can be used directly from the browser using github/gitpod integration with ALFA toolset. You can login to gitpod using your github/bitbucket/gitlab account.

Click the button below to open the project in your browser.

Or

Open this project directly in Github Codespaces.

Tip: Have a look at the Quick Tour below first, then right-click on the Gitpod button and open in new tab/window or in GitHub Codespaces.

Want to see complex example models visualized in ALFA?

See https://schemarise.github.io/alfa-sample-models-doc

Quick Tour

ALFA Model files

  • Once opened in gitpod, on the left Explorer Panel, click on the model directory and browse the *.alfa files.
  • The model files are actively validated. For example try changing string to stringx or Person to Personx.
  • Navigate around the model by pressing Control (or Command on Mac) and clicking a user-defined-type, such as Person.

ALFA IDE

Model live-documentation

  • Right-click on any ALFA file and select Open ALFA Studio which will open a new Browser with web-based ALFA Studio Console.
  • Click on View Documentation.
  • You can navigate around the documentation UML diagram or links. Documentation from model is incorporated into the HTML page.
  • Changes to the ALFA files are reflected in HTML when the browser page is refreshed.
  • View a live ALFA Documentation site https://alfa-demo.github.io/position-model-docs/index.html

ALFA DOCS

  • Transform definition rendered as part of ALFA Documentation showing source to target field paths.

ALFA DOCS

Code Examples

The projects directory includes examples in Java, Scala and Python. Typically model files may reside in a project of their own which will then be used as a dependency from Java or Python projects. However for the purpose of having fully self-contained example project, these are conbined in sub-directories within this project.

  1. Java/Scala samples - 4 sample projects showing ALFA being used in different usecases.
  2. Python samples - Coming soon

For any questions, please email info@schemarise.com.