This page contains material for product managers, software engineers, and other experts implementing the iLEAP specifications.

📂 Implementing the iLEAP Tech Specs

iLEAP was conceived as an extension to the PACT protocol. Therefore, the PACT protocol needs to be implemented before iLEAP. The main references to guide the implementation are:

Further developer documentation can be found:

The diagram below helps you navigate this documentation and learn about the steps in Real World Testing, as an implementer (build) (boxes are clickable!):

graph TD
  Start{"Mode of <br> participation"}:::neutral --> |Build|PACT[Implement PACT]:::link
  Start --> |Buy|FindTool[Select Tool Provider]:::buyer
  subgraph Buy["Tester"]
  FindTool:::link --> EngagePartners["Engage with business <br> partners"]:::link
  EngagePartners:::buyer --> EndToEnd["Identify end-to-end <br> scenarios for testing"]:::link
  EndToEnd:::buyer 
  end
  subgraph Build["Implementer"]
	PACT:::impl --> iLEAP[Implement iLEAP]:::impl
	iLEAP:::link --> ACT([Pass ACT]):::impl
	ACT:::link -.-> PACT
	ACT --> InteropTest(["Perform successful <br> interoperability tests with <br> other implementers"]):::impl
	end
  InteropTest:::link  --> Partner["Engage with business <br> partners to prepare <br> Real World Testing <br> scenarios"]:::neutral
  EndToEnd --> Partner
  Partner ~~~ Contact(Need help? <br> Contact us):::help
  Contact:::link
  Partner:::link ---> Goal((("Exchange real world data"))):::goal

  click Partner,FindTool "<https://smartfreightcentre.sharepoint.com/:x:/g/EbeiNSxXvsJFmP3k-1Px1IIBcKEVQIR05KqFgeRjuEYObg?e=uGbQxd>" _blank
	click Contact "<https://sinefoundation.notion.site/iLEAP-Community-Guide-d036010d2c7547d99204ea87d79c060f#15a407933aab803aa536d3eff9647823>" _blank
	click PACT "<https://sinefoundation.notion.site/How-to-implement-iLEAP-15a407933aab8128bad4ceba5bbce5c8#15a407933aab81e9b709e243455218f2>" _blank
	click EngagePartners "<https://sinefoundation.notion.site/How-to-join-iLEAP-15a407933aab818da231f91dc2381f4b#15a407933aab81309657e5d23c719996>" _blank
	click EndToEnd "<https://sinefoundation.notion.site/How-to-join-iLEAP-15a407933aab818da231f91dc2381f4b#15a407933aab81309657e5d23c719996>" _blank
	click iLEAP "<https://sinefoundation.notion.site/How-to-implement-iLEAP-15a407933aab8128bad4ceba5bbce5c8#15a407933aab81e9b709e243455218f2>" _blank
	click ACT "<https://act.sine.dev>" _blank
	click InteropTest "<https://sinefoundation.notion.site/How-to-implement-iLEAP-15a407933aab8128bad4ceba5bbce5c8#15a407933aab81848587ea7e48b3a8b4>" _blank
	
	classDef neutral fill:beige
  classDef impl fill:orange
  classDef buyer fill:lightblue
  classDef goal fill:lightgreen
  classDef link text-decoration:underline  
  classDef help fill:pink
  

📖 Open Source Implementations

For both PACT and iLEAP, you can find open-source implementations online:

OpenSource PACT Tech Specs Implementations.

  1. Demo API implementation in Rust (with iLEAP support) by SINE
  2. PACT data model implementation in Rust by SINE
  3. Python-based implementation by the company Zero Twenty Fifty

iLEAP Tech Specs Implementation and Associated Technical Definitions

  1. iLEAP data model implementation in Rust by SINE
  2. JSON schema files by SINE
  3. SQL example by SINE

SINE’s demo API (with iLEAP support) is also accessible here.

✔️ Automated Conformance Testing

SINE developed ACT, an Automated Conformance Testing tool to simplify implementation efforts while helping to achieve conformance to the iLEAP Tech Specs and interoperability with other iLEAP implementations.

Please note that ACT is currently on its beta testing phase. There might be bugs and errors. All feedback is welcome!