{"id":22912273,"url":"https://github.com/strongerprogrammer7/interaction_with_patients","last_synced_at":"2025-04-01T11:16:38.609Z","repository":{"id":276252495,"uuid":"621691703","full_name":"StrongerProgrammer7/Interaction_with_patients","owner":"StrongerProgrammer7","description":"Interaction patients with doctor throught DB MySQL and Smart contract Ethereum. Contract include only get access doc and annul access. DB include all other.","archived":false,"fork":false,"pushed_at":"2024-02-08T11:20:58.000Z","size":18043,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-07T06:23:43.158Z","etag":null,"topics":["ethereum","html-css-javascript","mysql2","node-js","smart-contracts","solidity"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/StrongerProgrammer7.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":"2023-03-31T07:24:14.000Z","updated_at":"2025-01-30T16:36:34.000Z","dependencies_parsed_at":"2025-02-07T06:36:01.806Z","dependency_job_id":null,"html_url":"https://github.com/StrongerProgrammer7/Interaction_with_patients","commit_stats":null,"previous_names":["strongerprogrammer7/interaction_with_patients"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StrongerProgrammer7%2FInteraction_with_patients","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StrongerProgrammer7%2FInteraction_with_patients/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StrongerProgrammer7%2FInteraction_with_patients/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StrongerProgrammer7%2FInteraction_with_patients/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/StrongerProgrammer7","download_url":"https://codeload.github.com/StrongerProgrammer7/Interaction_with_patients/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246628225,"owners_count":20808106,"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":["ethereum","html-css-javascript","mysql2","node-js","smart-contracts","solidity"],"created_at":"2024-12-14T04:27:37.584Z","updated_at":"2025-04-01T11:16:38.588Z","avatar_url":"https://github.com/StrongerProgrammer7.png","language":"JavaScript","readme":"\u003csub\u003e**This work was done as part of the Course work by Author: Abdyukov Z.M. **\u003c/sub\u003e \n\n\u003ch3\u003eContent\u003c/h3\u003e\n\n[Brief introduction](https://github.com/StrongerProgrammer7/Interaction_with_patients/tree/main#-brief-introduction-)\u003cbr\u003e\n[Development tools](https://github.com/StrongerProgrammer7/Interaction_with_patients/tree/main#development-tools-and-programming-language)\u003cbr\u003e\n[Architecture](https://github.com/StrongerProgrammer7/Interaction_with_patients/tree/main#prototype-architecture)\u003cbr\u003e\n[What is the change compared to the previous work](https://github.com/StrongerProgrammer7/Interaction_with_patients/tree/main#what-is-the-change-compared-to-the-previous-work)\u003cbr\u003e\n[View Prototype](https://github.com/StrongerProgrammer7/Interaction_with_patients/tree/main#-view-prototype-)\n\n\u003cdiv align=\"center\"\u003e\n\u003ch1\u003eDB/IPFS with smart-contract EHTEREUM:\u003c/h1\u003e\n\u003ch2\u003eInteraction Patient with Doctor \u003c/h2\u003e\n\u003c/div\u003e\n\u003cdiv\u003e\n\u003ch3 align=\"center\"\u003e Brief introduction \u003c/h3\u003e\n \u003cp\u003eThe main goal of the work is to use a smart contract together with a database to ensure confidentiality and security, control data, facilitate and automate the interaction between physicians and patients, and provide better data management in distributed systems.\u003cbr\u003e\u003cbr\u003e\nThe scientific novelty of the work lies in the fact that a new approach to the interaction of the patient with doctors is proposed.\u003c/p\u003e\n    \u003ch4 align=\"center\"\u003eBlockchain in healthcare\u003c/h4\u003e\n    \u003cp align=\"justify\"\u003eBlockchain allows you to create a distributed database that is protected from unauthorized access and manipulation.\u003c/p\u003e\n    \u003ch4 align=\"center\"\u003eSmart Contract in healthcare\u003c/h4\u003e\n    \u003cp align=\"justify\"\u003eEthereum smart contracts can be used in medicine to improve the security and efficiency of medical data processing, manage medical supplies, and automate many of the processes associated with medical services. \u003c/p\u003e\n     \u003ch4 align=\"center\"\u003ePromlem blockchain and accept DB/IPFS\u003c/h4\u003e\n    \u003cp align=\"justify\"\u003eIt takes a lot of money to store a huge number of records on the blockchain, and the authorized exchange of medical records is another problem. The proposed system uses the Interplanetary File System (IPFS) and a database to overcome this problem.\n\u003cbr\u003eThe database or IPFS and smart contracts can be used to optimize the process of interaction between the doctor and the patient. Below are some possible ways to use the database and smart contracts:\n\u003cul\u003e\n  \u003cli\u003eAppointment appointment: The doctor can create an appointment in the database, specifying the date and time of the appointment, as well as information about the patient. A smart contract can automatically send an appointment confirmation to a patient.\u003c/li\u003e\n  \u003cli\u003eStorage of medical data: The database can be used to store the medical data of patients, such as test results, diagnoses, previous appointments, etc. A smart contract can ensure the security and confidentiality of these data.\u003c/li\u003e\n  \u003cli\u003eIssuing prescriptions: The doctor can create a prescription in the database, specifying the necessary medicines and dosages. A smart contract can automatically send a prescription to a pharmacy for execution\u003c/li\u003e\n  \u003cli\u003eAssignment of tests: The doctor can create an appointment for tests in the database, indicating the necessary studies and deadlines. A smart contract can automatically send an assignment to a lab for execution.\u003c/li\u003e\n  \u003cli\u003eDoctor-Patient Information Sharing: The system can be used to share information between doctor and patient, such as sending appointment notifications or communicating when questions arise.\u003c/li\u003e\n \u003c/ul\u003e\n\u003c/p\u003e\n\u003c/div\u003e\n\n\u003cdiv\u003e \n\u003ch3 align=\"center\"\u003eDevelopment tools and Programming Language\u003c/h3\u003e\n\u003cp align=\"justify\"\u003e For Smart Contract, i used Solidity and IDE Remix(Debug contract), also Personal Blockchain Ganache\u003c/p\u003e\n\u003cp align=\"justify\"\u003e\u003cstrong\u003eInside our server, server-ganache is enabled. And the smart contract is deployed inside server-ganahce\u003c/strong\u003e\u003c/p\u003e\n\u003cp align=\"justify\"\u003e For Web-Site, used HTML/CSS/JS and NodeJS\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003enpm install -S express body-parser browserify dotenv ejs ejs-mate express-fileupload ganache ipfs-core ipfs-http-client node-abort-controller web3 web3-eth ganache\u003c/code\u003e \u003c/pre\u003e\n\u003cp\u003e\u003cb\u003eNode v18.13.0 ,\u003cbr\u003enpm v8.19.3\u003c/b\u003e\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv\u003e\n\u003ch3 align=\"center\"\u003ePrototype architecture\u003c/h3\u003e\n\u003cp\u003eInteraction patient with Db/contract\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/33d150e3-4a85-4ca3-b226-bd9ba120883a\"\u003e\u003c/p\u003e\n\u003cp\u003eInteraction Doctor with Db/contract\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/0af80b59-26b4-43f4-b587-f65ef5d656d4\"\u003e\u003c/p\u003e\n\u003cp\u003eSchema database\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/d04f90f2-a59c-4b10-8147-190346a434a0\"\u003e\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv\u003e\n\u003ch3 align=\"center\"\u003eWhat is the change compared to the previous work\u003c/h3\u003e\n \u003cp\u003e\u003ca href=\"https://github.com/StrongerProgrammer7/SmartContractPatients.git\"\u003e More info about last work \u003c/a\u003e\u003cbr\u003e\n  \u003cspan\u003eI advise you to watch this, as the current work is related to the last one\u003c/span\u003e\u003c/p\u003e\n\u003cp align=\"justify\"\u003eComparing with the previous course work, this prototype provides more opportunities, namely:\n \u003cul\u003e\n  \u003cli\u003eSmart contract operations are much cheaper, since the smart contract acts as a gatekeeper that controls access to data.\u003c/li\u003e\n  \u003cli\u003eThe database allows you to store large amounts of files and data about patients and doctors without loading the blockchain.\u003c/li\u003e\n  \u003cli\u003eControl remains entirely with the patient\u003c/li\u003e\n  \u003cli\u003eOperations are completely transparent\u003c/li\u003e\u003cp\u003e\n\u003c/div\u003e\n\u003cdiv\u003e\n\u003ch3 align=\"center\"\u003eTODO:\u003c/h3\u003e\n\u003cp align=\"justify\"\u003e\n     In the future, it is planned to add the ability to store large files about patients (fluorography, etc.) in the database and also add it to IPFS. Because IPFS data is mutable and secure, any attempt to change data stored in IPFS can only be done by changing the identifier. Therefore, it provides a cryptographic identity to protect data from manipulation. Each data file stored in IPFS contains a cryptographically generated hash value. It has only one meaning and is used to identify data files stored in IPFS. Since IPFS eliminates duplicate files and it is impossible to change them because the files are protected by a cryptographic key\u003c/p\u003e\n\u003cp\u003e \u003cstrong\u003eCost(gas/$): Contract Creation (Patient) ~ 1639436/7.57$, (addPatient) ~ 1085549/5.12$ , Register - 216485/2.13$ Give access ~ 128597/1.4$\u003c/strong\u003e\u003c/p\u003e\n \n+ 1. Add files to database\n\n+ 2. Include IPFS\n\n+ 3. Add available work with IPFS for big files\n\n+ 4. Test on large volumes of data\n\n+ 5. In case of successful solution of the problems above, create an Android App\n \n\u003c/div\u003e\n\u003cdiv\u003e\n\u003ch3 align=\"center\"\u003e View Prototype \u003c/h3\u003e\n\u003cp align=\"left\"\u003e Preview \u003c/p\u003e\n\u003cvideo src='' width=100px autoplay alt='This will be movie'\u003e\u003c/video\u003e\n  \u003cp align=\"left\"\u003e \u003cstrong\u003eProfile Patient\u003c/strong\u003e \u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/8ff4a370-8ff6-4f18-b2b3-7d7886f2d3f8\"\u003e\u003c/p\u003e\n \u003cp align=\"left\"\u003e \u003cstrong\u003eProfile Doctor\u003c/strong\u003e\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/9c1bab92-ec48-49be-8b2c-723ab1500361\"\u003e\u003c/p\u003e\n \u003cp align=\"left\"\u003e \u003cstrong\u003eRegister Form\u003c/strong\u003e \u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/db3c2fdf-98e2-4d27-89cd-6390d2bf84ad\"\u003e\u003c/p\u003e\n \u003cp align=\"left\"\u003e \u003cstrong\u003eRegister Form for doctor\u003c/strong\u003e\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/f7aea385-811d-4896-94cc-29f05a08dd60\"\u003e\u003c/p\u003e\n \u003cp align=\"left\"\u003e \u003cstrong\u003eExists access (Patient)\u003c/strong\u003e \u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/a9731d90-d889-4a13-a150-8de00cfabce6\"\u003e\u003c/p\u003e\n \u003cp align=\"left\"\u003e \u003cstrong\u003eExists access (Doctor)\u003c/strong\u003e \u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/StrongerProgrammer7/Interaction_with_patients/assets/71569051/27290612-23c5-4dc0-a13b-110f11e2fce1\"\u003e\u003c/p\u003e\n\u003c/div\u003e\n\u003ch4\u003e Author: Abdyukov Z.M. \u003c/h4\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstrongerprogrammer7%2Finteraction_with_patients","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstrongerprogrammer7%2Finteraction_with_patients","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstrongerprogrammer7%2Finteraction_with_patients/lists"}