Giter VIP home page Giter VIP logo

awesome-algolia's Introduction


awesome

Awesome Algolia Awesome

A curated list of awesome things related to Algolia, inspired by awesome.re.

Table of Contents

API Resources

API Clients

Community API Clients

Official Integrations

Community Integrations

Libraries & Tools

Community libraries

Demos

Community

Talks

Community Talks

Community Projects

Guides & Tutorials

Blog Posts

Community Blog Posts

Culture

Other

License

CC0

awesome-algolia's People

Contributors

antoineplu avatar arpit2438735 avatar bahmutov avatar belazer avatar davidnoah avatar dzello avatar elpicador avatar fobo66 avatar haroenv avatar joshed-io avatar julienbourdeau avatar juliereboul avatar justinkoke avatar k-yomo avatar kikobeats avatar lombiqtechnologies avatar lordthorzonus avatar lukyvj avatar marckohlbrugge avatar notrab avatar nunomaduro avatar pixelastic avatar rayrutjes avatar shahanuj2610 avatar shipow avatar spinach avatar spone avatar ttasovac avatar tw2113 avatar vvo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-algolia's Issues

Dead link in list

Just a quick heads-up about a dead link in your list!
screen shot 2017-01-06 at 15 55 42

Both demo and code are 404

Use quicktype to provide static types for docs/datasets

Reading the docs for algolia, I noticed that you encourage at least Swift and C# users to load JSON data as dynamic values (e.g. Dictionary and JObject). Since this repo is about awesomeness, I thought you might be able to benefit from quicktype.

quicktype can infer types from JSON data and provide types and marshaling code in a variety of languages. For example, here's how to quicktype your airports.json sample dataset:

$ npm install -g quicktype
$ quicktype -o Airports.swift \
       https://raw.githubusercontent.com/algolia/datasets/master/airports/airports.json

This is the generated code:

typealias Airports = [Airport]

struct Airport: Codable {
    let name, city, country, iataCode: String
    let geoloc: Geoloc
    let linksCount: Int
    let objectID: String

    enum CodingKeys: String, CodingKey {
        case name, city, country
        case iataCode = "iata_code"
        case geoloc = "_geoloc"
        case linksCount = "links_count"
        case objectID
    }
}

struct Geoloc: Codable {
    let lat, lng: Double
}

extension Array where Element == Airports.Element {
    init(data: Data) throws {
        self = try JSONDecoder().decode(Airports.self, from: data)
    }

    init(_ json: String, using encoding: String.Encoding = .utf8) throws {
        guard let data = json.data(using: encoding) else {
            throw NSError(domain: "JSONDecoding", code: 0, userInfo: nil)
        }
        try self.init(data: data)
    }

    func jsonData() throws -> Data {
        return try JSONEncoder().encode(self)
    }

    func jsonString(encoding: String.Encoding = .utf8) throws -> String? {
        return String(data: try self.jsonData(), encoding: encoding)
    }
}

Then you can easily go from JSON with Airports(jsonString) and to JSON with airports.jsonString(). With native support for Codable in the algolia Swift SDK, you could make using algolia even nicer and more strongly typed without the need for the user to marshal strings or dynamic values.

quicktype would allow your C#, Swift, Objective-C, Java, Go, C++, etc. users use algolia type-safely with little effort. Not sure if this is useful in general, but I thought I'd draw your attention to this capability just in case!

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.