authify-tokenize is a lightweight library designed for managing authentication in MERN stack applications using JWT tokens. With this library, you can easily implement user registration, login, sign-out, and profile data retrieval in just a few lines of code. It streamlines the authentication process, saving you hours of development work.
- Lightweight Library: Minimalistic design ensures fast performance.
- JWT Token Verification: Securely verifies tokens for protected routes.
- Easy Authentication Flow: Built-in functions for login, registration, sign-out, and fetching user profiles.
- Middleware Support: Attach authentication middleware to any of your routes with ease.
- Configuration: Simple setup with MongoDB URI and JWT secret key.
You can install the library via npm:
npm install authify-tokenize
const express = require('express');
const { initAuthLibrary, authMiddleware } = require('authify-tokenize');
const app = express();
const PORT = process.env.PORT || 3000;
// Initialize your auth library
const authApp = initAuthLibrary({
mongoURI: 'your_mongodb_uri_here',
jwtSecret: 'your_jwt_secret_here',
});
// Use the auth routes
app.use(authApp);
// Example protected route
app.get('/protected', authMiddleware, (req, res) => {
res.send(`Hello ${req.user.username}, this is a protected route!`);
});
app.listen(PORT, () => {
console.log(`Server running on http://localhost:${PORT}`);
});
-
Path:
{Base_URL}/login
-
Method:
POST
-
Payload:
{ "email": "john@example.com", "password": "password_here" }
-
Path:
{Base_URL}/register
-
Method:
POST
-
Payload:
{ "email": "john@example.com", "password": "password_here", "name": "John Doe", "phone": "123-456-7890" }
-
Path:
{Base_URL}/signout
-
Method:
POST
-
Path:
{Base_URL}/me
-
Method:
GET
-
Headers:
-
Authorization
:Bearer <your_token_here>
-
Replace {Base_URL}
with your actual base URL in your project.
app.get('/profile', authMiddleware, (req, res) => {
// Access user data from the request
res.json({
username: req.user.username,
email: req.user.email,
});
});
With authify-tokenize, implementing authentication in your MERN application becomes a breeze. Its lightweight design, combined with powerful features, allows you to focus on building your application rather than worrying about authentication complexities.