Coder Social home page Coder Social logo

raml's Introduction

Build Status

Looking for an active maintainer!

September 21st, 2016

Unfortunately, in the past year I haven't been able to dedicate time to actively support this project, as I've been busy with other private endeavours. Since this project is in use in several projects and has several active forks, I'm looking for someone to take over or assist with maintenance.

The basic features I'd suggest are:

If you're interested in taking over this project, the discussion can be found here: go-raml#6

Thanks!

--

--

raml

An implementation of a RAML parser for Go. Compliant with RAML 0.8.

Introduction

RAML is a YAML-based language that describes RESTful APIs. Together with the YAML specification, this specification provides all the information necessary to describe RESTful APIs; to create API client-code and API server-code generators; and to create API user documentation from RAML API definitions.

The raml package enables Go programs to parse RAML files and valid RAML API definitions. It was originally developed within EverythingMe.

Status

The raml package is currently unstable and does not offer any kind of API stability guarantees.

Installation

The yaml package may be installed by running:

$ go get gopkg.in/raml.v0

Opening that same URL in a browser will present a nice introductory page containing links to the documentation, source code, and all versions available for the given package:

https://gopkg.in/raml.v0

The actual implementation of the package is in GitHub:

https://github.com/go-raml/raml

Contributing to development

Typical installation process for developing purposes:

$ git clone [email protected]:go-raml/raml.git
$ cd raml
$ go build
$ go install
$ go test

Usage

Usage is very simple:

package main

import (
	"fmt"
	raml "gopkg.in/raml.v0"
	"github.com/kr/pretty"
)

func main() {

	fileName := "./samples/congo/api.raml"

	if apiDefinition, err := raml.ParseFile(fileName); err != nil {
		fmt.Printf("Failed parsing RAML file %s:\n  %s", fileName, err.Error())
	} else {
		fmt.Printf("Successfully parsed RAML file %s!\n\n", fileName)
		pretty.Printf(apiDefinition)
	}
}

Getting help

Roadmap

TBD.

Reporting Bugs and Contributing Code

  • Want to report a bug or request a feature? Please open an issue.
  • Want to contribute to raml? Fork the project and make a pull request. Cool cool cool.

License

See LICENSE file.

raml's People

Contributors

advance512 avatar alon-codefresh avatar

Watchers

_md avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.