/CardAccumulator

A Fullstack mobile(ios/android) application to store all your government authentication ID's and transactional banking cards all together in one common place.

Primary LanguageDartApache License 2.0Apache-2.0



GitHub

CardAccumulator:

How pleasent it would be if you could store all your necessary cards in one simple app ! Amazing right?

I propose a Fullstack android(You can build it for IOS too) application where a person or a group of people(like families,relatives,etc) can store all their government authentication ID's(Aadhar,PAN,Driving License,etc) and their transactional banking cards(credit/debit card) all together in a common place. This App is built using Flutter for the client side development For the sever side development i used NodeJs,ExpressJs and the API is built using GraphQL which results in minimized data usage due to fewer requests For the remote database i used a nosql db-MongoDB The Holder can save all the details of the cards and the card number is well encrypted using symmtric cyptography algorithm using the block cipher technique with an appealing UI design. Also performed automation unit-testing of the graphAPI using jest and supertest.Automated the CI/CD pipeline using CircleCI deploying it to heroku and also dockerized the app.

What is the need of addding CI/CD to the app

As you know its very crucial to build and test you code before pushing it to production so every change you make might impact your code quality and the most important point is that we are using a backend/API which might need code revisions and has to be deployed over the www so it becomes a hassle to code-check every now and then after making some revisions and also you have to deploy it each time so it makes it quite inconvinient for the developer.So automating these processes really would help the developer to solely focus on the development part.

How To Run This Project

Clone the repository.
cd card_accumulator
Do flutter pub get.

Preview

combine_images

Features

  • Facilitates users to store their personal cards,modify them and delete them without having to refresh.
  • Powered by the single threaded non blocking event driven architecture of nodejs, it can handle millions of concurrent connections with ease.
  • Uses the leading open source NoSQL database mongoDB.
  • Efficient encryption of card number for enhanced privacy
  • Minimized data usage and highly robust
  • highly scalable server able to handle multiple requests at once
  • Fluid and Interactive user interface

Three-Tier System Architecture

Card Accumulator drawio

Working Demo:

Steps to download

Now you can clone the repo and test it out if you find any bugs or if you can add any desirable improvements please contribute to it. Thanks PS : SDK will be available soon

PS:

Was showcased as one of the best projects in Google devfest 2021.