Skip to content

Commit

Permalink
Merge pull request Akshat111111#46 from Amulya-B28/main
Browse files Browse the repository at this point in the history
Update README.md
  • Loading branch information
Akshat111111 authored Oct 21, 2024
2 parents c3e65a5 + 4428daf commit daa3367
Showing 1 changed file with 62 additions and 36 deletions.
98 changes: 62 additions & 36 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,48 +1,51 @@
## **Introduction**
## **Introduction**

**NexTrade** is a cutting-edge decentralized stock trading application tailored for the Indian financial markets. Built on blockchain technology, it introduces a secure, transparent, and tamper-proof platform for trading stocks. By leveraging **Ethereum** smart contracts, NexTrade enables users to trade stocks directly with each other in a peer-to-peer fashion, eliminating the need for intermediaries such as stockbrokers or traditional exchanges.
**📊 NexTrade** is a cutting-edge decentralized stock trading application tailored for the Indian financial markets. Built on blockchain technology, it introduces a secure, transparent, and tamper-proof platform for trading stocks. By leveraging **Ethereum** smart contracts, NexTrade enables users to trade stocks directly with each other in a peer-to-peer fashion, eliminating the need for intermediaries such as stockbrokers or traditional exchanges.

The decentralized nature of the application ensures the security and immutability of trades while providing a transparent method to track stock ownership. The core philosophy behind NexTrade is to showcase how blockchain technology can revolutionize the financial markets in India, providing a more secure, trustless, and efficient system.

Currently, the platform offers a foundational framework that can be expanded into a full-fledged decentralized application (DApp) with the addition of more advanced features in the future.

---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)

## **Features**

**1\. Decentralized Trading**
## **🌟Features🌟**


**1\.📈 Decentralized Trading**

NexTrade enables users to trade stocks directly with each other without the need for intermediaries like brokers or exchanges. Traditional stock exchanges are centralized systems that control all trades, but with NexTrade, users interact with each other via peer-to-peer (P2P) transactions. This significantly reduces trading fees and eliminates delays associated with centralized approval processes. Furthermore, decentralization ensures that there is no single point of failure, making the platform more resilient to attacks and disruptions.

* **P2P Transactions**: Buyers and sellers interact directly, determining stock prices based on mutual agreement.
* **Self-custody**: Users retain control over their stocks and wallets at all times, ensuring better security and transparency.

**2\. Smart Contracts for Secure Transactions**
**2\.🔐 Smart Contracts for Secure Transactions**

At the core of NexTrade are **Ethereum smart contracts**. Smart contracts are self-executing pieces of code that automatically enforce the terms of a contract once predefined conditions are met. In NexTrade, they ensure that trades occur only when all necessary conditions are satisfied, such as sufficient funds and available stocks. Since these contracts are immutable (once deployed, they cannot be changed), users can trust that the trading rules are fixed and enforced without interference.

* **Trustless System**: There is no need to trust a third party; the smart contract automatically executes transactions.
* **Immutability**: Once a contract is deployed, it cannot be altered, ensuring no manipulation.
* **Automatic Settlement**: Upon successful trade conditions, the ownership of stocks is transferred immediately, and funds are deducted automatically.

**3\. Stock Ownership Tracking via Blockchain**
**3\.🔖 Stock Ownership Tracking via Blockchain**

Every stock trade is recorded on the Ethereum blockchain, providing an unalterable ledger of ownership and transactions. This means that once you own a stock, it’s permanently recorded on the blockchain, and all future trades are traceable, ensuring transparency. This also makes trades tamper-proof, as blockchain ensures that no one can retroactively alter trade records.

* **Blockchain-based Proof of Ownership**: Stocks are tokenized and recorded on the blockchain, offering a public, transparent, and verifiable record of ownership.
* **Finality of Trades**: Once a transaction is recorded on the blockchain, it is final and cannot be reversed or altered.

**4\. Responsive Design**
**4\.📲 Responsive Design**

NexTrade is designed to be **mobile-first**, ensuring that users can access the platform from any device, including desktops, smartphones, and tablets. This flexibility allows users to trade on the go, ensuring they never miss an opportunity. The responsive design also makes the platform accessible to a wider audience, increasing user engagement and participation.

* **Cross-device Compatibility**: The platform works seamlessly across devices, maintaining functionality and usability on smaller screens.
* **User-friendly Interface**: The clean and intuitive design ensures a smooth user experience even for those unfamiliar with decentralized applications.
*

---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)


## **Technology Stack**
## **🛠Technology Stack🛠**

NexTrade employs a robust technology stack to ensure seamless functionality:

Expand All @@ -52,9 +55,10 @@ NexTrade employs a robust technology stack to ensure seamless functionality:
* **Web3.py**: A Python library that facilitates interaction between the backend and the Ethereum blockchain.
* **HTML/CSS**: Utilized to create a simple, intuitive frontend interface for users.

---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)

## **Folder Structure**

## **📁Folder Structure📁**

The NexTrade project is organized as follows:

Expand All @@ -71,9 +75,10 @@ The NexTrade project is organized as follows:
* **requirements.txt**: A list of Python dependencies required to run the application.
* **run.py**: The main entry point of the application to run the Flask server.

---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)


## **Smart Contract Overview**
## **📝Smart Contract Overview📝**

At the heart of NexTrade is the **NexTrade.sol** smart contract, responsible for handling the core trading functionalities. Written in Solidity, this contract manages:

Expand All @@ -83,9 +88,10 @@ At the heart of NexTrade is the **NexTrade.sol** smart contract, responsible for

