Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
693 commits
Select commit Hold shift + click to select a range
75b2946
chore(examples): add .firebase to gitignore for all example apps
dackers86 Oct 28, 2025
8ccc49e
feat(angular): MFA Enrollment
Ehesp Oct 28, 2025
7d431f8
chore(examples): remove .firebase directories from git tracking
dackers86 Oct 28, 2025
2ed31b3
chore(examples): add .firebaserc files for Firebase project configura…
dackers86 Oct 28, 2025
9747370
chore(*): re-added config comments placeholder
dackers86 Oct 28, 2025
0e73b91
chore(angular): Rename component/test files and flatten
Ehesp Oct 28, 2025
361ab2a
chore(*): additional conflict resolutions
dackers86 Oct 28, 2025
de0bf7d
chore(nextjs): restore ESLint and Prettier dependencies and scripts
dackers86 Oct 28, 2025
14bb526
chore(*): restored test scripts from main package json
dackers86 Oct 28, 2025
ac69e24
chore(core): updasted package json config
dackers86 Oct 28, 2025
f4586a1
chore(react): updated depenencies
dackers86 Oct 28, 2025
a6c1bce
chore(*): further depenencies updates
dackers86 Oct 28, 2025
807872a
chore(*): add Firebase deploy scripts for example apps
dackers86 Oct 28, 2025
2e5807d
feat(angular): Stub MFA assertion form
Ehesp Oct 28, 2025
5484c27
chore(react): add Firebase hosting site name to firebase.json
dackers86 Oct 28, 2025
e4de63c
feat(angular): Add MFA Assertion form (with inner stubs)
Ehesp Oct 28, 2025
9d6593f
chore(*): add npm publish scripts for all packages
dackers86 Oct 28, 2025
eb81bb8
chore(*): update package names to @invertase namespace
dackers86 Oct 28, 2025
de68bb2
chore(react): update import to use @invertase/firebaseui-react
dackers86 Oct 28, 2025
84e124d
chore(react): update all imports to use @invertase/firebaseui packages
dackers86 Oct 28, 2025
f8084c3
chore(examples): update all imports to use @invertase/firebaseui pack…
dackers86 Oct 28, 2025
158279a
feat(angular): Add SMS/TOTP assertion components
Ehesp Oct 28, 2025
bd50dac
test(angular): Update tests
Ehesp Oct 28, 2025
d678f79
test(angular): Catch unknown errors
Ehesp Oct 28, 2025
5795471
fix(angular): Use recaptcha verifier behavior
Ehesp Oct 28, 2025
56afee3
chore: Formatting
Ehesp Oct 28, 2025
153aa5e
chore(*): Updated depenencies to temporary Invertase placeholders
dackers86 Oct 28, 2025
83facc8
chore(*): Added release scripts, version bumps
dackers86 Oct 28, 2025
e52ee10
chore: Cleanup tests
Ehesp Oct 29, 2025
41a240e
fix(angular): Ensure recaptcha container is deferred until view child…
Ehesp Oct 29, 2025
e3ad0a2
Merge pull request #1233 from firebase/@invertase/align-update-angular
Ehesp Oct 29, 2025
4f9aa4e
fix(react): fix type casting error
Ehesp Oct 29, 2025
121af20
chore: Use pnpm catalog for next example
Ehesp Oct 29, 2025
2849881
chore: Rework react example app
Ehesp Oct 29, 2025
bc150a3
fix(react,angular): Propagate input type field
Ehesp Oct 29, 2025
0a88bcb
fix(react,shadcn): Rename onRegisterClick -> onSignUpClick
Ehesp Oct 29, 2025
9cce765
fix(react,angular): forgot password link inline with the label
Ehesp Oct 29, 2025
0057799
fix(react,angular): Only display form action errors, not validation e…
Ehesp Oct 29, 2025
58f36ca
fix(react): Don't re-render recaptcha verifier if UI state changes
Ehesp Oct 29, 2025
45cac86
test(angular): Rework totp mfa enrollment to remove duplicate effect
Ehesp Oct 30, 2025
ed32810
test(angular): Fix angular timeouts using waitFor
Ehesp Oct 30, 2025
6295e26
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Oct 30, 2025
f875ba2
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Oct 30, 2025
88da289
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Oct 30, 2025
6c5d744
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Oct 30, 2025
16c34e3
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Oct 30, 2025
3e64ffb
fix(react,angular): Display name should be at the top of the sign up …
Ehesp Oct 30, 2025
553675a
Merge pull request #1239 from firebase/@invertase/bb-30
Ehesp Oct 30, 2025
04ea77b
fix(*): Use "sign up" instead of "register"
Ehesp Oct 30, 2025
d1011c4
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Oct 30, 2025
c71378e
Merge pull request #1240 from firebase/@invertase/bb-26
Ehesp Oct 30, 2025
5795b42
test: Update tests to check the input by label
Ehesp Oct 30, 2025
8be837e
Merge pull request #1238 from firebase/@invertase/bb-19
Ehesp Oct 30, 2025
452b7be
Merge pull request #1237 from firebase/@invertase/bb-9
Ehesp Oct 30, 2025
ad60445
Merge pull request #1234 from firebase/@invertase/bb-17
Ehesp Oct 30, 2025
836451d
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Oct 30, 2025
ee1569b
Merge pull request #1235 from firebase/@invertase/bb-6
Ehesp Oct 30, 2025
96281c4
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Oct 30, 2025
7f19724
test(angular): Update test to pick password input
Ehesp Oct 30, 2025
dd0d5bb
Merge pull request #1236 from firebase/@invertase/bb-7
Ehesp Oct 30, 2025
2df2f96
fix(react): Pass display name to TOTP enrollment (not verification code)
Ehesp Oct 30, 2025
bf8cd97
fix(react): Ensure user credential is passed back from mfa assertion
Ehesp Oct 30, 2025
01de6a8
fix(angular): Pass user credential from mfa assertion
Ehesp Oct 30, 2025
250a795
chore: Formatting
Ehesp Oct 30, 2025
5174a4c
fix(core): Ensure completeEmailLinkSignIn handles anon upgrade behavior
Ehesp Oct 30, 2025
5c69efd
fix(shadcn): Ensure MFA assertion form forwards user credential
Ehesp Oct 30, 2025
f097600
fix(react,shadcn,angular): Email link form handles MFA assertion
Ehesp Oct 30, 2025
3e5d99a
chore(*): merged latest
dackers86 Oct 31, 2025
ba994fe
chore(*): updated to Invertase dependencies
dackers86 Oct 31, 2025
81b224a
chore(*): added deploy scripts
dackers86 Oct 31, 2025
0ab0813
chore(*): updated depenencies, styles dist and added npm publish scripts
dackers86 Oct 31, 2025
cfb8a3d
fix(styles): updated exports
dackers86 Oct 31, 2025
000e247
fix(styles): styles package fixes
dackers86 Oct 31, 2025
e0c862b
fix(*): further style package updates
dackers86 Oct 31, 2025
bd284c9
chore(react): release 0.0.4
dackers86 Oct 31, 2025
6dc7312
chore(*): release core 0.0.4
dackers86 Oct 31, 2025
b1ca215
chore(shadcn): Updated depenencies and deploy to firebase hosting
dackers86 Nov 3, 2025
8c301a1
fix(shadcn): Move registry items to components directory to resolve s…
Ehesp Nov 4, 2025
80c1d81
refactor(shadcn): Move registry items to public/r
Ehesp Nov 4, 2025
72bfe51
chore(*): merged latest
dackers86 Nov 4, 2025
3a33877
fix(shadcn): Display name at top of form
Ehesp Nov 4, 2025
f037fb0
fix(shadcn): Add registry name (bb-46)
Ehesp Nov 4, 2025
000ddbc
fix(shadcn): Catch MFA assertion errors in sign up form
Ehesp Nov 4, 2025
547f724
chore: Sync lock file
Ehesp Nov 4, 2025
7ce8629
chore: Skip linting for generated code
Ehesp Nov 4, 2025
5b57d08
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 4, 2025
1b9cf42
chore(shadcn): added public images to example
dackers86 Nov 4, 2025
d3fc8c8
fix(react): Fix tests by using separate schema + waitFor async submis…
Ehesp Nov 4, 2025
d50dbc4
Merge pull request #1242 from firebase/@invertase/bb-4
Ehesp Nov 4, 2025
9314245
chore(shadn): updated shadcn app to include shadcn components
dackers86 Nov 4, 2025
c626b06
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 4, 2025
6353a80
chore(*): merged latest
dackers86 Nov 4, 2025
a54a6ff
feat(shadcn): Ensure MFA Assertion credential is propagated
Ehesp Nov 4, 2025
2de6ed1
Merge pull request #1244 from firebase/@invertase/bb-4.1
Ehesp Nov 4, 2025
e3edc8a
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 4, 2025
40ca180
Merge pull request #1245 from firebase/@invertase/bb-44
Ehesp Nov 4, 2025
314401f
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 4, 2025
e42e891
Merge pull request #1243 from firebase/@invertase/bb-45
Ehesp Nov 4, 2025
979a244
Merge pull request #1241 from firebase/@invertase/bb-23
Ehesp Nov 4, 2025
170ca2d
chore: Update example app
Ehesp Nov 4, 2025
07e0e14
refactor(*): Make error text generic for use outside of forms
Ehesp Nov 4, 2025
4ca281f
chore(*): re-added package shadcn components
dackers86 Nov 4, 2025
3f02ae1
chore: Fix example internal links
Ehesp Nov 4, 2025
c200d00
Merge pull request #1247 from firebase/@invertase/bb-1
Ehesp Nov 4, 2025
fcbc076
fix(shadcn): updated refeences to use the /r namespace. Components re…
dackers86 Nov 4, 2025
a8880e3
fix(*): resolved merge conflict errors
dackers86 Nov 4, 2025
729309e
fix(react,angular): Prevent double form validation errors
Ehesp Nov 4, 2025
fae81f2
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 4, 2025
ab6d58b
chore(core): release package
dackers86 Nov 4, 2025
c7ddbed
chore(*): updated shad example app deps and home page
dackers86 Nov 4, 2025
bc09f70
fix(core): Prevent email link sign in completion from double error ha…
Ehesp Nov 4, 2025
911dfe6
Merge pull request #1248 from firebase/@invertase/bb-10
Ehesp Nov 4, 2025
1be0547
fix(shadcn): Ensure test waits for event using waitFor
Ehesp Nov 4, 2025
a1c28e3
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 4, 2025
2ca8a3e
fix(react,angular): Ensure SMS MFA Assertion uses correct form schema
Ehesp Nov 4, 2025
ace63f7
Merge pull request #1249 from firebase/@invertase/bb-28
Ehesp Nov 4, 2025
012709e
Merge pull request #1250 from firebase/@invertase/bb-47
Ehesp Nov 5, 2025
c54483b
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 5, 2025
d2de027
chore(shadcn): added deploy script for hosting
dackers86 Nov 5, 2025
3f16533
chore(shadcn): updated screen redirects
dackers86 Nov 5, 2025
98f8bb4
fix(shadcn): ensure hooks use the current user
dackers86 Nov 5, 2025
7f00bb0
chore(shadcn): updated client id for onetap in test app
dackers86 Nov 5, 2025
18fe144
chore: Update example app
Ehesp Nov 5, 2025
9fb44b9
Merge branch '@invertase/publish-artifacts' of https://github.com/fir…
Ehesp Nov 5, 2025
2d29fe4
feat(shadcn): Update shadcn component styling
Ehesp Nov 5, 2025
eb099b6
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 5, 2025
59376eb
Merge branch '@invertase/publish-artifacts' of https://github.com/fir…
dackers86 Nov 5, 2025
3df21be
fix(shadcn): fixed typo in main tsx example
dackers86 Nov 5, 2025
efbd1ea
fix(react): Fix React dark mode variant
Ehesp Nov 5, 2025
6935ba3
chore(*): release packages
dackers86 Nov 5, 2025
2780c04
feat(react): MFA Assertion Screen
Ehesp Nov 5, 2025
92015d2
fix(translations): Sign in with X (vs Twitter) text
Ehesp Nov 5, 2025
217de0c
feat(shadcn): Add MFA Assertion screen
Ehesp Nov 5, 2025
f207de3
fix(react,shadcn): onBackToSignIn -> onSignInClick
Ehesp Nov 5, 2025
51b50c0
fix(react): Add missing exports
Ehesp Nov 5, 2025
1972ebc
fix(*): Add MFA Assertion prompt
Ehesp Nov 5, 2025
6083d72
fix(*): Add mfaTotpQrCodePrompt translation
Ehesp Nov 5, 2025
59c6942
chore(*): merged latest
dackers86 Nov 5, 2025
089fe1c
fix(react): Add back arrow for forgot password form
Ehesp Nov 5, 2025
96cdd92
fix(shadcn): updated mfa assertion form re-render
dackers86 Nov 5, 2025
b92d23a
chore(*): regen shadcn components
dackers86 Nov 5, 2025
6cb6a33
chore(*): merged latest
dackers86 Nov 5, 2025
9ec3764
chore(shadcn): regn components
dackers86 Nov 5, 2025
77fc0c7
chore(*): release packages
dackers86 Nov 5, 2025
ab9b5f2
fix(*): updated react package deps
dackers86 Nov 5, 2025
6fce4ef
chore(*): ran formatting
dackers86 Nov 6, 2025
615812d
chore(*): eslint updates
dackers86 Nov 6, 2025
c87b558
feat(shadcn): added onsuccess to mfa assertion form
dackers86 Nov 6, 2025
f9c6178
fix(shadcn): updated test imports to Invertase
dackers86 Nov 6, 2025
d7ae6ad
fix(react): updated test imports to Invertase
dackers86 Nov 6, 2025
cd763ce
feat(*): Added updated dependencies for Invertase packages
dackers86 Nov 6, 2025
1291372
chore(*): release packages
dackers86 Nov 6, 2025
9b5bb5b
chore(*): pre-publish script updates
dackers86 Nov 6, 2025
1d10d39
fix(*): improve packae build order
dackers86 Nov 6, 2025
2f5fea8
chore: Update shadcn example vs registry deployment
Ehesp Nov 6, 2025
4e16e60
chore: Fix shadcn example build script
Ehesp Nov 6, 2025
6fb9fde
chore(*): updated nextjs ssg example
dackers86 Nov 7, 2025
219011d
chore(*): regenerate lockfile
dackers86 Nov 7, 2025
9358247
fix(*): added multi-platform support for register version
dackers86 Nov 7, 2025
fdaa47b
fix(shadcn): Remove duplicate display name field (bb-64)
Ehesp Nov 7, 2025
1c1a528
chore(*): added nextjs ssr example
dackers86 Nov 7, 2025
ebe4ef4
chore(*): upgraded react example app to the latets packages
dackers86 Nov 7, 2025
8a4570e
chore(*): add deploy:all script
dackers86 Nov 7, 2025
abac015
fix(react): Correctly throw when no context is found (bb-63)
Ehesp Nov 7, 2025
6be86bf
chore: Update repos with correct npm namespace
Ehesp Nov 7, 2025
14a2848
chore: Update example
Ehesp Nov 7, 2025
153471f
chore(*): merged latest
dackers86 Nov 7, 2025
cc20ddc
Merge branch '@invertase/v7-development' of https://github.com/fireba…
dackers86 Nov 7, 2025
aa4cbd8
chore(*): ran format and linting
dackers86 Nov 7, 2025
652322d
chore(*): updated next example app to new test project
dackers86 Nov 7, 2025
df5b407
chore(*): merged latest
dackers86 Nov 7, 2025
d0efb36
fix(core): Depend on workspace translations
Ehesp Nov 7, 2025
8c22319
fix(translations): Update translation text to be less specific
Ehesp Nov 7, 2025
b42bc95
chore: lock file regen
Ehesp Nov 7, 2025
657f94c
chore(*): fixed linting
dackers86 Nov 7, 2025
6410492
chore(react): updated example app to use latest packages
dackers86 Nov 7, 2025
13740f5
fix(translations): Add invalid credential translations
Ehesp Nov 7, 2025
382bb09
chore(*): regen lock files
dackers86 Nov 7, 2025
cd8dd19
fix(react): Add descriptiont to SMS MFA verification
Ehesp Nov 7, 2025
68b0c7d
fix(shadcn): Add SMS description to form
Ehesp Nov 7, 2025
f881f22
feat(react): Add TOTP description improve layout
Ehesp Nov 7, 2025
99f8b53
fix(*): removed redundant useEffects
dackers86 Nov 7, 2025
06669c1
feat(shadcn): Add secret key to TOTP enrollment
Ehesp Nov 7, 2025
06c2334
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 7, 2025
dea622d
fix(*): added multi-platform support for register version
dackers86 Nov 7, 2025
79d43cf
Merge branch '@invertase/v7-development' of https://github.com/fireba…
dackers86 Nov 7, 2025
411f3d6
chore(*): release packages
dackers86 Nov 7, 2025
c797e14
fix(react,shadcn): Add descriptions to MFA flows
Ehesp Nov 7, 2025
00af1b1
chore(react): Remove redundant api
Ehesp Nov 7, 2025
1076606
chore(react): updated deploy config for nextjs-ssg
dackers86 Nov 7, 2025
573e638
feat(react,shadcn): Add useMultiFactorAssertionCleanup utility hook
Ehesp Nov 7, 2025
6f92fcb
chore(*): fixed linting and test errors
dackers86 Nov 7, 2025
22fbe6f
chore: Add pirate locale to react example
Ehesp Nov 7, 2025
dd318bf
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 7, 2025
1794e60
chore(*): merged latest
dackers86 Nov 7, 2025
cc59c5d
chore(*): fixed test errors
dackers86 Nov 7, 2025
de3dfb1
chore(*): updated nextjs ssg example
dackers86 Nov 7, 2025
17c7a53
chore(*): regenrate lock file
dackers86 Nov 7, 2025
06cfb91
chore(*): merged latest
dackers86 Nov 7, 2025
a12a06f
chore: Sync shadc components + add pirate mode
Ehesp Nov 7, 2025
2b6c337
Merge branch '@invertase/v7-development' of https://github.com/fireba…
Ehesp Nov 7, 2025
661e5dd
chore(*): updated nextjs-ssr config
dackers86 Nov 7, 2025
3d85832
fix(react,shadcn): Add description to SMS verification code input
Ehesp Nov 7, 2025
f777793
chore: Formatting
Ehesp Nov 7, 2025
d203cd8
chore: Fix failing shad test with otp delay
Ehesp Nov 7, 2025
bbfe728
chore: Add line sign in button to examples
Ehesp Nov 7, 2025
cf90b5c
chore: Add react line css
Ehesp Nov 7, 2025
bb2ae71
chore(nextjs): updated hosting for nextjs-ssr
dackers86 Nov 7, 2025
f8241c4
chore(*): merged latest
dackers86 Nov 7, 2025
08cb3f6
chore(*) ran linting & formatting
dackers86 Nov 7, 2025
fd531ef
chore(*): upgraded react example app to the latest packages
dackers86 Nov 7, 2025
c780bde
feat(angular): Add MFA assertion screen
Ehesp Nov 8, 2025
b545c11
fix(angular): Remove redirect error from forgot password
Ehesp Nov 8, 2025
8ad393e
fix(angular): Align MFA Assertion screen
Ehesp Nov 8, 2025
2490dfe
fix(angular): Align MFA enrollment screen
Ehesp Nov 8, 2025
109ec38
fix(angular): Sync phone auth screen
Ehesp Nov 8, 2025
e6d443e
fix(angular): Align sign in screen
Ehesp Nov 8, 2025
9972d68
fix(angular): Align sign up screen
Ehesp Nov 8, 2025
7b4ffee
feat(angular): Add input form description
Ehesp Nov 8, 2025
14efac1
fix(angular): Align email link form
Ehesp Nov 8, 2025
df5a5d6
fix(angular): Align forgot password form
Ehesp Nov 8, 2025
b27a0fa
fix(angular): Align MFA assertion form
Ehesp Nov 8, 2025
0fdfab9
fix(angular): Align MFA enrollment form
Ehesp Nov 8, 2025
dbdbd23
fix(angular): Align phone auth form
Ehesp Nov 8, 2025
4ca47b5
fix(angular): Align sign in form
Ehesp Nov 8, 2025
9483de6
fix(angular): Align sign up form
Ehesp Nov 8, 2025
cf9e39b
fix(angular): Align SMS MFA assertion form
Ehesp Nov 8, 2025
70e9f4c
fix(angular): Align SMS MFA Enrollment form
Ehesp Nov 8, 2025
4635950
fix(angular): Align TOTP MFA assertion form
Ehesp Nov 8, 2025
70b9434
fix(angular): Align TOTP MFA enrollment form
Ehesp Nov 8, 2025
a7c2bcf
chore: linting
Ehesp Nov 8, 2025
721444e
fix(angular): Align oauth button
Ehesp Nov 8, 2025
2a34562
chore: Run formatting
Ehesp Nov 8, 2025
daba3c7
fix(angular): Add missing exports
Ehesp Nov 8, 2025
35b4fae
chore: Update angular example styling
Ehesp Nov 8, 2025
02ceaa4
fix(angular): Forms use input event emitter to handle conditional ren…
Ehesp Nov 8, 2025
052c495
refactor(angular): Set components to host block by default
Ehesp Nov 8, 2025
d3304aa
fix(angular): Add dependency array + recaptcha SSR check
Ehesp Nov 10, 2025
4f7915c
fix(angular): Update country code option tracking
Ehesp Nov 10, 2025
f2e8173
fix(angular): Minor UI tweaks
Ehesp Nov 10, 2025
919515b
chore(angular): Add redirect handlers to example app
Ehesp Nov 10, 2025
510bde7
chore: Formatting
Ehesp Nov 10, 2025
824ca23
fix(angular): Update tests with latest changes
Ehesp Nov 10, 2025
3504d1e
chore: Add banner
Ehesp Nov 10, 2025
fb9676d
feat(angular): Updated Angular package and example application
dackers86 Nov 10, 2025
2d67c44
fix(react): Statically replace import.meta.env at build time
Ehesp Nov 10, 2025
b90984c
fix(core): Statically compile import.meta
Ehesp Nov 10, 2025
033b494
chore(*): release packages
dackers86 Nov 10, 2025
60914c7
chore(): regenerate package lock
dackers86 Nov 10, 2025
4d526c2
fix(core,react): Statically replace import.meta.env at build time
dackers86 Nov 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
53 changes: 53 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
name: Bug report
about: Create a report to help us improve
---

