{"id":17677758,"url":"https://github.com/adamslack/stockbroker","last_synced_at":"2026-02-23T12:49:54.749Z","repository":{"id":122723293,"uuid":"110809764","full_name":"AdamSlack/stockbroker","owner":"AdamSlack","description":"Stockbroker SOA system, includes an API, Server, and Client.","archived":false,"fork":false,"pushed_at":"2018-01-24T14:01:30.000Z","size":221,"stargazers_count":1,"open_issues_count":4,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-25T22:26:56.670Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/AdamSlack.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":"2017-11-15T09:03:46.000Z","updated_at":"2018-01-10T10:28:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"254f123b-9d42-4289-9067-5a5e5548da46","html_url":"https://github.com/AdamSlack/stockbroker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AdamSlack/stockbroker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdamSlack%2Fstockbroker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdamSlack%2Fstockbroker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdamSlack%2Fstockbroker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdamSlack%2Fstockbroker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AdamSlack","download_url":"https://codeload.github.com/AdamSlack/stockbroker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdamSlack%2Fstockbroker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29743294,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-23T07:44:07.782Z","status":"ssl_error","status_checked_at":"2026-02-23T07:44:07.432Z","response_time":90,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2024-10-24T07:41:47.368Z","updated_at":"2026-02-23T12:49:54.734Z","avatar_url":"https://github.com/AdamSlack.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Stockbroker System\nA Stockbroker system developed for the completion of NTU Computer Science module: Service Oriented Architecture and Cloud Computing Coursework\n\n## Components\nThe system consists of numerous services consumed into a single API and server. A client is implemented utilising the services made available by the api.\n\n### Trading Block\nThe trading block is a Python service developed to provide a means of tracking what stocks are up for trade. It utilises an XML Schema and an XML database to track the details of what stocks are for sale.\n\nA Server and RESTful API is built in Python to make the buying and selling of stocks available to other systems.\n\n### Stockbroker\nThe Stockbroker is a Node.js service that primarily consumes other services to provide a complete system capable of allowing users to view realtime stock prices, as well as buy and sell stocks.\n\nIt consumes the [AlphaVantage](https://www.alphavantage.co/) realtime stock service to allow users of the stockbroker system to take up-to-date statistics into account when buying/selling stocks on the trading block.\n\nThe API links stock data to the semantic web through DBpedia. SPARQL queries are issued to retrieve company information for each stock.\n\nThe stockbroker system consumes the Python implemented Trading Block service to provide users the ability to buy and sell stocks.\n\nThe stockbroker provides clients access to the service through a REST API.\n\n### Stockbroker Client\nThe client for the system is implemented as an Angular 4/5 web app. It serves as an example of some of the things that can be done using the Stockbroker Service.\n\n### Currency Converter\nThe Currency Converter is a Java SOAP service that allows clients to request an amount in one currency to be converted to the equivalent amount in another currency. It has static conversion rates, supported by an consumed real-time currency conversion REST service. \n\n## How To:\n\n### Requirements\nIn order to utilise this system you will need `Python 3.x`, `Node.js 8.x`, `java 8` and `Angular/cli 5.x` \n\n**Trading Block** additional Python libraries:\n```\nxmlschema\n```\n\n**Stockbroker** additional Node.js libraries:\n```\nexpress\ncors\nbody-parser\n```\n\nThe Stockbroker client requires the Angular Command Line Interface (Angular CLI). It can be installed though the node package manager npm by entering `npm install -g --save @angular/cli` into the command line.\n\n### Running the system.\n\nTo run each element of the system, from the directory of each element enter the following into the command line:\n\n**Trading Block:** `python tradingblock.py`\n\n**Stockbroker:** `node server.js`\n\n**Client App:** `ng serve`\n\n**Currency Conversion**\n\nTo build from a unix command line:\n```\ncd CurrencyConverter/src/DOCwebServices\njavac *.java\ncd ..\njavac CurrencyConverterPublisher.java\n```\n\nTo run after building:\n```\njava CurrencyConverterPublisher\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamslack%2Fstockbroker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadamslack%2Fstockbroker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamslack%2Fstockbroker/lists"}