Welcome to the XQ technical assessment!
XQ Message is an encryption-as-a-service (EaaS) platform which gives you the tools to encrypt and route data to and from devices like mobile phones, IoT, and connected devices that are at the "edge" of the internet. The XQ platform is a lightweight and highly secure cybersecurity solution that enables self protecting data for perimeterless zero trust data protection, even to devices and apps that have no ability to do so natively.
IMPORTANT
In order to utilize the XQ Javascript SDK and interact with XQ servers you will need both a General
API key. To generate this key, follow these steps:
- Go to your XQ management portal.
- Select or create an application.
- Create a
General
andDashboard
keys for the XQ framework API. - Add them as environment variables,
REACT_APP_XQ_API
andREACT_APP_XQ_DASH
respectively - If running code on demo api: In node_modules,
ctrl+shift+f
replacesubscription.xqmsg.net
withdemo-subscription.xqmsg.net
andvalidation.xqmsg.net
withdemo-validation.xqmsg.net
- Use of the XQ Javascript SDK
- User can successfully encrypt a string, view the encrypted value, and successfully decrypt and view the decrypted string
- Use of React Hooks
- Unit test coverage
- A basic
README.md
(feel free to replace this one, or to rename it) explaining your implementation in simple terms
- Design - The app is functional and has stylistic flair! Colors, size, placement, sequencing, transitions, etc.
- Documentation - code doesn't always have implicit meaning/explanation. Feel free to add relevant in-line documentation to communicate concepts and functionality of certain functions or snippets.
- Developer experience (DX) additions - are there any utilities or tools to help the flow of development, especially if this project were passed to another member of your team?
Simply create a zip folder of this project and send it to jobs@xqmsg.com
This project requires the latest LTS version of NodeJS. You may also need to install the yarn as global dependency:
npm install -g yarn
After you have cloned this repo and install the yarn, install the dependencies with:
yarn install
You can then start the application running:
yarn start
That's it! Just Access http://localhost:3000
in your browser.
yarn lint
yarn format
yarn test