Skip to content
Back

New OAuth provider not appearing in Console during development (Hugging Face)

  • 0
  • 4
  • Self Hosted
  • Web
4 Aug, 2026, 16:54

Hi team!

I'm contributing to Appwrite and currently working on adding Hugging Face as a new OAuth provider.

Here's what I've done so far:

  • Implemented the HuggingFace provider class.
  • Added it to the providers config.
  • PHPUnit tests are passing.
  • Rebuilt Appwrite using docker compose build and docker compose up -d.

The issue is that the new provider doesn't appear in the Console.

I verified that my config changes are being picked up—for example, if I comment out an existing provider like Amazon, it disappears from the Console. So it seems my changes are loading, but Hugging Face still isn't listed.

I also found the contributor documentation a bit confusing in a few places. For example, it mentions uploading a provider icon to an image/users directory, but that directory doesn't exist in the current repository, so I'm not sure if the docs are outdated or if I'm looking in the wrong place.

Is there another place where a new OAuth provider needs to be registered for it to appear in the Console (frontend, API, generated files, etc.), or am I missing a build step?

Any pointers would be greatly appreciated. Thanks!

TL;DR
New OAuth provider information is not displaying in the Console during development for Hugging Face. The user has created a pull request to update the outdated documentation.
4 Aug, 2026, 18:48

probably because the console is also holding the list of possible oauth : https://github.com/appwrite/console/blob/main/src/lib/stores/oauth-providers.ts

5 Aug, 2026, 06:15

but I'm noticing something odd. It's not just missing from the Console UI, it doesn't even appear in the backend response returned by the /v1/account request (Network tab). and i think even if the Console hasn't been updated yet, the backend should still include the provider in that response?

5 Aug, 2026, 06:25
TypeScript
    [huggingface] => Array
        (
            [name] => Hugging Face
            [developers] => https://huggingface.co/docs/hub/oauth
            [icon] => icon-huggingface
            [enabled] => 1
            [sandbox] => 
            [form] => 
            [beta] => 
            [mock] => 
            [class] => Appwrite\Auth\OAuth2\HuggingFace
        )
5 Aug, 2026, 06:28

I also verified that the provider is actually being loaded by the backend. Running:

docker exec -it appwrite php -r "print_r(require '/usr/src/code/app/config/oAuthProviders.php');" | grep huggingface -A8

shows that huggingface is present in oAuthProviders.php.

So the backend configuration is definitely picking up my changes. What's confusing is that the provider still doesn't appear in the /v1/account response (Network tab), and therefore it never reaches the Console UI, it should at least be returned by the backend.

5 Aug, 2026, 07:20

currently the possiblities i see are :

  • you missed something in the backed
  • maybe a redis cache thing
  • already created projects are not showing it (try to make a new project now and check if it's present)
  • you missed something in the console
5 Aug, 2026, 12:41

I've checked all of those:

  • Backend implementation is complete and the tests are passing.
  • Console changes (provider list + icon) are in place.
  • I rebuilt everything and also tried creating a new project.

At this point, I think it's very likely there's another backend registry that enumerates the supported OAuth providers. Adding it to config/oAuthProviders.php alone may not be enough. If huggingface isn't included there, it gets filtered out before being sent to the Console, which would explain why it doesn't even appear in the Network tab response.

Also, the documentation seems to be outdated. Some of the files and paths it references either no longer exist or don't match the current repository structure, which made tracking down the missing integration points much more difficult.

5 Aug, 2026, 12:50

do you have a repo where we could see your changes ?

5 Aug, 2026, 13:01

so you kinda have edited (or create a file for HF) all thoses files ? : https://github.com/search?q=repo%3Aappwrite%2Fappwrite+Yahoo&type=code (took Yahoo as an example for all files that shows OAuth for it)

  • src/Appwrite/Auth/OAuth2/XXX.php iirc you said yes
  • src/Appwrite/Platform/Modules/Project/Http/Project/OAuth2/XXX/Update.php
  • src/Appwrite/Utopia/Response/Model/OAuth2XXX.php
  • app/config/oAuthProviders.php iirc you said yes
  • src/Appwrite/Utopia/Response/Model/OAuth2ProviderList.php
  • src/Appwrite/Utopia/Response.php
  • src/Appwrite/Platform/Modules/Project/Services/Http.php
  • src/Appwrite/Platform/Modules/Project/Http/Project/OAuth2/Get.php
  • src/Appwrite/Platform/Modules/Project/Http/Project/OAuth2/Base.php
  • app/init/models.php
  • tests/unit/Platform/Modules/Project/OAuth2/OAuth2ProviderTest.php iirc you said you created tests so i guess yes
5 Aug, 2026, 13:03

ye your missing A LOT, also the test should use the existing OAuth2ProviderTest class to be like the others OAuth providers

5 Aug, 2026, 13:06

The docs seriously need an update 🥲. I was relying on them and ended up missing a lot of files. Thanks for the direction.

1
6 Aug, 2026, 10:56

Here's what I've done so far:

  • Implemented the backend for the Hugging Face OAuth provider.
  • Ran the existing OAuth test suite, and all tests pass.
  • The backend API returns huggingface in the OAuth providers response (verified in the Network tab), so the backend implementation seems to be working.

For the Console:

  • Added the Hugging Face SVG icons.
  • Added huggingface to the OAuth provider list, and it appears correctly in appwrite/console.

However, I'm seeing two issues:

  • The provider appears in appwrite/console, but it doesn't show up in appwrite/appwrite.
  • In appwrite/console, when I select Hugging Face, enter the Client ID and Client Secret, and click Update, I get an "Invalid provider" error.

Also i double-checked that the provider name (huggingface) is consistent everywhere in the code. Initially I thought it might be a naming mismatch, but everything looks correct.

here's the repo:

Backend: https://github.com/arpit10128/appwrite/tree/feat-13067-huggingface-oauth-provider

Console: https://github.com/arpit10128/console/tree/feat-add-huggingface-oauth-console

6 Aug, 2026, 16:25

<@1197887204152840354> Heyy 👋 Feel free to submit PRs; You can mark it as draft if it's not finalized yet.

Curious to check it out, I can maybe help speed-up the process a little to get the provider live quickly

6 Aug, 2026, 17:24

Thanks! I've created a draft PR and tagged you there. I'd really appreciate it if you could take a look when you have time 🙌

8 Aug, 2026, 17:47

<@743532656767270934>

9 Aug, 2026, 12:34

heyy, so just checked, docs are a bit outdated. created a pr to update them- https://github.com/appwrite/appwrite/pull/13157

9 Aug, 2026, 12:34

let me know if u still have issues 🙌

Reply

Reply to this thread by joining our Discord

Reply on Discord

Need support?

Join our Discord

Get community support by joining our Discord server.

Join Discord

Get premium support

Join Appwrite Pro and get email support from our team.

Learn more