Add badges from somewhere like: shields.io
Welcome to the Aadhaar Information Syncing System, a microservice designed to simplify the process of updating personal information across multiple documents. This system utilizes the Aadhaar number as the primary document, allowing users to request updates that will be synchronized with other linked documents of their choosing. The project consists of two main parts: the client-side and the server-side (addressSync).
The client-side of the project is built using SvelteKit and features a landing page that serves as the main interface for users to interact with the system.
The server-side, contained within the addressSync
folder, is the main project that will be used by running basic Docker commands. Users can build the container, set the necessary variables, and run the project using Docker Compose.
-
User Registration: Agencies can seamlessly register for the service by providing essential details such as agency name, email, password, and confirmation.
-
Update Requests: Users have the ability to submit requests to update their address information. These requests are then sent to selected agencies for approval or rejection.
-
Agency Responses: Agencies can conveniently view and respond to update requests, either approving or rejecting them along with a valid reason for rejection.
-
Data Retrieval: The system offers functionality for both users and agencies to retrieve information on registered agencies and update requests.
-
SMS Notifications (Upcoming): Stay informed with SMS notifications that keep users and agencies in the loop regarding the status of their update requests.
-
Secure Authentication (Upcoming): Our system prioritizes security by implementing OAuth2 and JWT for robust authentication and authorization.
-
Internal Request Status Representation: Utilizes an internal representation of request status, with
active
indicating a pending status,reject
for rejection, andaccept
for approval. -
FastAPI and Twilio Integration: Leveraging the power of FastAPI for seamless API development and Twilio for efficient messaging services.
Feel free to explore the functionalities and experience the efficiency of our Aadhaar Information Syncing System.
-
Navigate to the client-side directory:
cd path/to/client-side
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Navigate to the
addressSync
directory:cd path/to/addressSync
-
Build the Docker image:
docker compose up --build
-
Set environment variables:
export DATABASE_URL=your_database_url export SECRET_KEY=your_secret_key export TWILIO_ACCOUNT_SID=your_twilio_account_sid export TWILIO_AUTH_TOKEN=your_twilio_auth_token export TWILIO_PHONE_NUMBER=your_twilio_phone_number
-
Run the Docker container using Docker Compose:
docker-compose up
(Provide instructions for using both the client-side and server-side of the project, including how to run the landing page and the addressSync system using Docker Compose.)
Describe the available API endpoints and their functionalities.
GET /
: Brief description.POST /users/
: Create a new user.POST /agencies/
: Create a new agency.- ...
Explain the data models used in your application.
User
: Description of the User model.Agency
: Description of the Agency model.ActiveRequest
: Description of the ActiveRequest model.
Explain any configuration settings or environment variables that need to be set.
DATABASE_URL
: Database connection URL.- ...
Explain how others can contribute to your project. Include guidelines for submitting issues, feature requests, and pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
I have updated the installation instructions for the server-side (addressSync) part of the project to include the use of Docker Compose. However, you will still need to provide specific usage instructions for both parts of the project.