Skip to main content

This package is complete tools for sass building

Project description

DRF Easily Saas

This package allows integration with Firebase for authentication outside the Django context.

Firebase Logo

1. Firebase configuration

Create your Firebase database, then download the .json authentication file linked to your project.

  • Go to Project settings
  • Then go to the Service accounts section
  • Select Python then download by clicking on Generate new private key
  • Upload the .json file into your Django project

2. Django configuration

Install authentication app in your project

pip install drf-easily-saas
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    # Insert this app
    'drf_easily_saas',
]

Add a Easily configuration

EASILY= {
    'auth_provider': 'firebase', # Required
    'payment_provider': 'stripe', # Required
    'frontend_url': 'http://localhost:3000', # Required
    'firebase_config': {
        'import_users': True,
        "hot_reload_import": False,
        'config': {
            "type": "service_account",
            "project_id": "o-380604",
            "private_key_id": "7b9b5b20483ccbb91e",
            "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANAQEFAASCBKYwggSiAgEAAoIBAQC1Mv+HbJi7ObeG\nLGAhYXS7gf+O+9gMPYQWgM6KZqvd2dhvuqxyzqJYttz5o55YKBZTFDdY5Kped51f\nU273RylDA6\nWsbW9xyvgmVpbIbja29Lhc1H1Hymd4edFfDdee/d9LTF8g8QNHJ5LFx\n0DvORqNuNh0rM78sQS9l+g9PNdCoBTWxXE8BRvUCgYB2PXGAGCVDeesKxDyR3hwj\nVxR0un/5KMjJgpChhPBwNFLtar6WrgQVMYZomCwh9xjTAh/69lxtzaxJ+mvz3A8X\n1waeyUrsd+aBviq0Yz/6JVDghOkY5ZrptcR3Dg0hHLkEg0QLixmWebUQnZ6knW7z\n38m94Msowc2s2N6uYVE63g==\n-----END PRIVATE KEY-----\n",
            "client_email": "firebase-adminsdk-i7799@oting-380604.iam.gserviceaccount.com",
            "client_id": "106479259625371201589",
            "auth_uri": "https://accounts.google.com/o/oauth2/auth",
            "token_uri": "https://oauth2.googleapis.com/token",
            "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
            "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-i7799%-380604.iam.gserviceaccount.com",
            "universe_domain": "googleapis.com"
        },
    },
    'stripe_config': {
        'public_key': os.getenv('STRIPE_PUBLIC_KEY'),
        'secret_key': os.getenv('STRIPE_SECRET_KEY'),
        'webhook_verif_strategy': 'apikey',
        'subscription': {
            'payment_method_types': ['card', 'paypal'],
            'billing_address_collection': 'auto',
            'shipping_address_collection': {
                'allowed_countries': ['US', 'CA', 'FR'],
            },
            'automatic_tax': {'enabled': True},
        },
    },
}

Configure custom Firebase authentication in rest framework

'DEFAULT_AUTHENTICATION_CLASSES': [
    'drf_easily_saas.auth.firebase.protect.FirebaseAuthentication',
],

Sync all existing users from your Firebase database

python3 manage.py syncfirebaseusers

Have fun with Firebase Authentication! 🚀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

drf_easily_saas-0.0.4.tar.gz (35.1 kB view details)

Uploaded Source

Built Distribution

drf_easily_saas-0.0.4-py3-none-any.whl (26.0 kB view details)

Uploaded Python 3

File details

Details for the file drf_easily_saas-0.0.4.tar.gz.

File metadata

  • Download URL: drf_easily_saas-0.0.4.tar.gz
  • Upload date:
  • Size: 35.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.0 CPython/3.10.12 Linux/6.5.0-28-generic

File hashes

Hashes for drf_easily_saas-0.0.4.tar.gz
Algorithm Hash digest
SHA256 cce1e3c996eed961e0bcc56be309142cad14d5316d977164f14b1c652e2f74d0
MD5 b642659317496b2e5fa40e35f3589daf
BLAKE2b-256 979b9d640ca353036484996a02b194b2a80eb59fcc434218d185ec6634f5dc20

See more details on using hashes here.

File details

Details for the file drf_easily_saas-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: drf_easily_saas-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 26.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.0 CPython/3.10.12 Linux/6.5.0-28-generic

File hashes

Hashes for drf_easily_saas-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 f4ac30d388425022e8c0de305f699c9f86ec26188547767c34e670626b8284fb
MD5 f0eaec58b0dfb9a500d4504717bd2ac8
BLAKE2b-256 b9b245d6611b8f0364222195aa04b9d1c724989fb8aa9d4f6e2da6dc24d62fbc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page