    encryption, 256 Bit AES-CBC encryption and NIST P-521 EC) signatures.
`npm install @questnetwork/quest-os-js@0.9.4
OR
``
git clone https://github.com/QuestNetwork/quest-os-js && cd quest-os-js && git checkout 0.9.3 && cd ..
Boots the operating system. The GitHub branches master/0.9.2/0.9.3+ boot with:
JavaScript/NodeJS
``
import { qOS } from '@questnetwork/quest-os-js'
// configure with a bootstrap swarm peer, for testing you can use:
let config = {
ipfs: {
Swarm: [
API: '',
Gateway: ''
},
version:
dev:
};
// boot the operating system
qOS.boot().then( () => {
//the operating system is online, build the future
})
TypeScript/Angular Service
`
import { Injectable } from '@angular/core';
import { qOS } from '@questnetwork/quest-os-js';
import * as swarmJson from '../swarm.json';
import packageJson from '../../../package.json';
const version = packageJson.version;
@Injectable({
providedIn: 'root'
})
export class QuestOSService {
public os;
ready = false;
config;
constructor() {
this.config = {
ipfs: {
Swarm: swarmJson['ipfs']['Swarm'],
API: '',
Gateway: ''
},
version: version,
dev: swarmJson['dev']
};
this.os = qOS;
}
async boot(){
try{
await this.os.boot(this.config);
this.ready = true;
}
catch(e){
throw(e);
}
}
}
`
Returns true once boot is complete, otherwise returns false.
``
if(
console.log("Ready To Sign In");
};
Returns a Subject that pushes next when boot is complete
``
if(
console.log("Ready To Sign In");
});
Reboots the entire system
``
``
if(
console.log("Hello Universe");
};
Locks the system from saving any changes
``
Unlocks the system from saving changes and saves changes normally
``
Sets the storage location for the app. Normally Quest OS does this automatically and you do not need to call this function.
Possible locations are: "Download","LocalStorage" or "ConfigFile"
``
Returns a string with the current storage location
``
Activates Accounts. Empty config creates a new account
``$3

Deactivates Accounts And Restarts The Interface On The Web, Closes The Current Window In Electron
``
Returns a subscribable Subject that fires when the account is signed in.
``
console.log("Hello Universe");
});
Returns a boolean true or false
``
if(
console.log("Hello Universe");
};
#### async channel.create(dirtyChannelName, parentFolderId = "")
 
Returns the clean channel name
``
let claenChannelName = await
#### channel.remove(cleanChannelName)
 
Removes a channel
``
#### channel.listen(cleanChannelName)

Returns a Subject that forwards non-system channel messages.
``
console.log(msg);
}
#### async channel.publish(cleanChannelName, message, type = 'CHANNEL_MESSAGE')

Returns a Subject that forwards non-system channel messages.
``
await
#### channel.challenge.enable(cleanChannelName)

Opens the channel to everyone who can solve the Captcha provided by Quest Image Captcha JS
``
#### channel.challenge.disable(cleanChannelName)

Closes the channel to invite only participation
``
#### channel.challenge.isEnabled(cleanChannelName)

``
if(
console.log("Hello Universe");
};
#### channel.invite.create(cleanChannelName,newInviteCodeMax, exportFolders = false)
 
Creates a new channel invite, specify max uses of this invite code and whether or not to include your folder structure.
``
#### channel.invite.remove(cleanChannelName,link)
 
Removes a channel invite
``
#### channel.invite.get(channel)

Gets all invites for a channel
``
let invites =
#### channel.invite.get(channel)

Gets all invites for a channel
``
let invites =
Unfortunately nobody is working on a detailed API documentation yet, until then check out the source in qDesk Messages 0.9.3+ to see how to use the OS.
We recommend to use our quest-cli to test and build the package. It allows you to bootstrap your Quest Network apps with the same peers and settings.
Pro Tip: Put a file in your /bin that runs the quest-cli like so node /path/to/quest-cli/index.js from any folder on your system. It's much nicer!
0.9.2
- Encrypted P2P Channels
- API for high level IPFS functionality
- Saves Config
- Quest Ocean JS
- Quest Bee JS
0.9.3
- Quest Social JS
- Documentation Extended
- Easier Access
- Offer "LocalStorage" As A Storage Container On The Web To Stay Signed In
0.9.4
Change Peer Configuration in browser, Electron and on NodeJS
0.9.4
- Democratically block or mute peers
- Faux requests. Send request in channel, wait for response, deliver response as if it was an http request.
| Ethereum| Bitcoin |
|---|---|
| 0xBC2A050E7B87610Bc29657e7e7901DdBA6f2D34E | bc1qujrqa3s34r5h0exgmmcuf8ejhyydm8wwja4fmq` |
|
|
|