OPEX core for Opex exchange, Open Source Cryptocurrency Exchange.

Related tags

Kotlin OPEX-Core
Overview
Opex

Opex Core

Opex is released under the MIT license. PRs welcome! Last commit

OPEX Core is a Kotlin based cryptocurrency exchange and matching engine from the OPEX project. This extendable and microservice architectured project work as a vanilla core for running cryptocurrency exchanges.

Contents

Install

You need to have Maven and Docker installed.

  1. Clone this repository or download the latest zip.
  2. Build each module using mvn clean install command.
  3. Change directory to ./Deployment and build docker containers using docker-compose build.
  4. In ./Deployment directory, run docker containers which you've built in previous step by using docker-compose up -d and wait for modules to be up and running.
  5. You can make sure each module is running correctly by typing http://localhost:8500 to your browser and check module health.
  6. You can also make sure middlewares (kafka, consule, etc) are running correctly by using docker ps.

Architecture Overview

Opex

Demo

Check out Opex demo.

Documentation

The full documentation for Opex can be found on our website.

How to Contribute

We want to make contributing to this project as easy and transparent as possible, and we are grateful to the developer for contributing bug fixes and improvements. Read our contribution docutmentation here.

License

Opex is MIT licensed, as found in the LICENSE file.

Additional info

For any other questions, feel free to contact us at [email protected].

You might also like...
Feature flags solution that is fast, lean, and open-source.

FFS Feature flags solution that is fast, lean, and open-source. Documentation Full documentation available at https://doist.github.io/ffs/. Project FF

An open source GitHub Android client app, faster and concise.
An open source GitHub Android client app, faster and concise.

An open-source GitHub Android client app, faster and concise.

Strong-bax - An open source password manager project
Strong-bax - An open source password manager project

What is strong-bax? Strong-bax is an open source password manager project. Stron

Kauth - Open-source powerful minecraft authorization plugin
Kauth - Open-source powerful minecraft authorization plugin

KAuth KAuth is a minecraft plugin for offline-mode authorization on your server.

Free and Open Source monster taming video game. Inspired by traditional RPGs like Pokémon, Final Fantasy and Golden Sun.
Free and Open Source monster taming video game. Inspired by traditional RPGs like Pokémon, Final Fantasy and Golden Sun.

Welcome Help Wanted: I cannot finish this on my own. If you are willing to help, let me know. GuardianMonsters is a Free and Open Source monster tamin

Double Open license classification for OSS Review Toolkit (ORT) and other uses.

Double Open Policy Configuration This repository is used to maintain the license classification (license-classifications.yml) created by Double Open.

A Open GAL compiler based on OpenGAL 0.3.1

A Open GAL compiler based on OpenGAL 0.3.1

Kotlin multiplatform bounded open/closed generic intervals.

Kotlin Multiplatform Bounded Open/Closed Generic Intervals Represent closed, open, or half-open, bounded intervals in Kotlin and perform common operat

This repository contains the source code for the PokeApi Android app.

PokeApi App This repository contains the source code for the PokeApi Android app.

