@yellowman617/securepass-pro-sdk
v1.0.0
Published
Official JavaScript SDK for SecurePass Pro - The most secure password generator with cryptographically secure 256-bit encryption
Maintainers
Readme
SecurePass Pro JavaScript SDK
Official JavaScript SDK for SecurePass Pro - The most secure password generator with cryptographically secure 256-bit encryption and zero-storage architecture.
🚀 Features
- ✅ Cryptographically Secure - 256-bit encryption & CSPRNG
- ✅ Zero Storage - Passwords never stored on servers
- ✅ Bulk Generation - Generate up to 1000 passwords at once
- ✅ Team Management - Add, remove, and manage team members
- ✅ Usage Tracking - Monitor password generation limits
- ✅ Cross-Platform - Works in Node.js and browsers
- ✅ TypeScript Support - Full type definitions included
- ✅ Enterprise Ready - Role-based access control
📦 Installation
npm install securepass-pro-sdk🎯 Quick Start
import SecurePassSDK from 'securepass-pro-sdk';
// Initialize with your API key
const sdk = new SecurePassSDK('your-api-key-here');
// Generate a secure password
const password = await sdk.generatePassword({ length: 16 });
console.log(password.password); // Your generated password📋 API Reference
Constructor
const sdk = new SecurePassSDK(apiKey, options);Parameters:
apiKey(string): Your SecurePass Pro API keyoptions(object, optional):baseURL(string): Custom API URL (default:https://securepasspro.com/api)timeout(number): Request timeout in ms (default:10000)
Methods
generatePassword(options)
Generate a single secure password.
const password = await sdk.generatePassword({
length: 16, // 8-64 characters
});generateBulkPasswords(count, options)
Generate multiple passwords (up to 1000).
const bulkPasswords = await sdk.generateBulkPasswords(10, {
length: 16
});
console.log(bulkPasswords.passwords); // Array of passwordsgetTeamInfo(teamId)
Get team information and member list.
const teamInfo = await sdk.getTeamInfo('team_12345');
console.log(teamInfo.team.members); // Team membersaddTeamMember(teamId, email, role)
Add a new member to your team.
const result = await sdk.addTeamMember('team_12345', '[email protected]', 'member');removeTeamMember(teamId, email)
Remove a member from your team.
const result = await sdk.removeTeamMember('team_12345', '[email protected]');updateTeamMemberRole(teamId, email, role)
Update a team member's role.
const result = await sdk.updateTeamMemberRole('team_12345', '[email protected]', 'admin');getUsage()
Get your current usage statistics.
const usage = await sdk.getUsage();
console.log(usage.plan); // Your current plan
console.log(usage.usedGenerations); // Passwords used this monthtestConnection()
Test API connection and authentication.
const test = await sdk.testConnection();
console.log(test.success); // true/false🔒 Security Features
- Input Validation - All inputs are validated and sanitized
- Request Timeout - 10-second timeout protection
- Rate Limiting - Built-in rate limiting support
- API Key Validation - Secure API key format checking
- Character Limits - 8-64 character password limits
- Bulk Limits - Maximum 1000 passwords per bulk request
- Error Handling - Secure error messages without data exposure
📊 Plan Limits
| Plan | Monthly Limit | Bulk Generation | Team Management | |------|---------------|-----------------|-----------------| | Basic | 10 passwords | ❌ | ❌ | | Pro | 20 passwords | ✅ (20/month) | ✅ | | Enterprise | Unlimited | ✅ (Unlimited) | ✅ | | Annual | Unlimited | ✅ (Unlimited) | ✅ |
🛠️ Examples
React Component
import React, { useState } from 'react';
import SecurePassSDK from 'securepass-pro-sdk';
function PasswordGenerator() {
const [password, setPassword] = useState('');
const sdk = new SecurePassSDK('your-api-key');
const generatePassword = async () => {
try {
const result = await sdk.generatePassword({ length: 20 });
setPassword(result.password);
} catch (error) {
console.error('Failed to generate password:', error);
}
};
return (
<div>
<button onClick={generatePassword}>Generate Password</button>
{password && <p>Generated: {password}</p>}
</div>
);
}Node.js Server
const SecurePassSDK = require('securepass-pro-sdk');
const sdk = new SecurePassSDK('your-api-key');
async function generatePasswords() {
try {
// Generate single password
const password = await sdk.generatePassword({ length: 32 });
console.log('Password:', password.password);
// Generate bulk passwords
const bulkPasswords = await sdk.generateBulkPasswords(10, { length: 16 });
console.log('Bulk passwords:', bulkPasswords.passwords);
// Check usage
const usage = await sdk.getUsage();
console.log('Usage:', usage);
} catch (error) {
console.error('Error:', error.message);
}
}
generatePasswords();Team Management
const sdk = new SecurePassSDK('your-api-key');
// Get team info
const teamInfo = await sdk.getTeamInfo('team_12345');
console.log('Team members:', teamInfo.team.members);
// Add new member
await sdk.addTeamMember('team_12345', '[email protected]', 'member');
// Update role
await sdk.updateTeamMemberRole('team_12345', '[email protected]', 'admin');🚨 Important Notes
- API Key Security - Never expose your API key in client-side code
- Rate Limits - Respect the rate limits for your plan
- Error Handling - Always handle errors gracefully
- Testing - Use
testConnection()to verify your setup
🆘 Support
- Documentation: https://securepasspro.co/docs
- API Reference: https://securepasspro.co/api-docs
- Support: [email protected]
- GitHub: https://github.com/securepasspro/securepass-sdk-js
📄 License
MIT License - see LICENSE file for details.
Built with ❤️ by the SecurePass Pro Team
The most secure password generator with cryptographically secure 256-bit encryption and zero-storage architecture.