This smart contract ensures that every transaction is recorded on the blockchain, making it impossible to tamper with the trade history.

---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)

## **Setup Instructions**

## **🧾Setup Instructions🧾**

### **Prerequisites**

Expand All @@ -111,13 +117,14 @@ Before you can begin using NexTrade, ensure that you have the following software
5.Run the Flask server using the command:
`python run.py`

---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)


## **Usage**
## **Usage**

NexTrade is designed to be simple to use, ensuring that both novice and experienced traders can quickly understand the platform's core features. Below is a step-by-step guide on how users can engage with key functionalities.

#### **1\. Adding a Stock to the Blockchain**
#### **1\. Adding a Stock to the Blockchain 🔗**

Users can tokenize stocks by adding them to the blockchain, becoming the initial owner of that stock.

Expand All @@ -134,7 +141,7 @@ Users can tokenize stocks by adding them to the blockchain, becoming the initial
* The stock is tokenized on the Ethereum blockchain using smart contracts.
* Ownership is recorded in the decentralized ledger, visible to all.

#### **2\. Buying a Stock**
#### **2\. Buying a Stock 📉**

The buying process is streamlined for a user-friendly experience.

Expand All @@ -151,7 +158,7 @@ The buying process is streamlined for a user-friendly experience.
* The smart contract checks if you have enough balance to buy the stock.
* Once confirmed, it deducts the required amount from your wallet and updates the stock ownership to your Ethereum address.

#### **3\. Tracking Ownership & Verifying Trades**
#### **3\. Tracking Ownership & Verifying Trades 🏷**

One of NexTrade’s strengths is its transparent tracking system for stock ownership.

Expand All @@ -161,7 +168,7 @@ One of NexTrade’s strengths is its transparent tracking system for stock owner
2. **View Trade Details**: Every transaction, including the buyer, seller, and price, is stored on the blockchain, and you can view this public ledger.
3. **Check Finality of Trades**: Since all trades are immutable, once confirmed, they cannot be reversed, ensuring you can verify the authenticity of every trade.

#### **4\. Real-Time Interaction Using MetaMask**
#### **4\. Real-Time Interaction Using MetaMask 📳**

NexTrade integrates with MetaMask, allowing you to interact with the decentralized trading platform.

Expand All @@ -176,7 +183,7 @@ NexTrade integrates with MetaMask, allowing you to interact with the decentraliz
* MetaMask serves as the interface between the NexTrade DApp and the Ethereum blockchain.
* It helps users manage their wallets, approve transactions, and securely store private keys.

#### **5\. Selling a Stock**
#### **5\. Selling a Stock📊**

Users can sell stocks they own, transferring ownership to a buyer and receiving Ether in return.

Expand All @@ -187,9 +194,10 @@ Users can sell stocks they own, transferring ownership to a buyer and receiving
3. **Wait for a Buyer**: The stock will be available on the platform for other users to buy.
4. **Ownership Transfer**: Once a buyer purchases the stock, the transaction is automatically executed, and the Ether is credited to your wallet.

---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)

## **Future Enhancements**

## **💠Future Enhancements💠**

NexTrade is currently a foundational project, and several advanced features can be added in the future:

Expand All @@ -215,25 +223,43 @@ NexTrade is currently a foundational project, and several advanced features can
* Develop native Android and iOS apps to further improve mobile accessibility.


---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)


## **Contributing**
## **💥Contributing💥**

NexTrade is an open-source project, and contributions are welcome. To contribute:
NexTrade is an open-source project, and contributions are welcome.
You can refer to the following articles on basics of Git and Github and also contact the Project Mentors, in case you are stuck: <br>
<a href="https://docs.github.com/get-started">Getting started with Git and GitHub</a> <br>

1. Fork the repository on GitHub.
2. Create a new branch for your feature or bug fix.
3. Write your code and add relevant tests.
4. Submit a pull request with a clear explanation of the changes made.
To contribute:
1. Raise an issue: <a href="https://help.github.com/en/desktop/contributing-to-projects/creating-an-issue-or-pull-request">How to create a Issue</a> <br>
2. Fork the repository on GitHub: <a href="https://help.github.com/en/github/getting-started-with-github/fork-a-repo">Forking a Repo</a> <br>
3. Cloning the repository: <a href="https://docs.github.com/en/get-started/quickstart/fork-a-repo#cloning-your-forked-repository">Cloning a Repo</a> <br>
4. Create a new branch for your feature or bug fix.
5. Write your code and add relevant tests.
6. Submit a pull request with a clear explanation of the changes made: <a href="https://opensource.com/article/19/7/create-pull-request-github">How to create a Pull Request</a> <br>

---

## **License**
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)


## **🆔License**

NexTrade is distributed under the **MIT License**. You are free to use, modify, and distribute the software under the terms specified in the LICENSE file [MIT License](LICENSE)

---
![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)

## **Acknowledgments**

## **🔰Acknowledgments🔰**

NexTrade was made possible thanks to contributions from the open-source community. Special thanks to the teams behind **Flask**, **Solidity**, **Web3.py**, and **Ethereum** for providing the tools and libraries necessary for developing this project.

![Line](https://user-images.githubusercontent.com/85225156/171937799-8fc9e255-9889-4642-9c92-6df85fb86e82.gif)

# **❤Contributors❤**
A big thank you to all the contributors! 🎉

<a href="https://github.com/Akshat111111/NexTrade/pulse"> <img align="center" src="https://contrib.rocks/image?max=100&repo=Akshat111111/NexTrade" /> </a>


0 comments on commit daa3367

Please sign in to comment.