Comments
  • Deploy preferences or config error

    Deploy preferences or config error

    I followed the steps outlined in the readme file but were unable to build, and I'm unsure if there are any missing preferences or configuration settings.

    I try, You need to have Maven and Docker installed. 1 Clone the repository git clone https://github.com/opexdev/core.git 2 Run cd core 3 Run mvn clean install command. 4 Run docker-compose up --build. 5 Run docker ps to see if every service is running. result; Tree container is exited; filebeat_1, elasticsearch_1,postgres-opex_1.

    image

    postgres error log: Error: Database is uninitialized and superuser password is not specified. You must specify POSTGRES_PASSWORD to a non-empty value for the superuser. For example, "-e POSTGRES_PASSWORD=password" on "docker run". You may also use "POSTGRES_HOST_AUTH_METHOD=trust" to allow all connections without a password. This is not recommended. See PostgreSQL documentation about "trust": https://www.postgresql.org/docs/current/auth-trust.html

    ***but I am not change anything in docker-compose file so it has got environment: - POSTGRES_USER=${DB_USER:-opex}

    filebeat error log: Exiting: error initializing publisher: missing field accessing 'output.elasticsearch.api_key' (source:'filebeat.yml')

    ***but again I am not change anything in docker-compose file so environment: - FILEBEAT_API_KEY=$FILEBEAT_API_KEY and filebeat.yml is not chaned,

    output.elasticsearch: hosts: [ "elasticsearch:9200" ] protocol: https api_key: ${FILEBEAT_API_KEY}

    elasticsearch error log: ERROR: Elasticsearch exited unexpectedly

    I am not aware of the missing file, missing information, or API resources that I need to obtain from different components. I am not sure if I am receiving errors related to this, but I need your help.

    documentation 
    opened by umutucer 19
  • Build and Run failed ( vault)

    Build and Run failed ( vault)

    core-vault-1 | Error enabling: Post "http://0.0.0.0:8200/v1/sys/mounts/secret": dial tcp 0.0.0.0:8200: connect: connection refused

    core-vault-1 | 2022-10-05T18:53:35.669Z [WARN] unknown or unsupported field file found in configuration at /vault/config/vault.json core-vault-1 | 2022-10-05T18:53:35.669Z [WARN] unknown or unsupported field tcp found in configuration at /vault/config/vault.json

    core-eventlog-1 | 17:46:12.496 [main] ERROR org.springframework.boot.SpringApplication - Application run failed core-eventlog-1 | org.springframework.vault.authentication.VaultLoginException: Cannot retrieve VaultToken from authentication chain; nested exception is org.springframework.web.reactive.function.client.WebClientResponseException$ServiceUnavailable: 503 Service Unavailable from POST http://vault:8200/v1/auth/app-id/login

    core-market-1 | 17:46:20.379 [main] ERROR org.springframework.boot.SpringApplication - Application run failed core-market-1 | org.springframework.vault.authentication.VaultLoginException: Cannot retrieve VaultToken from authentication chain; nested exception is org.springframework.web.reactive.function.client.WebClientResponseException$ServiceUnavailable: 503 Service Unavailable from POST http://vault:8200/v1/auth/app-id/login

    core-api-1 | 17:46:21.115 [main] ERROR org.springframework.boot.SpringApplication - Application run failed core-api-1 | org.springframework.vault.authentication.VaultLoginException: Cannot retrieve VaultToken from authentication chain; nested exception is org.springframework.web.reactive.function.client.WebClientResponseException$ServiceUnavailable: 503 Service Unavailable from POST http://vault:8200/v1/auth/app-id/login

    opened by salisbury-espinosa 4
