/kinde-sveltekit-sdk

Primary LanguageTypeScriptMIT LicenseMIT

Kinde SvelteKit

The Kinde SDK for SvelteKit.

PRs - Welcome Kinde - Docs Kinde Community Discord

Development

Initial set up

  1. Clone the repository to your machine:

    git clone https://github.com/kinde-oss/kinde-sveltekit-sdk
  2. Go into the project:

    cd kinde-sveltekit-sdk
  3. Install the dependencies:

    npm install

How to build

Implement your modifications and then execute the below command to compile the SDK:

npm run build

How to add the SDK into an already existing project

  1. Go to the project's root directory, then execute the below command:

    npm pack <path-to-sdk-folder>
    // e.g.
    npm pack ~/Documents/Projects/kinde-sveltekit-sdk
  2. Update the package.json file

    {
         ...
         "dependencies": {
             "@kinde-oss/kinde-sveltekit-sdk": "file:kinde-oss-kinde-sveltekit-sdk-<version>.tgz",
             ...
         }
         ...
    }

How to test

Firstly, you need to install a web browser for testing purposes

// https://playwright.dev/docs/library#key-differences

npx playwright install
// for a single one
npx playwright install chromium

Next step, create .env file:

KINDE_AUDIENCE=your_kinde_api
KINDE_CLIENT_ID=your_kinde_client_id // Please use an application with password method
KINDE_CLIENT_SECRET=your_kinde_client_secret
KINDE_ISSUER_URL=https://your_kinde_domain.kinde.com
KINDE_POST_LOGIN_REDIRECT_URL=http://localhost:4173
KINDE_POST_LOGOUT_REDIRECT_URL=http://localhost:4173
KINDE_REDIRECT_URL=http://localhost:4173/api/auth/kinde_callback
KINDE_SCOPE=profile email offline openid
KINDE_USER_EMAIL_TEST= // An user has existed in your organization
KINDE_USER_PASSWORD_TEST=
KINDE_AUTH_WITH_PKCE= // Set `true` if you want to use Authentication Code Flow with PKCE
KINDE_DEBUG= // Set `true` if you want to enable the `api/auth/health` endpoint

Finally, you can simply run the command

npm run test

Publishing

The core team handles publishing.

Contributing

Please refer to Kinde’s contributing guidelines.

License

By contributing to Kinde, you agree that your contributions will be licensed under its MIT License.