Popularity
2.8
Declining
Activity
0.0
Stable
14
1
6

Monthly Downloads: 6
Programming language: Elixir
License: MIT License
Tags: Third Party APIs    

unsplash-elixir alternatives and similar packages

Based on the "Third Party APIs" category.
Alternatively, view unsplash-elixir alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of unsplash-elixir or a related project?

Add another 'Third Party APIs' Package

README

Unsplash Build Status Hex pm Codacy Badge

Unsplash API wrapper in Elixir.

Exmaple Usage

  • Unsplash.Photos.search(query: "Austin", catgeroy: "2") |> Enum.take(1)
  • Unsplash.Collections.all |> Enum.take(1)
  • All API endpoints are supported. See the documentation for full list.

Each API call that is paginated returns a stream. You can resolve the stream by calling any Enum function, this way you don't have to think about pagination. For example to get one random photo: Unsplash.Photos.random |> Enum.take(1) or to get 100 random photos: Unsplash.Photos.random |> Enum.take(100).

Configuration

See the secrets.exs file on what configuration variables need to be configured.

Authorization

Get an auth code by directing a user to the url generated by this command (replace the scope with what you would like): Unsplash.OAuth.authorize_url! scope: "public read_user write_user read_photos write_photos write_likes read_collections write_collections"

After the user grants access, she will be redirected back to your redirect_uri whith a code query paramater, which you then set like this: Unsplash.OAuth.authorize!(code: auth_code_from_the_callback)

Now every API call will use the access_code gerenated in the above step automatically.

Installation

  1. Add unsplash to your list of dependencies in mix.exs:

    def deps do
      [{:unsplash, "~> 1.1.0"}]
    end
    
  2. Ensure unsplash is started before your application:

    def application do
      [applications: [:unsplash]]
    end