Releases(v1.0.1-beta.6)
  • v1.0.1-beta.6(Oct 26, 2022)

    What's Changed

    • Close $321: whitelist by @Marchosiax in https://github.com/opexdev/core/pull/323
    • Custom email template by @Marchosiax in https://github.com/opexdev/core/pull/325
    • Fix market stat issue by @Marchosiax in https://github.com/opexdev/core/pull/326
    • Add request verify email by @Marchosiax in https://github.com/opexdev/core/pull/327
    • Release v1.0.1-beta.6 by @Marchosiax in https://github.com/opexdev/core/pull/329

    Full Changelog: https://github.com/opexdev/core/compare/v1.0.1-beta.5...v1.0.1-beta.6

    Source code(tar.gz)
    Source code(zip)
  • v1.0.1-beta.5(Aug 30, 2022)

    What's Changed

    • Close #319: wallet creation bug by @Marchosiax in https://github.com/opexdev/core/pull/320

    Full Changelog: https://github.com/opexdev/core/compare/v1.0.0-beta.5...v1.0.1-beta.5

    Source code(tar.gz)
    Source code(zip)
  • v1.0.0-beta.5(Aug 30, 2022)

    What's Changed

    • 316 registration clean up by @Marchosiax in https://github.com/opexdev/core/pull/317
    • v1.0.0-beta.5 by @Marchosiax in https://github.com/opexdev/core/pull/318

    Full Changelog: https://github.com/opexdev/core/compare/v1.0.0-beta.4...v1.0.0-beta.5

    Source code(tar.gz)
    Source code(zip)
  • v1.0.0-beta.4(Aug 16, 2022)

    What's Changed

    • Close #293, Fix bc gateway database rate limit error by @ebrahimmfadae in https://github.com/opexdev/core/pull/294
    • Close #297, Fix and improve withdraw request service by @ebrahimmfadae in https://github.com/opexdev/core/pull/308
    • Close #292, Add elk stack for monitoring logs by @ebrahimmfadae in https://github.com/opexdev/core/pull/310
    • docker-compose: Fix filebeat container name by @ebrahimmfadae in https://github.com/opexdev/core/pull/311
    • Change filebeat input type by @ebrahimmfadae in https://github.com/opexdev/core/pull/312
    • Close #289: Market service by @Marchosiax in https://github.com/opexdev/core/pull/309
    • Close #296, Change candle data order to ASC by @ebrahimmfadae in https://github.com/opexdev/core/pull/314
    • Release 1.0.0 beta.4 by @Marchosiax in https://github.com/opexdev/core/pull/315

    Full Changelog: https://github.com/opexdev/core/compare/v1.0.0-beta.3...v1.0.0-beta.4

    Source code(tar.gz)
    Source code(zip)
  • v1.0.0-beta.3(Jun 18, 2022)

    What's Changed

    • Close #266, Write tests for create and cancel order by @ebrahimmfadae in https://github.com/opexdev/core/pull/279
    • Close #280, Refactor and resolve failed tests in api wallet and matching gateway by @ebrahimmfadae in https://github.com/opexdev/core/pull/282
    • #254: Custom verification service by @Marchosiax in https://github.com/opexdev/core/pull/283
    • Close #285, Add reserved addresses by sending CSV file by @ebrahimmfadae in https://github.com/opexdev/core/pull/286
    • Close #281, Remove dependency to chain scanner by @ebrahimmfadae in https://github.com/opexdev/core/pull/284
    • Close #287: New user levels by @Marchosiax in https://github.com/opexdev/core/pull/288
    • Unit tests for accountant by @Marchosiax in https://github.com/opexdev/core/pull/290
    • Release v1.0.0 beta.3 by @ebrahimmfadae in https://github.com/opexdev/core/pull/291

    Full Changelog: https://github.com/opexdev/core/compare/v1.0.0-beta.2...v1.0.0-beta.3

    Source code(tar.gz)
    Source code(zip)
  • v1.0.0-beta.2(May 21, 2022)

    What's Changed

    • Release v1.0.0-beta.2 by @Marchosiax in https://github.com/opexdev/core/pull/277

    Full Changelog: https://github.com/opexdev/core/compare/v1.0.0-beta.1...v1.0.0-beta.2

    Source code(tar.gz)
    Source code(zip)
  • v1.0.0-beta.1(May 17, 2022)

    What's Changed

    • Close #237, Upload containers to public registry by @ebrahimmfadae in https://github.com/opexdev/core/pull/238
    • Add issue templates by @ebrahimmfadae in https://github.com/opexdev/core/pull/252
    • Close #253, Add IRT, BSC and BUSD currency by @ebrahimmfadae in https://github.com/opexdev/core/pull/255
    • 258 fix vault resetting secrets issue by @ebrahimmfadae in https://github.com/opexdev/core/pull/261
    • Fix wrong keycloak session ip by @ebrahimmfadae in https://github.com/opexdev/core/pull/260
    • Close #257, Add service health checks by @ebrahimmfadae in https://github.com/opexdev/core/pull/262
    • Close #256, Decouple initiate scripts on dev and demo environments by @ebrahimmfadae in https://github.com/opexdev/core/pull/265
    • Accountant and wallet improvements by @Marchosiax in https://github.com/opexdev/core/pull/268
    • Release v1.0.0-beta.1 by @Marchosiax in https://github.com/opexdev/core/pull/269

    Full Changelog: https://github.com/opexdev/core/compare/v1.0.0-beta...v1.0.0-beta.1

    Source code(tar.gz)
    Source code(zip)
  • v1.0.0-beta(Apr 27, 2022)

    What's Changed

    • Close #14, add swagger to API by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/18
    • Close #14, Extract swagger config by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/24
    • Close #16, Add symbol mapper to map binance schema to ours by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/30
    • Close #23, Complete db config for bc-persister-postgres by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/46
    • Close #25, Complete assign address service by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/57
    • Close #26, Implement chain sync by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/58
    • Close #28, Implement wallet sync by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/63
    • Feature/1 mvp by @maryarm in https://github.com/opexdev/OPEX-Core/pull/67
    • #66: Add BlockchainGateway build step to Jenkinsfile.deploy.groovy by @maryarm in https://github.com/opexdev/OPEX-Core/pull/69
    • Feature/1-MVP Kline API ready to merge by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/70
    • Close #64, Implement reserved addresses by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/71
    • Close #26, Add chain endpoint proxy by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/72
    • Implement reserved addresses and chain proxy by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/74
    • close #79: Added 'demo' and 'scheduled' profiles by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/80
    • Close #73, Add swagger to bc gateway by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/84
    • Close #82, Implement chain scan request by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/83
    • Close #85, Implement ChainHandler.fetchChainInfo() by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/86
    • withdraw services by @maryarm in https://github.com/opexdev/OPEX-Core/pull/90
    • Close #27, implement wallet proxy by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/92
    • Bugfix/96 fix wallet security by @maryarm in https://github.com/opexdev/OPEX-Core/pull/97
    • #95: Record versioning added to orders table in API by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/99
    • Close #100, Fix bc-gateway dependencies by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/101
    • Close #102: CORS configuration with pattern by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/103
    • Feature/98 keycloak impersonation by @maryarm in https://github.com/opexdev/OPEX-Core/pull/104
    • close #106: fix balance parser by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/107
    • Close #108, Implement upload/download file by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/109
    • Close #110, Add nginx config for storage by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/111
    • close #112: BlockchainGateway integration issues by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/113
    • close #114: assign address api by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/115
    • Close #116, Fix storage by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/117
    • Fix storage controller by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/118
    • Fix storage return type issue by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/119
    • Add admin service for download by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/120
    • Storage issues by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/121
    • Storage issues by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/122
    • #78: Transaction history API partially implemented by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/127
    • Feature/105 enrich withdraw api by @maryarm in https://github.com/opexdev/OPEX-Core/pull/124
    • Fixed #125: Fix price bug when an ask taker matched with a bid maker by @maryarm in https://github.com/opexdev/OPEX-Core/pull/130
    • Close #126, Add cors to nginx by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/132
    • Fix nginx config by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/133
    • Transaction history completed by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/134
    • Token decimal calculation by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/137
    • Bug/138 concurrency issue in saving orderbook by @maryarm in https://github.com/opexdev/OPEX-Core/pull/139
    • Return 404 on file not found by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/141
    • Close #143, Handle file name by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/144
    • Fixed scan endpoint and Added demo data by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/145
    • Close #94, Normalize db and refactor schemas by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/148
    • close #146: websocket implemented by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/149
    • Fix nginx script by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/150
    • Close #93, Fix dependency structure by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/151
    • close #152: improved interval cancelling mechanism by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/153
    • close #154: fixed serializer by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/155
    • #157 kafka serial by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/158
    • Add stage env by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/159
    • close #160: add retry system by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/162
    • close #160 by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/163
    • close #165: Payment gateway implemented by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/166
    • close #165: Payment gateway implemented (#166) by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/167
    • hotfix - remove payment nginx config by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/168
    • hotfix - nginx by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/169
    • remove payment from enginx config by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/170
    • Close #147, Add storage volume by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/173
    • close #175: Fix tradeId counter by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/176
    • 174 upgrade versions by @maryarm in https://github.com/opexdev/OPEX-Core/pull/179
    • close #171 and #177: Kafka improvement by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/180
    • close #183: change java version to 11 by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/185
    • #189: Add Hashicorp Vault as db credential source, smtp password is a… by @maryarm in https://github.com/opexdev/OPEX-Core/pull/190
    • #199: move vault host config from docker to main profile by @maryarm in https://github.com/opexdev/OPEX-Core/pull/192
    • Close #181, Remove nginx by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/194
    • Close #195, Fix maven build issues by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/196
    • Security issues resolved by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/197
    • Close #200, Refactor deployment configs by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/206
    • Deploy demo version by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/207
    • Close #193, Inject database credentials as envs by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/209
    • Close #210, Add PostgreSQL backup user by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/211
    • Close #208, Update vault use cases by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/212
    • Close #205: Admin services by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/213
    • Close #161, Add referral module by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/216
    • Close #215: Dead letter queue by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/218
    • Keycloak security and profile services by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/224
    • Close #221, Implement CAPTCHA service by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/225
    • referral: Set swagger auth url based on environment by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/226
    • Change password and OTP fixed by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/228
    • Fix keycloak issues by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/229
    • Pagination for admin services by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/231
    • Release v1.0 beta by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/232
    • Change currency gift settings by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/233
    • Admin Improvements by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/234
    • Dev features and enhancements by @Marchosiax in https://github.com/opexdev/OPEX-Core/pull/219
    • Fix backup services by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/235
    • PostgreSQL: Fix database error by @ebrahimmfadae in https://github.com/opexdev/OPEX-Core/pull/236

    New Contributors

    • @maryarm made their first contribution in https://github.com/opexdev/OPEX-Core/pull/67
    • @Marchosiax made their first contribution in https://github.com/opexdev/OPEX-Core/pull/70

    Full Changelog: https://github.com/opexdev/OPEX-Core/commits/v1.0.0-beta

    Source code(tar.gz)
    Source code(zip)
