Skip to content
/ e-id Public

Electronic identity in Estonia and other countries

License

Notifications You must be signed in to change notification settings

tab/e-id

Repository files navigation

E-ID

Electronic identity in Estonia and in other countries

Supported countries

  • Estonia
  • Finland
  • Sweden
  • Lithuania
  • Latvia
  • Denmark

Installation

Add this line to your application's Gemfile:

gem 'e-id', '~> 0.3.0'

And then execute:

bundle

Or install it yourself as:

gem install e-id

Usage

Estonia

Identity code format is GYYMMDDSSSC

  • G – gender
  • YYMMDD – date of birth
  • SSS – serial number
  • C – checksum

More info: https://www.id.ee/en/

irb -I lib
require 'e-id'

Eid::Estonia.new(50001029996).valid?
=> true

Eid::Estonia.new(50001029996).gender
=> :female

Eid::Estonia.new(50001029996).birth_date
=> #<Date: 2000-01-02 ((2451546j,0s,0n),+0s,2299161j)>

Eid::Estonia.new(50001029996).age
=> 23

Development

Build docker container with compose:

docker-compose build
docker-compose up

Access to the container:

docker-compose exec e-id sh

Run rspec or rubocop checks:

/package # bundle exec rubocop
/package # bundle exec rspec

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/tab/e-id. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.

Code of Conduct

Everyone interacting in the e-id project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.