graph-vl logo

graph-vl

  •  0 ratings
In category: Miscellaneous

About graph-vl

Identity document verification using Machine Learning and GraphQL.

  •   1142  
  •   0  
  •   0  
  •   0  
Github stats:
  •  Commits: N/A  
  •   N/A  
  •   N/A  
  •  Latest commit: N/A  

Self-host this app for $0.99/mo only!

Languages/Platforms/Technologies:
Lincenses:

More about graph-vl

graph-vl

.. image:: https://github.com/verifid/graph-vl/workflows/graph-vl%20ci/badge.svg :target: https://github.com/verifid/graph-vl/actions

.. image:: https://codecov.io/gh/verifid/graph-vl/branch/master/graph/badge.svg :target: https://codecov.io/gh/verifid/graph-vl

Self hosted identity verification layer with GraphQL.

Introduction

graph-vl is the verification layer of verifid developed with GraphQL. It's the secondary core project other than VL <https://github.com/verifid/vl/>_ that is responsible from verifying identity cards or passports. Basically it's a self hosted API which has 3 main endpoints. It runs on either Docker or Kubernetes as a container. All endpoints are documented using GraphiQL and project relies on VerifID and other Open Source Python modules.

For storage, it uses Postgres as a database and SQLAlchemy as an object relational mapper. To make it simple DB has only two tables which is enough for this project.

There is only four steps to veriy an identity of a person which you can find those steps below.

  1. Create a user with personal details
  2. Upload user's selfie photo
  3. Take a photo of front page of identity card or passport, then upload
  4. Call verify endpoint and get the result

Requirements

  • Python 3.6+
  • Postgres
  • Run time dependencies requirements.txt
  • Test dependencies requirements.testing.txt

Usage

You need a Postgres instance in your machine our a Docker container that runs database. To pull docker image and start a container

.. code::

docker pull postgres:11.5
docker run --name postgres -e POSTGRES_SERVER=localhost \
    -e POSTGRES_USER=postgres \
    -e POSTGRES_PASSWORD=postgres \
    -e POSTGRES_DB=postgres \
    -d -p 5432:5432 postgres:11.5
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' postgres
# We will use this IP address when we build or run graph-vl

To run the graph-vl server, please execute the following commands from the root directory

.. code::

docker build --build-arg PG_SERVER=${POSTGRES_IP_ADDRESS} \
    --build-arg PG_USER=postgres \
    --build-arg PG_PASSWORD=postgres \
    --build-arg PG_DB=postgres \
    -t graphvl .
docker run --rm -it -d -p 8000:8000 --name graph-vl graphvl:latest

For running in a cluster with Kubernetes you can follow the commands below

.. code::

# Use Docker for minikube
eval $(minikube docker-env)
# Re-build the docker images

# Create developments and pods
kubectl create -f deployment-postgres.yml
kubectl create -f deployment-graphvl.yml

# Create services
kubectl create -f service-postgres.yml
kubectl create -f service-graphvl.yml

# Get url for **graphvl**
minikube service graphvl --url

Interface

+-----------------+---------------+-----------------+ ||image_expolorer|||image_queries|||image_mutations|| +-----------------+---------------+-----------------+

If you run with uvicorn graphvl.main:app after cloning the project all endpoints will be available available on http://127.0.0.1:8000

.. |image_expolorer| image:: https://raw.githubusercontent.com/verifid/graph-vl/master/resources/explorer.png .. |image_queries| image:: https://raw.githubusercontent.com/verifid/graph-vl/master/resources/queries.png .. |image_mutations| image:: https://raw.githubusercontent.com/verifid/graph-vl/master/resources/mutations.png

Comments (0)

Please login to join the discussion on this project.

graph-vl Reviews (0)

Overall Rating

None

based on 0 ratings

Please login to review this project.

No reviews for this project yet.

↑ back to top

RackNerd Medium Rectangle Banner

Popular Projects

FluxBB

in Social Networks and Forums
 48k    0    0    0  

Nextcloud

in File Transfer & Synchronization
 43k    1    1    0  

Teddit

in Social Networks and Forums
 26k    0    0    0  

Libre Translate

in Miscellaneous
 19k    0    0    0  

Dashboard

in Personal Dashboards
 16k    0    0    0  

RustDesk

in Remote Access
 15k    0    0    0  

Audiobookshelf

in Audio Streaming
 15k    0    1    0  

Most Discussed

Nextcloud

in File Transfer & Synchronization
 43k    1    1    0  

Tube Archivist

in Automation
 8k    0    1    0  

OneDev

in Project Management
 6k    0    0    0  

iodine

in Proxy
 4k    0    0    0  

Alf.io

in Booking and Scheduling
 5k    0    0    0  

sysPass

in Password Managers
 3k    0    0    0  

Misskey

in Social Networks and Forums
 5k    0    0    0  
pCloud Lifetime

Top Rated Projects

Technitium DNS Server

 1 rating
in DNS

Pydio

 1 rating
in File Transfer & Synchronization

Bagisto

 1 rating
in E-commerce

LinkAce

 1 rating
in Bookmarks and Link Sharing

Gitea

 1 rating
in Project Management

Audiobookshelf

 1 rating
in Audio Streaming

Nextcloud

 1 rating
in File Transfer & Synchronization

Categories

You May Also Be Interested In

IconCaptcha logo
IconCaptcha cover

IconCaptcha

IconCaptcha is a self-hosted, fast, simple and user-friendl…

Koillection logo
Koillection cover

Koillection

Koillection is a service allowing users to manage any kind …

SANE Network Scanning logo
SANE Network Scanning cover

SANE Network Scanning

Allow remote clients to access image acquisition devices (s…