Electron
Electron is a free and open-source software framework developed and maintained by GitHub. It allows for the development of desktop GUI applications using web technologies.
1. To use SAWO Login you would need an API key which can be obtained by creating a project in the sawo dashboard.
2. Once you create your project, you would need to set your project name and hostname.
2.1. For development and production, the hostname should be set to 'localhost'.
If using ''localhost" as hostname is not working for you, try "127.0.0.1"
🤓
3. Copy the API key from the project and keep it safe and secure.
The best practice to store your API key is to store values in .env so that they are not exposed.
4. On your source, create a container for sawo component inside
body
tag<div id="sawo-container" style="height: 300px; width: 300px;"></div>
Every added custom field should be accompanied by a
50px
increase in the component height.5. Include
sawo-electron.min.js
to your source, follow either of following method 1. If you have Content Security Policy enabled, download the sawo-electron.min.js
using following command and include it in your root source directorywget https://websdk.sawolabs.com/sawo-electron.min.js
<script src="sawo-electron.min.js"></script>
If you don't have Content Security Policy enabled, include
sawo-electron.min.js
in your source using<script src="https://websdk.sawolabs.com/sawo-electron.min.js"></script>
6. Add the snippet at bottom of source inside
body
tag<script>
var config = {
// should be same as the id of the container created on 3rd step
containerID: "sawo-container",
// can be one of 'email' or 'phone_number_sms' or 'both_email_phone'
identifierType: "phone_number_sms",
// Add the API key copied from 2nd step
apiKey: "",
// Add a callback here to handle the payload sent by sdk
onSuccess: (payload) => {
console.log(payload)
},
};
var sawo = new Sawo(config);
sawo.showForm();
</script>
7. Recommended: Verify the payload sent by sdk from your backend: Python example:
import requests
data = {
'user_id': payload_sent_from_sdk['user_id']
}
res = requests.post('http://api.sawolabs.com/api/v1/userverify/', data=data)
# Match the verification token in response with sdk payload
if res.status_code == 200:
response_data = res.json()
if response_data['verification_token'] \
== payload_sent_from_sdk['verification_token']:
# continue with your implementation for example add the user to your db
Once the SAWO SDK is successfully set up, a login form will be rendered in the provided container as displayed in the picture below:

Congratulations !! The SAWO API is now ready to be used in your Electron application 🤘.
Last modified 11mo ago