GithubHelp home page GithubHelp logo

geofancy-rs's Introduction

geofancy-rs

Geofancy is a (hopefully) simple gRPC service that implements a subset of Tile38.

This repository contains the Rust implementation.

There is also another repository (geofancy-java), which contains the Java/Kotlin implementation of the server.

Why Geofancy?

Tile38 is a great program, that amongst others, allows one to set geofences between moving and static geospatial objects; with the ability to trigger webhooks when conditions are met.

While we have tried out Tile38, we didn't want to implement all the logic that we wanted within some of our services, so we decided to create a separate service instead.

Geofancy is a stand-alone microservice that connects with Tile38, and exposes a subset of its API via a gRPC service.

Implemented Methods

You can view the geofancy.proto , which lists the RPCs that are supported.

At the time of writing (imagine a blog post with no date having this line) ... The API is still unstable, and can evolve. We have

service GeofancyService {
    rpc CreateWebHook (GeoFence) returns (CommandResult) {}
    rpc DeleteWebHook (SearchString) returns (CommandResult) {}
    rpc SetDocument (Document) returns (CommandResult) {}
    rpc DeleteDocument (Document) returns (CommandResult) {}
    rpc DeleteCollection (Document) returns (CommandResult) {}
}

Notice that we return a very simple CommandResult message. Contributions are welcome, if anyone would like to return something more solid as a result.

geofancy-rs's People

Contributors

nevi-me avatar

Stargazers

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

Watchers

 avatar  avatar  avatar

Forkers

manuel-sphe

geofancy-rs's Issues

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.