GithubHelp home page GithubHelp logo

miguelramosfdz / xaddress Goto Github PK

View Code? Open in Web Editor NEW

This project forked from roberdam/xaddress

0.0 1.0 0.0 16.18 MB

Xaddress - Give 7 billion people an instant physical address

Home Page: http://xaddress.org

License: MIT License

Ruby 99.40% HTML 0.60%

xaddress's Introduction

Logo

XADDRESS

Give 7 billion people an instant physical address that can be used offline and decoded with low tech (pen & paper).

Read it on Medium

[An Algorithm that can give an instant solution to 7b people] (https://medium.com/@roberdam/an-algorithm-that-can-give-an-instant-solution-to-7-billion-people-60bf628205a2)

How it works.

Xaddress encodes the latitude & longitude of a place in a form that resembles a normal address and can be decoded back easily even in a low tech environment using paper, pen and a physical map.

Demo

TRY IT IN ENGLISH | PRUEBALO EN ESPAÑOL

The demo site uses some free apis with limited requests per day, 
some functionality might be unavailable on high demand.

How it looks

![looks] (https://cloud.githubusercontent.com/assets/3354868/17262858/d616e1ca-55ab-11e6-9d8a-78dd524a4063.png)

Features

![parts] (https://cloud.githubusercontent.com/assets/3354868/17264547/bc36ac22-55b5-11e6-9aae-e64677c2d5bc.png)

1) VISUAL AVATAR

Used like a visual hash to ensure that you write the Xaddress right, if you change any letter it will generate another image, for example MAGICAL PEARLS will show you a different image so you can know that you write a wrong address.

If you want to transmit your Xaddress by phone you will say

"7150 MAGICAL PEARL - Maluku ,Indonesia" my avatar is a boot

2) COUNTRY AND STATE

You can see right away the country and state where that Xaddress is located, and you can recognize it as an address.

3) SHORT CODE

By default Xaddress create 2 kind of codes, each one independent from the other, the short code can be decoded by itself, it can have 1 meter accuracy, and is useful to storage or send it as a link, like ubicate.me/NOMATAL-KOROFAD

Encoding with the Ruby CLI.

Now to get started with Xaddress you would perform the following:

git clone https://github.com/roberdam/Xaddress.git
cd Xaddress
bundle
ruby encode.rb "-6.7184,129.5080"

You can use it without using geocoder by specify state and country in the command line:

ruby encode.rb "-6.7184,129.5080" "Maluku, Indonesia"

Decoding with the Ruby CLI.

ruby decode.rb "7150 MAGICAL PEARL - Maluku, Indonesia"

PROS:

  • Instantaneous.
  • Offline
  • Designed to be used in low tech environments
  • Multilanguage
  • Error correction incorporated with visual avatar.
  • Short code for storing or linking.
  • Works with any map.
  • Yow know is an address when you see it.

CONS:

  • May take you some effort to find a suitable address
  • 10mts accuracy with the present form.

ALTERNATIVES:

Compare encodings:

Option Location : -6.7184 , 129.5080
XADDRESS 7150 Magical Pearl - Maluku, Indonesia
WHAT3WORDS percolator.surmount.retooled
GEOHASH qyu1g0by7
MAPCODE VQ6.1MFD
OPENLOCATIONCODE 6Q5F 7GJ5+J6

Port Xaddress to other languages

Check the pseudocode guide to implement Xaddress in other languages, apps or internal systems. https://github.com/roberdam/Xaddress/tree/master/pseudocode

Contributing

There is a lot to do if you want to contribute:

  • Mobile App
  • Language packs
  • Spread the word
  • Errors/corrections/improvement, raise an issue on Github and I would be more than happy to discuss :)

Work in progress

[Xaddress for Node] (https://github.com/therebelrobot/Xaddress-node) by @therebelrobot

[Xaddress - The Android App] (https://github.com/spidergears/XAddress-Android) by @spidergears

xaddress's People

Contributors

cacciatc avatar nkcmr avatar roberdam avatar samuelfullerthomas avatar sleepypikachu avatar

Watchers

 avatar

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.