
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
naim-firebase-auth-wrapper
Advanced tools
React components and hooks for Firebase Authentication and Firestore with Mantine UI
A lightweight React component library for Firebase Authentication and Firestore that simplifies user management, authentication, and organization handling.
This package provides ready-to-use React components and hooks that handle:
All components are built with Mantine UI for a modern, responsive design.
npm install naim-firebase-auth-wrapper
# or
yarn add naim-firebase-auth-wrapper
// _app.jsx or App.jsx
import { AuthProvider } from 'naim-firebase-auth-wrapper';
import 'naim-firebase-auth-wrapper/style.css';
const firebaseConfig = {
apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY,
authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN,
projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID,
// ... other Firebase config
};
function MyApp({ Component, pageProps }) {
return (
<AuthProvider config={firebaseConfig}>
<Component {...pageProps} />
</AuthProvider>
);
}
export default MyApp;
import { Login, Register, Logout } from 'naim-firebase-auth-wrapper';
// Login component
function LoginPage() {
return (
<Login
onSuccess={() => console.log('Login successful')}
onError={(error) => console.error('Login failed:', error)}
onRegisterClick={() => navigate('/register')}
/>
);
}
// Register component
function RegisterPage() {
return (
<Register
onSuccess={() => console.log('Registration successful')}
onError={(error) => console.error('Registration failed:', error)}
onLoginClick={() => navigate('/login')}
/>
);
}
// Logout button
function LogoutButton() {
return (
<Logout
onSuccess={() => console.log('Logout successful')}
onError={(error) => console.error('Logout failed:', error)}
/>
);
}
import { useAuth } from 'naim-firebase-auth-wrapper';
function ProfilePage() {
const { user, loading, error } = useAuth();
if (loading) return <div>Loading...</div>;
if (error) return <div>Error: {error.message}</div>;
if (!user) return <div>Please log in</div>;
return (
<div>
<h1>Welcome, {user.displayName || user.email}</h1>
<p>Email: {user.email}</p>
</div>
);
}
import { UserProfile } from 'naim-firebase-auth-wrapper';
function ProfilePage() {
return (
<UserProfile
onSuccess={() => console.log('Profile updated')}
onError={(error) => console.error('Profile update failed:', error)}
/>
);
}
import {
OrganizationManagement,
CreateOrganization
} from 'naim-firebase-auth-wrapper';
function OrganizationsPage() {
return (
<div>
<h1>Your Organizations</h1>
<OrganizationManagement
onError={(error) => console.error('Organization error:', error)}
/>
<h2>Create New Organization</h2>
<CreateOrganization
onSuccess={(orgId) => console.log('Organization created:', orgId)}
onError={(error) => console.error('Organization creation failed:', error)}
/>
</div>
);
}
When using with Next.js, make sure to:
'use client' directive to components using this librarytranspilePackages in your next.config.js:// next.config.js
module.exports = {
transpilePackages: ['naim-firebase-auth-wrapper']
}
AuthProvider - Context provider for authentication stateLogin - Email/password and Google sign-in formRegister - User registration formLogout - Logout buttonUserProfile - User profile management formPasswordChange - Password change formOrganizationManagement - Organization management dashboardCreateOrganization - Organization creation formOrganizationSelector - Dropdown to select current organizationSessionManager - User session managementInviteUserForm - Form to invite users to an organizationInvitationList - List of pending invitationsAcceptInvitation - Component to accept/decline invitationsFor detailed API documentation, see the API Reference.
Check out the included Next.js example application that demonstrates all features:
# Clone the repository
git clone https://github.com/NaimSakaamini/user-management.git
# Install dependencies
cd user-management
npm install
# Run the example app
npm run example:setup
MIT © Naim Sakaamini
FAQs
React components and hooks for Firebase Authentication and Firestore with Mantine UI
We found that naim-firebase-auth-wrapper demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.