{"id":19302194,"url":"https://github.com/yash22222/cryptobank","last_synced_at":"2026-05-14T22:03:23.871Z","repository":{"id":257889139,"uuid":"872554437","full_name":"Yash22222/CryptoBank","owner":"Yash22222","description":"Crypto Bank is a decentralized blockchain application that enables secure transactions between users. It allows users to create and manage transactions, mine blocks, and validate the blockchain. With a focus on transparency and security, Crypto Bank ensures the integrity of transaction records in a reliable digital currency platform.","archived":false,"fork":false,"pushed_at":"2024-10-15T16:33:31.000Z","size":9770,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-05T23:20:40.277Z","etag":null,"topics":["backend","blockchain","blockchain-technology","cryptocurrencies","cryptography","crytobank","decentralized-applications","flask","frontend","mining","validity"],"latest_commit_sha":null,"homepage":"https://yashashokshirsath.netlify.app/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Yash22222.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-14T16:30:53.000Z","updated_at":"2024-11-09T00:40:37.000Z","dependencies_parsed_at":"2024-10-16T22:42:19.816Z","dependency_job_id":null,"html_url":"https://github.com/Yash22222/CryptoBank","commit_stats":null,"previous_names":["yash22222/cryptobank"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yash22222%2FCryptoBank","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yash22222%2FCryptoBank/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yash22222%2FCryptoBank/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yash22222%2FCryptoBank/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Yash22222","download_url":"https://codeload.github.com/Yash22222/CryptoBank/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240404622,"owners_count":19796062,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backend","blockchain","blockchain-technology","cryptocurrencies","cryptography","crytobank","decentralized-applications","flask","frontend","mining","validity"],"created_at":"2024-11-09T23:20:42.413Z","updated_at":"2025-11-16T13:05:19.608Z","avatar_url":"https://github.com/Yash22222.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\n# Crypto Bank\n\n## Description\nCrypto Bank is a decentralized blockchain application that enables secure transactions between users. It allows users to create and manage transactions, mine blocks, and validate the blockchain. With a focus on transparency and security, Crypto Bank ensures the integrity of transaction records in a reliable digital currency platform.\n\n## Features\n- Create and manage transactions\n- Mine new blocks\n- Validate the blockchain\n- View transaction history\n\n## Prerequisites\n- Python 3.x\n- Flask\n- Flask-CORS (for cross-origin requests)\n- React (for frontend)\n\n## Installation\n\n### Clone the Repository\nClone this repository to your local machine using:\n```bash\ngit clone https://github.com/Yash22222/CryptoBank.git\n```\n\n### Navigate to the Project Directory\n```bash\ncd CryptoBank\n```\n\n### Set Up the Backend\n1. Navigate to the backend directory:\n    ```bash\n    cd backend\n    ```\n\n2. Create a virtual environment (optional but recommended):\n    ```bash\n    python -m venv venv\n    ```\n\n3. Activate the virtual environment:\n    - On Windows:\n      ```bash\n      venv\\Scripts\\activate\n      ```\n    - On macOS/Linux:\n      ```bash\n      source venv/bin/activate\n      ```\n\n4. Install the required dependencies:\n    ```bash\n    pip install -r requirements.txt\n    ```\n\n### Set Up the Frontend\n1. Navigate to the frontend directory:\n    ```bash\n    cd ../frontend\n    ```\n\n2. Install the frontend dependencies:\n    ```bash\n    npm install\n    ```\n\n## Running the Application\n\n### Start the Backend Server\n1. Navigate back to the backend directory:\n    ```bash\n    cd ../backend\n    ```\n\n2. Run the Flask application:\n    ```bash\n    python app.py\n    ```\n   The backend server should start running at `http://127.0.0.1:5000/`.\n\n### Start the Frontend Server\n1. Open a new terminal window and navigate to the frontend directory:\n    ```bash\n    cd CryptoBank/frontend\n    ```\n\n2. Start the React application:\n    ```bash\n    npm start\n    ```\n   The frontend will be accessible at `http://localhost:3000/`.\n\n## Usage\n\n### API Endpoints\n- **GET /**: Welcome message.\n- **GET /mine**: Mine a new block.\n- **POST /transaction**: Create a new transaction (provide JSON body).\n- **GET /chain**: View the entire blockchain.\n- **GET /validate**: Validate the blockchain.\n\n### Example Requests\n#### Create a Transaction\nUse Postman or any REST client to send a POST request to:\n```\nhttp://127.0.0.1:5000/transaction\n```\nWith the following JSON body:\n```json\n{\n  \"sender\": \"Alice\",\n  \"recipient\": \"Bob\",\n  \"amount\": 10\n}\n```\n\n#### Mine a Block\nSend a GET request to:\n```\nhttp://127.0.0.1:5000/mine\n```\nYou will receive a JSON response indicating that a new block has been mined.\n\n#### Validate the Blockchain\nSend a GET request to:\n```\nhttp://127.0.0.1:5000/validate\n```\nThis will return a response indicating whether the blockchain is valid or not.\n\n#### View the Blockchain\nSend a GET request to:\n```\nhttp://127.0.0.1:5000/chain\n```\nThis will return the complete blockchain, showing all blocks and transactions.\n\n### Output\nAfter successfully creating a transaction or mining a block, you will receive a JSON response indicating the success of the operation. For example, after mining a block, you might see:\n```json\n{\n  \"message\": \"New block mined successfully!\",\n  \"block\": {\n    \"index\": 1,\n    \"transactions\": [...],\n    \"proof\": 12345,\n    \"previous_hash\": \"abcdef...\"\n  }\n}\n```\n\n## Why This Project is Useful\nCrypto Bank demonstrates the practical implementation of blockchain technology, showcasing how transactions can be securely processed in a decentralized manner. It provides insights into the workings of cryptocurrencies and the fundamental concepts of blockchain.\n\n## License\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyash22222%2Fcryptobank","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyash22222%2Fcryptobank","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyash22222%2Fcryptobank/lists"}