Managing a User Profile
This example creates a master file, adds a user profile as a content file, updates it, and sets up real-time updates.
import { Ulda } from '@zeroam/ulda'; async function manageUserProfile() { const ulda = new Ulda('your_api_key', 'https://api.0am.ch', true); const masterFileName = 'userVault'; // Unique per API key const password = 'securePass123'; try { // Create and connect to master file await ulda.createMasterFile(masterFileName, password); await ulda.connect(masterFileName, password); // Create user profile (content file) const profileData = { username: 'Bob', email: 'bob@example.com' }; await ulda.createContentFile(profileData, 'bobProfile'); // Unique in master file console.log('Profile created:', ulda.data['bobProfile'].content); // Update user profile await ulda.data['bobProfile'].update({ email: 'bob.new@example.com', role: 'user' }); console.log('Updated profile:', ulda.data['bobProfile'].content); // Set up real-time updates await ulda.connectToUpdateContentFile((response) => { console.log('Profile updated in real-time:', response); }); } catch (error) { console.error('Error:', error.message); } } manageUserProfile().catch(console.error);
Success Output:
Profile created: { username: 'Bob', email: 'bob@example.com' } Updated profile: { username: 'Bob', email: 'bob.new@example.com', role: 'user' }
Notes:
- Real-time update output is omitted as it depends on external
content:update
events. - Outputs reflect successful
createContentFile
andupdate
operations.