Skip to content

Latest commit

 

History

History
268 lines (168 loc) · 11.2 KB

ProductDocs.md

File metadata and controls

268 lines (168 loc) · 11.2 KB

Product Documentation


Abstract of the project

Our main goal is to create a blockchain powered platform that allows users to easily create and publish scholarships. Currently it is difficult for various organizations to onboard to a BPP. We have created a BaaS (BPP as a Service) that allows organizations to create their own BPPs and manage them. BPPs can now publish and manage scholarships. We have also created a BAP that allows users to search for scholarships and apply for them.

The BAP service unifies all scholarship information and presents it to the user, with the entire scholarship process tracked on the blockchain. With our user-friendly platform, you can seamlessly create and register BPPs on demand, create dynamic scholarship forms, and even use digital signatures to verify application details.

We understand that scholarship providers need transparent way to manage applications, which is why we've created a tamper-proof system using Hyperledger technology. Plus, our BPP admin panel makes it easy to manage and oversee the scholarship application process.

Our platform has a simple and efficient workflow that allows users to easily search for scholarships, select the ones they're interested in, initiate the application process, confirm their details, and check the status of their application.

Our platform is designed for both scholarship providers and scholarship applicants around the world, regardless of their geographic location or demographic. We believe that everyone should have access to a simple and transparent scholarship application process, and we're proud to offer a solution that meets the needs of both providers and applicants.

Features

  • Client Cert Authentication
  • On demand BPPs creation and registration
  • Create scholarship forms dynamicall
  • Digital Signature - Create/Verify
  • Approval History
  • Integrate Existing Record
  • Hyperledger - Tamperproof
  • Cost Effective and Transparent
  • Admin Panel - Hyperledger
  • Private IPFS
  • Multi-Compatibility
  • Proxy Re-encryption

Workflow:

Architecture

  • /search

    • Forwards the search for scholarships from BAP-Client to BG
    • Receives ACK from BG
  • /on_search

    • BPP which recieved the /search broadcast from BG sends relevant response as per dsep:scholarships specifications via callback to BAP which then emits the the incoming req body to socket.io.
    • BAP-client which is in socket.io connection with BAP-service recieves and renders it for user.
  • /select

    • Forwards the selected scholarships from BAP-Client to BG
    • Receives ACK from BG
  • /on_select

    • BPP which recieved the /select request from BG sends relevant scholarship details as per dsep:scholarships specifications via callback to BAP which then emits the the incoming req body to socket.io.
    • BAP-client which is in socket.io connection with BAP-service recieves and renders it for user.
  • /init

    • Forwards the scholarship Application initiation from BAP-Client to BG
    • Receives ACK from BG
  • /on_init

    • BPP which recieved the /init request from BG sends acknowledges the initiation and responds via callback to BAP which then emits the the incoming req body to socket.io.
    • BAP-client which is in socket.io connection with BAP-service recieves and renders it for user.
  • /confirm

    • Stores the Details PDF document generated via BAP-Client input in IPFS and forwards the IPFS-HASH-KEY to BG
    • Receives ACK from BG
  • /on_confirm

    • BPP which recieved the request /confirm from BG, retrives the Document with IPFS HASH and stores it in Blockchain and sends applicationID as per dsep:scholarships specifications via callback to BAP which then emits the the incoming req body to socket.io.
    • BAP-client which is in socket.io connection with BAP-service recieves and renders it for user.
  • /status

    • Forwards the applicationID sent via BAP-Client input to BG
    • Receives ACK from BG
  • /on_status

    • BPP which recieved the /status request from BG, fetches the application details based on applicationID and sends application status as per dsep:scholarships specifications via callback to BAP which then emits the the incoming req body to socket.io.
    • BAP-client which is in socket.io connection with BAP-service recieves and renders it for user.

Refer to Services for detailed flow of the application with screenshots

Tech-Stack

img

Architecture Diagram

Architecture

Refer to Architecture for detailed architecture of the application.

Open-source and Digital Public Goods leveraged/used

  • React - Open Source Frontend Framework.
  • NodeJS - Open Source Backend Framework.
  • ExpressJS - Open Source Framework used for developing APIs.
  • MongoDB - Open Source Database.
  • Hyperledger - Open Source Private Blockchain for recording transactions.
  • IPFS - Open Source Decentralized Storage for storing documents.
  • Docker - Open Source Containerization Platform for deploying the applications.
  • Kafka - Open Source Distributed Streaming Platform for handling asynchronous communication. It is used to handle large volumes of mailing.
  • Python - Open Source Programming Language used for developing several utility services (such as signer) and scripts.
  • Mantine UI - Open Source React UI Library for styling the application.
  • Beckn Protocol - Open Source Protocol for enabling B2B commerce and has been extended for scholarships using dsep specs.
  • Andriod SDK - Open source SDK for developing Android Applications. BAP Trusted Web Application has been built using this.

Services

Beckn Provider Platform As Service ( BaaS )

  • This service allows a provider to create their own BPP in a multi-tenant architecture.

    Multi-tenant Architecture

    Multi-tenant Architecture

  • This will allow user to create their own BPP with DNS as "<Department>-<Organisation>.portal.beckn.muhesh.studio"

  • Visit https://portal.beckn.muhesh.studio

    Login

  • Go to Create Page.

    Register

  • Create Your BPP.

    Registered

  • Your BPP has been succesffully created in beckn registry.

    Registered

  • Check client-Certificate-Authentication in your mail.

    mail

  • Location of your client-Certificate-Authentication

    mail

  • Visit your BPP with Url <Department>-<Organisation>.portal.beckn.muhesh.studio

  • Preview of client-certificate-authentication selection prompt

    mail

  • Click the Dashboard button in your Landing Page of your BPP

    mail

  • Dashboard's Home Page of your BPP

    mail

  • Multi-lingual support

    mail

  • Worflow Page, where you can create a scholarships along with the heirarchy of approvers based on role(supervisor, officer).

    adad

  • Create Scholarship

    adaf

  • Add Workflow

    adadfg

  • Submit Workflow

    gsgs

  • Added Workflow Successfully

    gsgsad

  • Visit Form Builder Page, where you can build your customized application form for the scholarships you provide.

  • Create a Form

    asvs

  • Add Custom Form Fields

    asvs fafaf afafg

  • Scholarship Form created successfully

    vbsgs

  • View Applicant Details and Approve/Reject it.

    approve

  • Approve the Application.

    approved

Beckn Application Platform (E-Scholar)

  • E-scholar is a BAP where students/candidates can get scholarships from all the BPPs with network domain dsep:scholarships.

  • Visit E-scholar website at url https://beckn.muhesh.studio

    home

  • Create Account

    reg

  • Login

    reglog

  • Home Page of the User with multi-lingual support

    home

  • Search Scholarship Page.

    search

  • Scholarship provided by BPP cse-nitt

    search

  • Scholarship provided by BPP ece-nitt is appended when it callsback

    search

  • Fillup the application form

    apply1 apply2 apply3

  • Press Submit to Convert your Form into a PDF and store it in IPFS and send the IPFS Hash to BPP

  • View Status of the Applied Scholarship from BPP

    status1 status2

  • Status When Officer Approves status3

  • Status when Supervisor Approves status4

  • Download Signed Document status5

  • Preview of Signed Document status6

  • Verify the document.

    verify

Beckn Application Platform - Android

  • Android App made using Trusted Web Activity

IPFS

  • Stores the application form of the scholarship applicant in a PDF format. ledger

HyperLedger

  • Stores IPFS in blockchain. ledger