Owner
OPEX
Opex is an open source exchange software for cryptocurrencies
OPEX
kotlin-core

kotlin-core This package is not Android-specific, and can be used across platforms. However, for a good example of use in Android, take a look at kotl

Lightning Kite 36 Oct 3, 2022
Muhammad Bilal 0 Jan 6, 2022
Open as default - A flutter plugin that allows setting up your flutter app to open files as default

open_as_default A flutter plugin that allows setting up your flutter app to open

LuisDeLaValier 3 Nov 15, 2022
Open source Crypto Currency Tracker Android App made fully in Kotlin

CoinBit CoinBit is a beautiful CryptoCurrency app, completely open sourced and 100% in kotlin. It supports following features Track prices of over 300

Pranay Airan 50 Dec 5, 2022
Gestor is an innovative open-source application for universal Minecraft mod management.

Gestor Gestor is an innovative open-source application for universal Minecraft mod management. About It combines three types of tools into a single ap

GestorMC 11 Dec 9, 2021
Unofficial Android client for dev.to. Open source and free

Dev.to Android by Android Broadcast Unofficial Android client for dev.to Technologies Kotlin Gradle Kotlin DSL Kotlin Coroutines OkHttp + Retrofit kot

Android Broadcast 76 Nov 30, 2022
Free & Open-Source External Scripting Platform

LeagueOfJire Free & Open-Source External Scripting Platform What features does this have? All of the feature's source-code can be found in the userscr

Jire 33 Dec 30, 2022
An open-source plugin that accommodates Starships on Minecraft servers.

Minecraft Starship Plugin An open-source plugin that accommodates starships on minecraft servers. 'A shameless rip-off of Star Legacy's plugins.' Mine

null 4 Dec 13, 2021
KMM RSS Reader: an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile.

KMM RSS Reader This is an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile. It's a simple RSS reader, and you ca

Kotlin 1.4k Jan 4, 2023
An android open-source quick search/diff/download plugin.

Android Reference Intellij Plugin This library based on AndroidSourceViewer It's built with the Gradle and rewritten by kotlin, that's why it's a new

haoxiqiang 3 Nov 2, 2022