Skip to content

Commit

Permalink
docs: add README.md for the whole platform as a project (#38)
Browse files Browse the repository at this point in the history
Co-authored-by: strophy <badfunkstripe@gmail.com>
  • Loading branch information
antouhou and strophy authored Nov 16, 2021
1 parent 98a910b commit 39907a4
Show file tree
Hide file tree
Showing 3 changed files with 138 additions and 0 deletions.
20 changes: 20 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
The MIT License (MIT)

Copyright (c) 2017-2021 Dash Core Group, Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
86 changes: 86 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
<p align="center">
<a href="https://dashplatform.readme.io/docs/introduction-what-is-dash-platform/">
<img alt="babel" src="https://media.dash.org/wp-content/uploads/dash_digital-cash_logo_2018_rgb_for_screens.png" width="546">
</a>
</p>

<p align="center">
Seriously fast decentralized applications for the Dash network
</p>

<p align="center">
<a href="https://github.com/dashevo/platform/actions/workflows/all-packages.yml"><img alt="GitHub CI Status" src="https://github.com/dashevo/platform/actions/workflows/all-packages.yml/badge.svg"></a>
<a href="https://chat.dashdevs.org/"><img alt="Devs Chat" src="https://img.shields.io/badge/discord-Dev_chat-738adb"></a>
<a href="https://discordapp.com/invite/PXbUxJB"><img alt="General Chat" src="https://img.shields.io/badge/discord-General_chat-738adb"></a>
<a href="https://twitter.com/intent/follow?screen_name=Dashpay"><img alt="Follow on Twitter" src="https://img.shields.io/twitter/follow/Dashpay.svg?style=social&label=Follow"></a>
</p>

Dash Platform is a technology stack for building decentralized applications on
the Dash network. The two main architectural components, Drive and DAPI, turn
the Dash P2P network into a cloud that developers can integrate with their
applications.

If you are looking for how to contribute to the project or need any help with
building an app on the Dash Platform - message us on the [Devs
Discord](https://chat.dashdevs.org/)!

## Intro

This is a multi-package repository - sometimes also known as monorepository -
that contains all packages that comprise the Dash platform - for example, Drive,
which is the storage component of Dash Platform, the JavaScript SDK, wallet-lib,
DAPI, and others. Every individual package contains its own readme. Packages are
located in the [packages](./packages) directory.

## FAQ

### How to build and set up a node from the code in this repo?

- Clone the repo
- Install prerequisites:
- [node.js](https://nodejs.org/) v16.0.0+
- [docker](https://docs.docker.com/get-docker/) v20.10+
- [docker-compose](https://docs.docker.com/compose/install/) v1.29.2+
- Run `npm run setup` to install dependencies and configure and build all packages
- Run `npm run start` to start the local dev environment built from the sources
- Run `npm test` to run the whole test suite (note that running tests requires a running node,
so be sure to call `npm run start` first). Alternatively, you can run tests for a specific
package by running `npm test -w <package_name>`, for example running
`npm test -w @dashevo/dapi-client` will run tests for the JS DAPI client. To see
all available packages, please see the [packages readme](./packages/README.md)
- `npm run stop` will stop the local dev environment. Running a dev environment requires a non-trivial amount of system resources,
so it is best to stop the local node when not in use
- Run `npm run build` to rebuild the project after changes. If you have a local node
running, you may need to restart it by running `npm run stop && npm run start`
- To completely reset all local data and builds, run `npm run reset`

### Looking for support?

For questions and support, please join our [Devs
Discord](https://chat.dashdevs.org/)

### Where are the docs?

Our docs are hosted on
[readme.io](https://dashplatform.readme.io/docs/introduction-what-is-dash-platform).
You can create issues and feature requests in the
[issues](https://github.com/dashevo/platform/issues) for this repository.

### Want to report a bug or request a feature?

Please read through our [CONTRIBUTING.md](CONTRIBUTING.md) and fill out the
issue template at [platform/issues](https://github.com/dashevo/platform/issues)!

### Want to contribute to Dash Platform?

Check out:

- Our [Developers Discord](https://chat.dashdevs.org/)
- Our [CONTRIBUTING.md](CONTRIBUTING.md) to get started with setting up the
repo.
- Our [blog](https://www.dash.org/blog/) which contains release posts and
explanations.

## License

[MIT](LICENSE.md)
32 changes: 32 additions & 0 deletions packages/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
### Core Packages

| Package | Version | Description |
|---------|---------|-------------|
| [`@dashevo/dpp`](/packages/js-dpp) | [![npm](https://img.shields.io/npm/v/@dashevo/dpp.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/dpp) | JS implementation of Dash Platform Protocol, the core data structures used by the Platform |
| [`@dashevo/dpns-contract`](/packages/dpns-contract) | [![npm](https://img.shields.io/npm/v/@dashevo/dpns-contract.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/dpns-contract) | Data Contract for DashPay Naming Service |
| [`@dashevo/grpc-common`](/packages/js-grpc-common) | [![npm](https://img.shields.io/npm/v/@dashevo/grpc-common.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/grpc-common) | Common gRPC packages |
| [`@dashevo/feature-flags-contract`](/packages/feature-flags-contract) | [![npm](https://img.shields.io/npm/v/@dashevo/feature-flags-contract.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/feature-flags-contract) | System data contract to enable feature flags |

### Fullnode & Masternode tools

| Package | Version | Description |
|---------|---------|-------------|
| [`@dashevo/dashmate`](/packages/dashmate) | [![npm](https://img.shields.io/npm/v/@dashevo/dashmate.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/dashmate) | A tool for managing full nodes and masternodes |

### Platform Client Packages

| Package | Version | Description |
|---------|---------|-------------|
| [`dash`](/packages/js-dash-sdk) | [![npm](https://img.shields.io/npm/v/dash.svg?maxAge=3600)](https://www.npmjs.com/package/dash) | JavaScript SDK and light client |
| [`@dashevo/wallet-lib`](/packages/wallet-lib) | [![npm](https://img.shields.io/npm/v/@dashevo/wallet-lib.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/wallet-lib) | JavaScript light client wallet library |
| [`@dashevo/dapi-client`](/packages/js-dapi-client) | [![npm](https://img.shields.io/npm/v/@dashevo/dapi-client.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/js-dapi-client) | JavaScript client to connect to DAPI |
| [`@dashevo/dapi-grpc`](/packages/dapi-grpc) | [![npm](https://img.shields.io/npm/v/@dashevo/dapi-grpc.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/dapi-grpc) | gRPC clients for various platforms (Web, Android, iOS, Java, Python) to interact with DAPI |
| [`@dashevo/dashpay-contract`](/packages/dashpay-contract) | [![npm](https://img.shields.io/npm/v/@dashevo/dashpay-contract.svg?maxAge=3600)](https://www.npmjs.com/package/@dashevo/dashpay-contract) | DashPay social payments app data contract |

### Platform Node Packages

| Package | Version | Description |
|---------|---------|-------------|
| [`@dashevo/drive`](/packages/js-drive) | [![docker](https://img.shields.io/docker/v/dashpay/drive?label=docker&&maxAge=3600)](https://hub.docker.com/r/dashpay/drive) | Platform replicated state machine |
| [`@dashevo/dapi`](/packages/dapi) | [![docker](https://img.shields.io/docker/v/dashpay/dapi?label=docker&maxAge=3600)](https://hub.docker.com/r/dashpay/dapi) | Platform Decentralized API |

0 comments on commit 39907a4

Please sign in to comment.