Core

  • RAML Spec

    Developed by the RAML workgroup

    View on GithubView as HTML

    The RESTful API Modeling Language (RAML) is a concise, expressive language for describing RESTful APIs. Built on broadly used standards such as YAML and JSON, RAML is a non-proprietary, vendor-neutral open spec.

  • RAML JavaScript Parser

    Contributed to the RAML workgroup by Mulesoft

    License: Apache 2

    Stable

    View on Github

    A reference implementation of a RAML parser for JavaScript. The parser is based on PyYAML, written in CoffeeScript, and can be used as a node.js module or in-browser. Compliant with RAML 0.8.

  • RAML Java Parser

    Contributed to the RAML workgroup by Mulesoft

    License: Apache 2

    Stable

    View on Github

    A reference implementation of a RAML parser for Java. The parser is based on SnakeYAML, and written in Java. It can be added as a Java library either into a project directly or through Apache Maven. Compliant with RAML 0.8.

  • RAML Parser for .NET

    Contributed to the RAML workgroup by Mulesoft

    License: Apache 2

    Stable

    View on Github

    A RAML Parser implementation in .NET for all CLR languages. The parser is implemented as a strongly-typed wrapper around the JavaScript parser, leveraging Edge.js as a Node.js host. Reuse of the battle-hardended JavaScript parser provides a robust and high-performance parser with a simple and natural .NET object model.

    Steps to try it out
    1. Install the RAML parser into your .NET project directly from nuget

      PM> Install-Package raml-dotnet-parser

    2. Search for keyword RAML

    3. Or browse the code at the project's Github repository

  • pyraml-parser

    Developed by an2deg

    License: MIT

    Stable

    View on Github

    A reference implementation of a RAML parser for Python. It's based on PyYAML and written in Python. Compliant with RAML 0.8.

  • RAML Ruby

    Developed by kgorin @ coub

    License: MIT

    Stable

    View on Github

    A reference implementation of a RAML parser in Ruby. It uses Psych YAML parser and is written in Ruby. Compliant with RAML 0.8.

  • PHP RAML Parser

    Developed by alecsammon

    License: MIT

    Early Release

    View on Github

    A reference implementation of a RAML parser in PHP. Compliant with RAML 0.8.

  • API Designer

    Developed by MuleSoft

    License: CPAL-1.0

    Stable

    View on Github

    API Designer is a web-based API development tool that allows API providers to design their API quickly, efficiently, and consistently, and socialize the design. It consists of a RAML editor side-by-side with an embedded RAML console (the API Console).

    Steps to try it out
    1. Go to Anypoint Platform

    2. Log in (or Sign Up if you don't have an account yet)

    3. Add an API

    4. Under RAML Definition, click "Define API in API Designer"

  • API Console

    Developed by MuleSoft

    License: CPAL-1.0

    Stable

    View on Github

    API Console is a graphical user interface for a RAML-defined API that visually exposes the API’s structure and important patterns and serves as interactive API documentation.

    See RAML in action through API Console on these developer portals:
  • API Notebook

    Developed by MuleSoft

    License: CPAL-1.0

    Stable

    View on GithubTry it out

    API Notebook is a web-based, persistent, JavaScript scripting workspace that enables live testing and exploring of APIs, and saving API use cases as markdown gists, so they are versioned, forkable and shareable. It's an example of literate programming.

  • RAML Tools for .NET

    Developed by MuleSoft

    License: CPAL-1.0

    Early Release

    View on Github

    RAML Tools for .NET allows developers to easily integrate and consume APIs that expose a RAML definition, or create a new ASP.NET Web API implementation using a contract-first approach from a previously created RAML definition. A single tools package provides support for both client and service code-generation scenarios. The tools are provided as a Visual Studio extension, allowing simple and natural integration of RAML into a normal development workflow.

    Steps to try it out
    1. Install directly from the Visual Studio extension gallery (Tools menu -> Extensions and Updates)

    2. Search for keyword RAML

    3. Samples and source code are available here

  • SoapUI RAML Plugin

    Developed by SmartBear / Ole Lensmar

    License: Apache 2

    Stable

    View on GithubTry it out

    SoapUI is a very popular functional testing tool, broadly used for testing any HTTP APIs including both SOAP and REST, as well as JMS, AMF, and JDBC. The RAML plugin for SoapUI allows the importing of RAML APIs into SoapUI for testing.

  • APIkit 1.0

    Developed by MuleSoft

    License: CPAL-1.0

    Stable

    View on GithubTry it out

    APIkit is a declarative toolkit that leverages RAML to facilitate the implementation of APIs. It uses RAML as the definition of the API, which can then be used with APIkit Maven- and Mule Studio-based tools for mocking the interface and implementing its backend using Mule flows.

  • RAML Store

    Developed by brianmc

    License: Apache 2

    Stable

    View on Github

    RAML Store provides a simple storage API plus a persistence plugin which enables you to run the RAML API Designer locally (rather than using a cloud service) and still be able to manage and collaborate on your design. The service is built with node.js, using express and mongodb.

  • RAML for JAX-RS

    Developed by MuleSoft

    License: Apache 2

    Early Release

    View on Github

    The goal of RAML for JAX-RS is to provide a set of tools to work with these technologies in a way of being able to scaffold a JAVA + JAX-RS application based on an existing RAML API definition (Code Generation), or its roundtrip, generate the RAML API definition based on an existing JAVA + JAX-RS application (Documentation).

  • RAML Sublime Plugin

    Developed by MuleSoft

    License: Apache 2

    Stable

    View on Github

    RAML Sublime Plugin is a syntax highlighter for Sublime (the popular text editor).

  • RAML to HTML

    Developed by kevinrenskers

    License: MIT

    Stable

    View on Github

    RAML to HTML is a documentation tool that outputs a single HTML page console based on a RAML definition. It's written in NodeJS and it can be executed as a command line.

  • ATOM RAML package

    Developed by n4ch03

    License: MIT

    Early Release

    View on Github

    ATOM RAML Package is a plugin (package) for ATOM (Github's text editor) that helps the user to write RAML specs by providing highlighting capabilities and snippets autocompletion.

  • GULP RAML plugin

    Developed by JohanObrink

    License: MIT

    Early Release

    View on Github

    GULP RAML Plugin is a GULP based add-on that allows to parse and validate a RAML definition as a GULP Task. It's based on the JavaScript RAML Parser.

  • Osprey

    Developed by MuleSoft

    License: Apache 2

    Early Release

    View on Github

    Osprey is a JavaScript framework for rapidly building applications that expose RAML APIs. It’s based on Node and Express.

  • RAMLang

    Developed by alexios3d

    License: MIT

    Early Release

    View on Github

    RAMLang is a simple, easy-to-use command line tool. It's main goal is to provide AngularJS services to help communicate with RESTful API's.

  • swagger2raml

    Developed by rucek

    License: Apache 2

    Early Release

    View on Github

    Swagger2RAML is an utility to generate RAML documentation from Swagger JSON.

  • RAML 2 HTML for PHP

    Developed by mikestowe

    License: MIT

    Stable

    View on Github

    RAML 2 HTML for PHP is a simple application that makes use of multiple templates to allow you to build and customize your API Docs using RAML.

  • JAXRS-to-RAML

    Developed by MuleSoft

    License: Apache 2 & EPL

    Early Release

    View on Github

    The goal of JAXRS-to-RAML is to provide a full featured and easy to use tool to generate a RAML API definition from an existing JAXRS-annotated Java code. It's based on analyzing the existing code annotations.

  • gulp-RAML2HTML

    Developed by walling

    License: MIT

    Stable

    View on Github

    A simple gulp plugin to automate the process of generating HTML documentation based on a RAML API.

  • RAML Cop

    Developed by thebinarypenguin

    License: MIT

    Early Release

    View on Github

    A command line tool for validating RAML files. It uses raml-org/raml-js-parser for parsing, and can optionally output the parsed RAML as JSON.

  • Abao

    Developed by cybertk

    License: SATA

    Stable

    View on Github

    Abao is a command-line tool for testing API documentation written in RAML format against its backend implementation.

  • Nobel

    Developed by nohorbee

    License: Apache 2

    Early Version

    View on Github

    Nobel (code-generator) creates a REST API for your Arduino board, based on a RAML definition.

  • RAML2Wiki

    Developed by jhitchcock

    License: MIT

    Stable

    View on Github

    A simple RAML to Wiki (Confluence / JIRA Markup) documentation generator, written for Node.js.

  • RAML Client Generator

    Developed by MuleSoft

    License: Apache 2

    Early Release

    View on Github

    Template-driven generator of clients for APIs described by RAML.

  • Restlet Studio

    Developed by Restlet

    License: © 2014 Restlet, Inc. - All rights reserved

    Stable

    Try it out

    Restlet Studio is a lightweight web-based development environment that accelerates the design of APIs.

  • RAMSES

    Developed by Brandicted

    License: Apache 2

    Early Release

    View on GithubView as HTML

    RAML + Elasticsearch + Pyramid = REST API. Ramses is a library that generates a RESTful API using RAML. It uses Pyramid and Nefertari which provides ElasticSearch-powered views.

  • RAML Linter

    Developed by Quicken Loans

    License: Copyright (C) 2015 Quicken Loans

    Early Release

    View on Github

    RAML Linter is a static analysis, linter-like, utility that will enforce rules on a given RAML document, ensuring consistency and quality.

  • raml-server

    Developed by Franco Arolfo

    License: MIT

    Early Release

    View on Github

    RAML Server exposes a full fake REST API with zero coding by writing a RAML spec.

  • express-raml-store

    Developed by Valerio Coltrè

    License: MIT

    Early Release

    View on Github

    This project makes the api-designer work with a persistence layer to a specified directory, so the users can code into the designer and output into filesystem (and version control!).

  • Vigia

    Developed by nogates

    License: MIT

    Early Release

    View on Github

    Vigia is a adaptable API integration test suite which supports test generation based on a RAML definition file.

  • ramltomd

    Developed by Diego Gurgel

    Early Release

    View on Github

    A RAML to markdown converter made in modejs.

  • LocalAPI

    Developed by IsaaCloud

    Early Release

    View on Github

    LocalAPI is application based on Node.js library and allows for running a fully functional API on the basis of definitions included in a raml file. The application also generates dummy data json files from templates and serve them as a response body in API module.

  • Ruby RamlParser

    Developed by ePages

    License: MIT

    Early Release

    View on Github

    A Ruby based parser for the RAML API modeling language.

  • raml2html PHP

    Developed by LeanLabs

    Early Release

    View on Github

    raml2html documentation generator based on PHP

  • API Science

    Developed by API Science

    Stable

    API Science is a cloud-based API performance and availability monitoring service. The API Science RAML importer allows rapid creation of intelligent API monitors based on RAML specifications.

  • Contact us at info@raml.org to add your RAML projects to this list.

    Check out more RAML projects on Github

Take a look at how others are using RAML

  • Open Ag Data Alliance

    The Open Ag Data Alliance (OADA) is an open project designed to bring interoperability, security, and privacy to agricultural data. OADA decided to create an API to enable interoperability between the many precision ag software systems and existing industry data types. OADA has chosen RAML for describing their API and "to improve the readability of the specification it is rendered into HTML by raml2html".

    You can check the work at their GitHub repository.

    By providing an extensible API that focuses on information exchange and facilitates data transformations, an open heterogeneous environment that supports many legacy, current, and future data formats can be embraced.

  • NZ Post

    New Zealand Post delivers more than 800 million pieces of mail and processes over 21 million financial transactions per year, providing additional courier solutions nationwide. The team started their RAML project with a goal of transforming their traditional enterprise with dozens of complex and disparate integration endpoints into a more open ecosystem.

    NZ Post selected RAML in order to more fully:

    • support ideation and rapid prototyping of new products and services with minimal API implementation overhead
    • enable design-led API architecture
    • promote API-first (and therefore mobile-first) design and distribution through the platform

    By centralizing the management of our API products and services and exposing them through a common interface, NZ Post has a secure integration platform that enables us to design, publish and manage APIs in a format our customers can easily access and consume.

    We have been able to develop a design-led methodology across the enterprise, with a high degree of confidence.

    We are now able to engage our customers in an API design process when innovating/designing new API products and when extending the functionality of existing API products.

    We enable customers (developers) to build applications/mobile apps to rapidly prototype and provide feedback before any significant implementation costs are incurred.

  • CHOCOLABS

    CHOCOLABS is one of Taiwan's largest application publishers with over 50 entertainment focused apps under their belt. The company is only three years old, but their motto is to "App your Life" across all major platforms (Android and iOS).

    The team started using RAML when they realized early on that only an API-first mindset would help them successfully scale their product vision and strategy. Their most popular apps are media aggregators, which let end-users quickly search and compile a library of videos of their favorite artists from sources like YouTube for example. As a result, CHOCOLABS needed their apps to be built so that they could quickly and accurately retrieve, reference and compile hundreds or thousands of individual media files across various sources while, being stable enough to support consumption by hundreds of thousands of users.

    Chocolabs selected RAML in order to more fully:

    • enable their API-first software development strategy
    • scale the use and re-use of their custom-built APIs across various products in their portfolio
    • collaborate more efficiently across product management, engineering, third party collaborators, and partners with intuitive user and role management

    There are many advantages to taking an api-first development approach. API is not a new term - in the past we used web services, and had to follow complicated protocols like SOAP to communicate with our backend servers. But now, with our custom built APIs, we can tap into any internet resource like text, images, videos - you name it - by simply evoking, and pulling their corresponding URL. APIs have also evolved, and with the help of tools like RAML, have become more elastic and easier to use.

    Jerry WengCo-founderCHOCOLABS
  • Zerigo

    Developed to streamline and simplify virtual resource use and administration, Zerigo is a suite of applications communicating via RESTful APIs.

    From Lance Johnson, Dir. Engineering, Cloud R&D of 8x8, Inc:

    Our iterations over these APIs have been via emails and comments on github issues. We needed a better way to hone in on what the APIs looked like and at the same time iterate over changes to them. Additionally we felt the necessity of a uniform way of collaborating on the APIs regardless of language where the API resided.

    We are just getting started with integrating RAML into our processes but we are excited about the prospects, specifically in regard to the following use cases:

    • The opportunity to provide a single medium for API collaboration and documentation.
    • We love git and GitHub, but commenting on issues is not the best way to collaborate with APIs, especially when we can simply do pull requests on a RAML file instead.
    • What excites us most about leveraging RAML are our unit, integration and acceptance tests. With our API described in an easily machine-readable format, we can run tests based on the samples defined in the RAML.
    • We are actively working on a testing framework utilizing Capybara. We believe we can use RAML to run some of the tests on our framework. If the API changes, we won't need to rewrite our tests: they will pick up the updated RAML file and adjust accordingly..
    • We already leveraged swagger to browse our existing API's. We felt it did not go far enough to allow us to collaborate on and document the API representation. We also didn't want to start from scratch trying to integrate RAML into our processes. So we developed a project to generate RAML from Swagger. Take a look: swagger2raml.
  • MegX

    The megx.net portal for Marine Ecological GenomiX provides specialized geo-referenced databases and web services for the analysis of marine bacteria, archaea, and phage genomes and metagenomes.

    The portal delivers data and provides services for DNA research on microbial ecology. It is currently the information center for the Ocean Sampling Day campaign.

    The development team is using RAML to describe the APIs that allow data gathering from different sources (applications and devices).

    At megx.net, we started using RAML for API specification. It helps us a lot with communicating requirements to our offshore partner. I was comparing it to Swagger and WADL and found that RAML strikes a better balance between technical aspects and human readability … I like the simple API versioning feature of RAML. That is important for megx development, because our dozens of web services evolve differently over time

    Renzo KottmannMicrobial Genomics and Bioinformatics Research GroupMax Planck Institute for marine Microbiology

    We wanted good and simple documentation. For me, the main points are readability and the possibility to generate HTML documentation automatically using RAML2HTML by kevinrenskers

    Ivaylo KostadinovJacobs University Bremen gGmbH, Bremen, Germany
  • British Sky Broadcasting

    RAML allows us to design and change REST API definitions in a more controlled, but fluid way. We have a large investment in C# applications, and the use of an open standard has helped us to design, document, develop and test our API definitions.

    By adopting RAML, our design-first ethos has been significantly improved by having a single source of truth for all of the APIs we publish.

    Mark LoweSolutions ArchitectSky TV Broadcast Applications
  • Contact us at info@raml.org to add your testimonials about RAML to this list.