graph-vl logo

graph-vl

  •  0 ratings
In category: Miscellaneous

About graph-vl

Identity document verification using Machine Learning and GraphQL.

  •   1168  
  •   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
 44k    1    1    0  

Teddit

in Social Networks and Forums
 27k    0    0    0  

Libre Translate

in Miscellaneous
 19k    0    0    0  

RustDesk

in Remote Access
 16k    0    0    0  

Dashboard

in Personal Dashboards
 16k    0    0    0  

Audiobookshelf

in Audio Streaming
 15k    0    1    0  

Most Discussed

Nextcloud

in File Transfer & Synchronization
 44k    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
 6k    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

Overseerr logo
Overseerr cover

Overseerr

Overseerr is a free and open source software application fo…

tmate logo
tmate cover

tmate

Instant terminal sharing.

Readflow logo
Readflow cover

Readflow

Lightweight news reader with modern interface and features:…