semvec/pypi-packages huggingface dataset:
signal-groups 0.1.0
Rust extension providing Python bindings to the v2 signal groups

# signal-groups

[![CircleCI](https://circleci.com/gh/freedomofpress/signal-groups.svg?style=svg)](https://circleci.com/gh/freedomofpress/signal-groups)

Experimental Python bindings to Signal's v2 groups implementation [`zkgroup`](https://github.com/signalapp/zkgroup).
This project provides a Rust extension using [PyO3](https://pyo3.rs/) to define a `signal_groups` Python module.
See [here](https://cryptography.io/en/latest/limitations.html) for a fundamental limitation storing secrets in Python-allocated memory.

⚠️USE AT YOUR OWN RISK!⚠️

## Developer Getting Started

You will need both [Rust](https://rustup.rs/) and Python 3.7+ installed on your system.
To install the project in your virtualenv:

```sh
pip install -r requirements.txt
python setup.py develop
```

Then run the tests via `pytest -v tests/` to confirm all is working.
Tests are (mostly) ported to Python from the upstream crate.
You can use the tests as a reference for how to use the library (start with the integration tests).

When developing, simply run `python setup.py develop` as you make changes to rebuild the library.
This script will handle compilation on the Rust side.

# Building wheels

See instructions [here](https://github.com/PyO3/setuptools-rust#binary-wheels-on-linux). In brief:

```
docker pull quay.io/pypa/manylinux2014_x86_64
docker run --rm -v `pwd`:/io quay.io/pypa/manylinux2014_x86_64 /io/build-wheels.sh
```
social-user-info 1.1.0
A python package that helps getting the user info from social apps

[![Downloads](https://pepy.tech/badge/social-user-info)](https://pepy.tech/project/social-user-info)

# Social User Info
A python package that helps to get the user info from social apps

## Installation
```
Required Python Version >= 3
```
```
pip install social-user-info
```

## Supported Social Media

* Google
* Facebook
* Github
* Microsoft

## How it works?

The package has a method `APIService.get_user_info(access_token, auth_source)`.
This method accepts the access_token and auth_source and returns the user info corresponding to the given access token

## Usage

#### Get your google access token:
* Navigate to: https://developers.google.com/oauthplayground/
* In Step 1, select **Google OAuth2 API v2** and add `https://www.googleapis.com/auth/userinfo.email` and `https://www.googleapis.com/auth/userinfo.profile`. Click on Authorize APIs
* Login/Select the account you want the access token of
* In Step 2, Click on **Exchange Authorization Code for Tokens**
* Get the `access_token` from the returned JSON

#### Get your facebook access token
* Read through this: https://developers.facebook.com/docs/facebook-login/access-tokens/

#### Get your github access token
* Login to your github account
* Navigate to settings
* Navigate to developer settings at the bottom left
* Navigate to personal access token
* Generate a new Token
* Get the `access_token` by clicking on Generate Token


### Get your microsoft access token
* Navigate to https://developer.microsoft.com/en-us/graph/graph-explorer
* Authorize with your microsoft account and give permission to read users
* Select the `Access Token` Tab and copy the access token


#### Obtain user info
```python
from social_user_info.social_user_info import APIService

APIService.get_user_info(access_token={access_token_from_above_step}, auth_source='google')
APIService.get_user_info(access_token={access_token_obtained_from_facebook}, auth_source='facebook')
APIService.get_user_info(access_token={access_token_obtained_from_github}, auth_source='github')
APIService.get_user_info(access_token={access_token_obtained_from_microsoft}, auth_source='microsoft')
```