id.ly
The majority of user data today is stored on massive, server-centric systems that are often vulnerable to data breaches. id.ly is a cross-platform app developed to implement a self-sovereign identity system. id.ly uses an RSA public-key cryptosystem to share business cards and messages using encrypted json files. Users connect to each other via bluetooth and can be assured that the information shared is genuine and verified, since every user has full control over their data and with whom they choose to share it.
Getting Started
These instructions will get you a copy of the project up and running on your local machine. This app has not been released to either the Apple App Store or Google Play so at this time can only be run in development mode.
Installing
Clone a copy of the repository into your local machine. Run npm install
to install the node.js packages.
Running the app
For best results for permormance and testing, apps should be launched from either Android Studio or Xcode. However, simulators may also be used.
Sometimes you may need to reset or clear the React Native packager's cache. To do so, you can pass the --reset-cache
flag to the start script:
npm start --reset-cache
# or
yarn start --reset-cache
react-native run-ios
Attempts to open the app in the iOS Simulator if you're on a Mac and have it installed.
react-native run-android
Attempts to open the app on a connected Android device or emulator. Requires an installation of Android build tools (see React Native docs for detailed setup).
Running Tests
Snapshot testing functionality was built into this project using jest test framework. Run using npm test
and snapshots will be generated in the components folder under __tests__. Update changed snapshots using npm test -- -u
.
Built With
- Create React Native App
- React Native
- Redux
- Redux Thunk
- Enzyme
- React Native ActionSheet
- React Native AES Kit
- React Native Autogrow Text Input
- React Native Camera
- React Native Elements
- React Native Fetch Blob
- React Native Gifted Chat
- React Native Image Picker
- React Native Keyboard Aware Scroll View
- React Native Keyboard Spacer
- React Native Permissions
- React Native QR Code
- React Native Router Flux
- React Native RSA
- React Native Sensitive Info
- React Native Simple Toast
- React Native Vector Icons
Contributing
This app is a senior captone project for a group of computer science students at Portland State University. As such it is not currently available for outside contribution. However, please feel free to use the code for your own development as per the terms of the license.
Acknowledgements
- Alan Anderson-Priddy - Initial work
- Kal Toth, NextGenID - Subject matter expert and consultant
See also the developers of this project under contributors who participated in this project.
License
This project is licensed under the MIT License - see the LICENSE.md file for details