Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dchobarkar/settlement-system
A React and NestJS application implementing an iterative settlement process between two parties with real-time updates.
https://github.com/dchobarkar/settlement-system
nestjs nextjs react sqlite tailwindcss typeorm typescript
Last synced: about 13 hours ago
JSON representation
A React and NestJS application implementing an iterative settlement process between two parties with real-time updates.
- Host: GitHub
- URL: https://github.com/dchobarkar/settlement-system
- Owner: dchobarkar
- Created: 2024-06-11T09:58:57.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-06-12T12:44:58.000Z (5 months ago)
- Last Synced: 2024-06-13T14:51:23.333Z (5 months ago)
- Topics: nestjs, nextjs, react, sqlite, tailwindcss, typeorm, typescript
- Language: TypeScript
- Homepage:
- Size: 165 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Settlement Process Application
## Overview
This application implements a settlement process between two parties, Party A and Party B. The system handles iterative negotiation of settlement amounts by Party A, along with approvals or objections from Party B. The process ensures that all changes and responses are reflected on Party A's and Party B's interface.
## Features
- Party A can submit an initial settlement amount.
- Party A can modify and resubmit the settlement amount any number of times until Party B responds.
- Party B can dispute or agree to the submitted amount. If disputed, Party A can modify and resubmit the amount.
- Real-time updates are provided through polling.
- Context is used to manage state across components.## Technologies Used
- **Frontend:** React, Next.js, TypeScript, Tailwind CSS
- **Backend:** NestJS, TypeORM, SQLite
- **State Management:** React Context API
- **HTTP Client:** Axios## Installation
### Prerequisites
- Node.js (v14 or above)
- npm or yarn### Backend Setup
1. Navigate to the backend directory:
```sh
cd backend
```2. Install the dependencies:
```sh
npm install
```3. Start the backend server:
```sh
npm run start
```### Frontend Setup
1. Navigate to the frontend directory:
```sh
cd ../frontend
```2. Install the dependencies:
```sh
npm install
```3. Start the frontend development server:
```sh
npm run dev
```## Usage
### Party A Interface
1. Open your browser and navigate to `http://localhost:3000/party-a`.
2. Enter an initial settlement amount and submit.
3. If Party B disputes the amount, you will be able to modify and resubmit the amount.
4. If Party B agrees, the transaction will be marked as settled.### Party B Interface
1. Open your browser and navigate to `http://localhost:3000/party-b`.
2. You will see the current settlement amount submitted by Party A.
3. You can either agree or dispute the amount.
4. If you dispute, Party A will be notified and can modify the amount.## Additional Information
- **Polling Interval:** The frontend uses a polling interval of 3 seconds to fetch the latest settlement data.
- **Error Handling:** Basic error handling is implemented for network requests.## Contact
Darshan Chobarkar - [@dchobarkar](https://www.linkedin.com/in/dchobarkar/) - [@barbatos\_\_08](https://twitter.com/barbatos__08) - [email protected]
Project Link: [https://github.com/dchobarkar/settlement-system](https://github.com/dchobarkar/settlement-system)