This project aims to build a secure and scalable microcredential system using Rust for the backend, MongoDB for data storage, and React Native for the mobile app. The project leverages the Linera SDK for microchain management and transaction handling.
- Backend: Built with Rust and Actix Web for high performance and safety.
- Database: Utilizes MongoDB for flexible and scalable data storage.
- API Design: RESTful API documented with OpenAPI (Swagger).
- Linera SDK Integration: Manages microchains and handles transactions.
- Mobile App: Built with React Native for cross-platform support.
- Security: Implements encryption, access control, and input validation.
- Rust: Install from rust-lang.org.
- MongoDB: Follow the instructions at mongodb.com.
- Protobuf Compiler: Install
protoc
from protocolbuffers/protobuf. - Node.js: Install from nodejs.org.
- React Native CLI: Install using
npm install -g react-native-cli
.
-
Clone the Repository
git clone https://github.com/yourusername/microcred-project.git cd microcred-project
-
Backend Setup
- Navigate to the backend directory:
cd microcred-backend
- Install Rust dependencies:
cargo build
- Start the MongoDB server:
mongod --dbpath /path/to/your/db
- Run the backend server:
cargo run
- Navigate to the backend directory:
-
Frontend Setup
- Navigate to the frontend directory:
cd microcred-frontend
- Install Node.js dependencies:
npm install
- Start the React Native app:
react-native run-android # or react-native run-ios
- Navigate to the frontend directory:
- API Endpoints: Access the API at
http://localhost:8080/
. Refer to the OpenAPI documentation athttp://localhost:8080/swagger
.
- Create DID Credential:
POST /dids