Coder Social home page Coder Social logo

bowser's Introduction

Bowser

It's like Browser, but smaller. It provides minimal browser support for libraries and frameworks which don't need the full spectrum of support from opal-browser.

Installation

Add this line to your application's Gemfile:

gem 'bowser'

And then execute:

$ bundle

Or install it yourself as:

$ gem install bowser

Usage

Inside your front-end app:

require 'bowser'

Bowser.document # Handle to the current document
Bowser.window   # Handle to the current window

HTTP support

To load HTTP support, require it by running:

require 'bowser/http'

To make HTTP requests to your API, you can use Bowser::HTTP.fetch:

Bowser::HTTP.fetch('/api/things')

It returns a Bowser::Promise, on which you can call then or catch in order to execute a block of code based on success or failure, respectively.

Bowser::HTTP.fetch(url)
  .then(&:json) # JSONify the response
  .then { |response| do_something_with(response.json) }
  .catch { |exception| warn exception.message }

To make POST requests, you can pass the method keyword argument. The body of the post is represented in the data keyword argument. This is in contrast to the ES6 fetch function, which uses body, but requires a string. The data argument lets you pass in a string or a hash, which will be converted to JSON:

Bowser::HTTP.fetch(url, method: :post, data: { name: 'Bowser' })

Contributing

This project is governed by a Code of Conduct

  1. Fork it
  2. Branch it
  3. Hack it
  4. Save it
  5. Commit it
  6. Push it
  7. Pull-request it

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.