A Ruby DSL for describing service APIs with automatic parameter validation, type conversion, and serialization for Rails.
Seahorse is a Ruby library that provides a declarative DSL for describing service APIs as first-class models. It solves the problem of manual parameter validation, type conversion, and serialization in web applications by automating these processes based on the API definition. With Rails integration, it seamlessly hooks into controllers and routing, reducing boilerplate code.
Ruby on Rails developers building RESTful APIs who want to automate validation and serialization, and teams seeking consistent API modeling across services.
Developers choose Seahorse for its declarative approach that eliminates repetitive validation logic, ensures type safety, and provides automatic serialization, all while integrating smoothly with Rails conventions without requiring strong parameters.
Seahorse is a way to describe your API
Uses a clean Ruby DSL to define operations, inputs, and outputs in a single model, reducing boilerplate and ensuring consistency, as shown with Api::Post examples in the README.
Validates and converts parameters automatically based on the model, eliminating manual checks and conversions, such as params[:page] being an integer without .to_i.
Hooks into Rails routing and controllers with minimal setup, removing the need for strong parameters and simplifying controller actions, as demonstrated with Seahorse::Model.add_all_routes.
Automatically serializes outputs to JSON or XML from the API model, ensuring uniform response formats without additional serialization code.
Admitted in the README as a 2013 tech demo with minimal features, it may lack support for advanced API scenarios like pagination helpers or authentication hooks.
Requires additional configuration for Sinatra apps compared to Rails, making it less seamless for non-Rails frameworks, as noted in the features section.
Being a dated tech demo, it might not be actively updated, risking compatibility issues with newer Ruby or Rails versions and limited community support.
Collection of tools and code examples to demonstrate best practices in using Amazon EC2 Spot Instances.
This repository hosts practical code samples and implementation examples from the AWS Big Data Blog. It provides developers with ready-to-use patterns and solutions for building big data and analytics applications on AWS infrastructure. ## Key Features - **Real-World Examples** — Production-tested code samples from AWS blog posts - **Multiple AWS Services** — Integrations with services like Amazon EMR, Redshift, Kinesis, and Glue - **Varied Use Cases** — Solutions for data ingestion, processing, analytics, and machine learning - **Regular Updates** — New samples added as blog posts are published - **Multiple Languages** — Code in Python, Java, Scala, and other languages used in AWS data services ## Philosophy The repository follows AWS's practical approach to sharing knowledge through actionable code that developers can adapt for their own big data projects.
Simulator for AWS architecture blog (http://www.awsarchitectureblog.com/ ) about jitter and backoff.
AWS Technical Trainers Demos
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.