{"id":14994185,"url":"https://github.com/adaptiveconsulting/reactivetradercloud","last_synced_at":"2025-05-14T02:04:51.656Z","repository":{"id":37431143,"uuid":"46142401","full_name":"AdaptiveConsulting/ReactiveTraderCloud","owner":"AdaptiveConsulting","description":"Real-time FX trading showcase by Adaptive.","archived":false,"fork":false,"pushed_at":"2025-04-01T18:52:47.000Z","size":564627,"stargazers_count":1846,"open_issues_count":0,"forks_count":573,"subscribers_count":135,"default_branch":"master","last_synced_at":"2025-04-10T16:47:57.943Z","etag":null,"topics":["finance","fx","interop","openfin","pwa","react","real-time","rxjs","storybook","typescript"],"latest_commit_sha":null,"homepage":"https://www.reactivetrader.com","language":"TypeScript","has_issues":false,"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/AdaptiveConsulting.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2015-11-13T19:24:11.000Z","updated_at":"2025-04-05T19:41:29.000Z","dependencies_parsed_at":"2023-10-02T23:19:12.685Z","dependency_job_id":"785cf83f-7d1d-41a7-ac09-25becf910af4","html_url":"https://github.com/AdaptiveConsulting/ReactiveTraderCloud","commit_stats":{"total_commits":5343,"total_committers":136,"mean_commits":"39.286764705882355","dds":0.8886393411940857,"last_synced_commit":"79bf356c9d00b8667a33cce32eab7459bbfb6e84"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdaptiveConsulting%2FReactiveTraderCloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdaptiveConsulting%2FReactiveTraderCloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdaptiveConsulting%2FReactiveTraderCloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdaptiveConsulting%2FReactiveTraderCloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AdaptiveConsulting","download_url":"https://codeload.github.com/AdaptiveConsulting/ReactiveTraderCloud/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254052692,"owners_count":22006716,"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":["finance","fx","interop","openfin","pwa","react","real-time","rxjs","storybook","typescript"],"created_at":"2024-09-24T16:00:49.414Z","updated_at":"2025-05-14T02:04:51.592Z","avatar_url":"https://github.com/AdaptiveConsulting.png","language":"TypeScript","readme":"[![example workflow](https://github.com/AdaptiveConsulting/ReactiveTraderCloud/actions/workflows/branch.yml/badge.svg?branch=master)](https://github.com/AdaptiveConsulting/ReactiveTraderCloud/actions/workflows/branch.yml)\n[![GitHub release (latest by date)](https://img.shields.io/github/v/release/AdaptiveConsulting/ReactiveTraderCloud)](https://github.com/AdaptiveConsulting/ReactiveTraderCloud/releases/latest)\n[![GitHub](https://img.shields.io/github/license/AdaptiveConsulting/ReactiveTraderCloud)](https://opensource.org/licenses/Apache-2.0)\n\n[![image](images/adaptive-logo.svg)](http://weareadaptive.com/)\n\n# Reactive Trader®\n\nReactive Trader® is a real-time FX trading platform designed to showcase reactive programming principles across the full application stack.\n\nWritten in React and RxJs / React-RxJs and running on [Hydra](https://weareadaptive.com/hydra/), the platform will continue to evolve and use the latest technologies.\n\nPlease see [our Showcase page](https://weareadaptive.com/showcase/) for a full list of the latest features.\n\n![image](/packages/client/public-workspace/images/previews/reactive-trader.PNG)\n\n## Demo\n\n- [Web \u0026 Mobile](https://www.reactivetrader.com)\n- [OpenFin([]](https://openfin.co/)) \u0026 [Finsemble](https://cosaic.io/finsemble/) installers [here](./packages/client/install/README.md)\n- [Style guide](https://www.reactivetrader.com/storybook): Colours, iconography, typography, atoms and molecules\n- [Storybook](https://www.reactivetrader.com/styleguide): Explore individual React components\n\n## Development\n\nTo run the web UI\n\n1. Fork and clone the ReactiveTraderCloud repo ([see Contributing page](CONTRIBUTING.md))\n\n2. [See client README](packages/client/README.md)\n\n\u003cdetails\u003e\n\u003csummary\u003eManually update contracts for Trading Gateway API\u003c/summary\u003e\n\n1. Open [hydra-reactive-trader](`https://github.com/AdaptiveConsulting/hydra-reactive-trader`) project in IntelliJ IDEA and run:\n\n   ```sh\n   ./gradlew\n   ```\n\n2. Copy file `component/gateway/trading/api/build/generated-sources/codecs/main/resources/trading-gateway.hyer` to UI project `src/client/trading-gateway.hyer`\n\n3. Back in src/client, run:\n   ```sh\n   npm run generateCod\n   ```\n   This will regenerate TradingGateway.ts `(file://./src/client/src/generated/TradingGateway.ts)`\n   \u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eRun against local Backend Services\u003c/summary\u003e\n\n1. Follow instructions to start [Backend Services](`https://github.com/AdaptiveConsulting/hydra-reactive-trader#building-the-project`)\n\n2. Run:\n   ```sh\n   VITE_HYDRA_URL=ws://localhost:8929 npm start\n   ```\n   \u003c/details\u003e\n\n## CI/CD\n\nWe practice continuous integration and deployment. Every branch and pull request triggers a build and deployment to an ephemeral environment. Merging to master causes a build and deployment to our [development environment](https://web.dev.reactivetrader.com).\n\n## Contributing\n\nPlease see our [contribution guidelines](./CONTRIBUTING.md).\n\n## Who are we?\n\nReactive Trader was written by the team at [Adaptive](http://weareadaptive.com/), a consultancy that specialises in building real-time trading systems.\n\nPlease [contact us](https://weareadaptive.com/contact/) if you'd like to learn more, or follow us via our [blog](https://weareadaptive.com/life-at-adaptive/), [Twitter](https://twitter.com/WeAreAdaptive), or [LinkedIn](https://www.linkedin.com/company/adaptive-consulting-ltd/).\n\n## License\n\nThis application is made available under the [Apache license v2.0](./LICENSE).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadaptiveconsulting%2Freactivetradercloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadaptiveconsulting%2Freactivetradercloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadaptiveconsulting%2Freactivetradercloud/lists"}