<!-- Step 1 [READ THIS] -->
<!--
Are you in the right place?
* For issues or feature requests related to __the code in this repository__
file a Github issue.
* If this is a __feature request__ make sure the issue title starts with "FR:".
* For general technical questions, post a question on [StackOverflow](http://stackoverflow.com/)
with the firebase-authentication tag.
* For general Firebase discussion, use the [firebase-talk](https://groups.google.com/forum/#!forum/firebase-talk)
google group.
* For help troubleshooting your application that does not fall under one
of the above categories, reach out to the personalized
[Firebase support channel](https://firebase.google.com/support/).
-->

<!-- Step 2 -->

### [REQUIRED] Describe your environment

- Operating System version: **\_**
- Browser version: **\_**
- Firebase UI version: **\_**
- Firebase SDK version: **\_**
- Package name: **\_**

<!-- Step 3 -->

### [REQUIRED] Describe the problem

#### Steps to reproduce

<!--
What happened? How can we make the problem occur?
This could be a description, log/console output, etc.
-->

#### Relevant Code

<!--
Reproduce the issue on StackBlitz and provide your forked URL
or give us some sample code below
-->

<https://stackblitz.com/fork/firebase-issue-sandbox>

```javascript
// TODO(you): code here to reproduce the problem
```
16 changes: 16 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
name: Feature request
about: Suggest an idea for this project
---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
Binary file added .github/readme-banner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
35 changes: 35 additions & 0 deletions .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Lint and Format Check

on:
push:
branches:
- "@invertase/v7-development"
pull_request:

jobs:
lint:
name: Lint and Format Check
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'

- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Run ESLint check
run: pnpm run lint:check

- name: Run Prettier check
run: pnpm run format:check
49 changes: 49 additions & 0 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Test

on:
push:
branches:
- "@invertase/v7-development"
pull_request:

jobs:

test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup node
uses: actions/setup-node@v4
with:
node-version: '20'
check-latest: true

- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: latest

- name: Install dependencies
run: pnpm install

- name: Build packages
run: pnpm run build

- name: Install Firebase CLI
run: npm i -g firebase-tools@14.15.2

- name: Start Firebase emulator
run: |
firebase emulators:start --only auth --project demo-test &
sleep 15
# Wait for emulator to be ready
until wget -q --spider http://localhost:9099 2>/dev/null; do
echo "Waiting for emulator to start..."
sleep 2
done
echo "Emulator is ready"

- name: Run tests
run: pnpm test
13 changes: 13 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,19 @@ dist
dist-ssr
*.local

# Angular
.angular
.firebase

# Next.js
.next

# Coverage
coverage

# Firebase
.firebase

# Editor directories and files
.vscode/*
!.vscode/extensions.json
Expand Down
26 changes: 10 additions & 16 deletions .opensource/project.json
Original file line number Diff line number Diff line change
@@ -1,19 +1,13 @@
{
"name": "FirebaseUI for Web",

"platforms": [
"Web"
],

"content": "README.md",
"name": "FirebaseUI for Web",

"pages" : {
"LANGUAGES.md": "Supported Languages"
},
"related": [
"firebase/firebaseui-android",
"firebase/firebaseui-ios",
"firebase/firebaseui-web-react"
]
"platforms": ["Web"],

"content": "README.md",

"pages": {
"LANGUAGES.md": "Supported Languages"
},

"related": ["firebase/firebaseui-android", "firebase/firebaseui-ios", "firebase/firebaseui-web-react"]
}
23 changes: 23 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Dependencies
node_modules/
pnpm-lock.yaml
package-lock.json
yarn.lock

# Build outputs
dist/
build/
.angular/
releases/

# Generated files
*.min.js
*.min.css
packages/styles/dist.css

# Logs
*.log

# OS generated files
.DS_Store
Thumbs.db
5 changes: 3 additions & 2 deletions packages/firebaseui-core/.prettierrc → .prettierrc
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
{
"semi": true,
"trailingComma": "es5",
"singleQuote": true,
"singleQuote": false,
"printWidth": 120,
"tabWidth": 2,
"useTabs": false
"useTabs": false,
"endOfLine": "auto"
}
49 changes: 49 additions & 0 deletions GEMINI.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Firebase UI for Web

A library for building UIs with Firebase, with first class support for Angular and shad (with Shadcn).

## General rules

- The workspace is managed with pnpm. Always use pnpm commands for installation and execution.
- This is a monorepo, with `packages` and `examples` sub-directories.
- Linting is controlled by ESLint, via a root flatconfig `eslint.config.ts` file. Run `pnpm lint:check` for linting errors.
- Formatting is controlled vi Prettier integrated with ESLint via the `.prettierrc` file. Run `pnpm format:check` for formatting errors.
- The workspace uses pnpm cataloges to ensure dependency version alignment. If a dependency exists twice, it should be cataloged.
- Tests can be run for the entire workspace via `pnpm test` or scoped to a package via `test:<name>`.

## Structure

The project structure is setup in a way which provides a framework agnostic set of packages; `core`, `translations` and `styles`.

- `core`: The main entry-point to the package via `initalizeUI`. Firebase UI provides it's own functional exports, which when called wraps the Firebase JS SDK functionality, however manages state, translated error handling and behaviors (configurable by the user).
- `translations`: A package exporting utilities and translation mappings for various languages, which `core` depends on.
- `styles`: A package providing CSS utility classes which frameworks can use to provide consistent styling. The `styles` package works for existing Tailwind users, but also exports a distributable file with compiled "tailwindless" CSS. The CSS styles heavily depend on CSS variables for customization.

Additionally, framework specific packages depend on these agnostic packages to offer full integration with the frameworks:

- `react`: Exposes React UI components (in the form of screens, full page components, or forms, the bare-bones UI forms) & hooks, enabling users to easily build their own UIs or consume the built in ones.
- `angular`: Exposes Angular UI components (in the form of screens, full page components, or forms, the bare-bones UI forms) & DI functionality, enabling users to easily build their own UIs or consume the built in ones. This package depends directly on AngularFire.

The dependency graph is:

```
graph TD
core --> translations;
react --> core;
angular --> core;
angular --> styles;
react --> styles;
shadcn --> react;
```

## Misc

- All packages extend the same base `tsconfig.json` file.
- Where possible, prefer Vitest testing framework.

## Additional Context

- `core`: @./packages/core/GEMINI.md
- `react`: @./packages/react/GEMINI.md
- `styles`: @./packages/styles/GEMINI.md
- `translations`: @./packages/translations/GEMINI.md
Loading