Skip to content

Commit

Permalink
Add intro to RTD site; add link to RTD site in README; cleanup
Browse files Browse the repository at this point in the history
Signed-off-by: Stephen Curran <[email protected]>
  • Loading branch information
swcurran committed Aug 28, 2019
1 parent 1abaf07 commit 829f369
Show file tree
Hide file tree
Showing 4 changed files with 58 additions and 14 deletions.
13 changes: 9 additions & 4 deletions DevReadMe.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,9 @@ See the [README](README.md) for details about this repository and information ab
- [Prerequisites](#prerequisites)
- [Running Locally](#running-locally)
- [Running Tests](#running-tests)
- [Development Workflow](#development-workflow)
- [Dynamic Injection of Services](#dynamic-injection-of-services)
- [Development Workflow](#development-workflow)
- [Publishing Releases](#publishing-releases)
- [Dynamic Injection of Services](#dynamic-injection-of-services)

## Introduction

Expand Down Expand Up @@ -140,7 +141,7 @@ To run the tests including [Indy SDK](https://github.com/hyperledger/indy-sdk) a
./scripts/run_tests_indy
```

### Development Workflow
## Development Workflow

We use [Flake8](http://flake8.pycqa.org/en/latest/) to enforce a coding style guide.

Expand All @@ -156,7 +157,11 @@ The test suite also displays the current code coverage after each run so you can

Please also refer to the [contributing guidelines](/CONTRIBUTING.md) and [code of conduct](/CODE_OF_CONDUCT.md).

### Dynamic Injection of Services
## Publishing Releases

The [publishing](https://github.com/hyperledger/aries-cloudagent-python/blob/master/PUBLISHING.md) document provides information on tagging a release and publishing the release artifacts to PyPi.

## Dynamic Injection of Services

The Agent employs a dynamic injection system whereby providers of base classes are registered with the `RequestContext` instance, currently within `conductor.py`. Message handlers and services request an instance of the selected implementation using `await context.inject(BaseClass)`; for instance the wallet instance may be injected using `wallet = await context.inject(BaseWallet)`. The `inject` method normally throws an exception if no implementation of the base class is provided, but can be called with `required=False` for optional dependencies (in which case a value of `None` may be returned).

Expand Down
17 changes: 11 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,10 @@ issuing, verifying and holding verifiable credentials.
- [Quickstart](#quickstart)
- [Architectural Deep Dive](#architectural-deep-dive)
- [Getting Started Guide](#getting-started-guide)
- [Read the Docs](#read-the-docs)
- [What to Focus On?](#what-to-focus-on)
- [Credit](#credit)
- [Contributing](#contributing)
- [Publishing Releases](#publishing-releases)
- [License](#license)

## Background
Expand Down Expand Up @@ -77,10 +79,17 @@ The ACA-Py team presented an architectural deep dive webinar that can be viewed

For everyone those new to SSI, Indy and Aries, we've created a [Getting Started Guide](https://github.com/hyperledger/aries-cloudagent-python/blob/master/docs/GettingStartedAriesDev/README.md) that will take you from knowing next to nothing about decentralized identity to developing Aries-based business apps and services in a hurry. Along the way, you'll run some early Indy apps, apps built on ACA-Py and developer-oriented demos for interacting with ACA-Py. The guide has a good table of contents so that you can skip the parts you already know.

We'll soon have a ReadTheDocs site published with docstrings extracted from the ACA-Py code.
### Read the Docs

The ACA-Py Python docstrings are used as the source of a [Read the Docs](https://aries-cloud-agent-python.readthedocs.io/en/latest/) code overview site. Want to review the
modules that make up ACA-Py? This is the best place to go.

### What to Focus On?

Not sure where your focus should be? Building apps? Aries? Indy? Indy's Blockchain? Ursa? Here is a [document](https://github.com/hyperledger/aries-cloudagent-python/blob/master/docs/GettingStartedAriesDev/IndyAriesDevOptions.md) that goes through the technical stack to show how the projects fit together, so you can decide where you want to focus your efforts.

## Credit

The initial implementation of ACA-Py was developed by the Verifiable Organizations Network (VON) team based at the Province of British Columbia. To learn more about VON and what's happening with decentralized identity in British Columbia, please go to [https://vonx.io](https://vonx.io).

## Contributing
Expand All @@ -89,10 +98,6 @@ Pull requests are welcome! Please read our [contributions guide](https://github.

We also welcome issues submitted about problems you encounter in using ACA-Py.

## Publishing Releases

The [publishing](https://github.com/hyperledger/aries-cloudagent-python/blob/master/PUBLISHING.md) document provides information on tagging a release and publishing the release artifacts to PyPi.

## License

[Apache License Version 2.0](https://github.com/hyperledger/aries-cloudagent-python/blob/master/LICENSE)
7 changes: 4 additions & 3 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@
"sphinx.ext.ifconfig",
"sphinx.ext.coverage",
"sphinx.ext.viewcode",
"sphinx.ext.githubpages",
"sphinx.ext.githubpages"
]

# Add any paths that contain templates here, relative to this directory.
Expand All @@ -73,7 +73,7 @@
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
#
source_suffix = [".rst", ".md"]
source_suffix = ['.rst', '.md']
# source_suffix = '.rst'

# The master toctree document.
Expand Down Expand Up @@ -187,7 +187,8 @@
"Aries CloudAgent Python Documentation",
author,
"AriesCloudAgentPython",
"A Hyperledger Aries cloud agent implemented in Python and suitable for use in (almost) any non-mobile environment.",
"A Hyperledger Aries cloud agent implemented in Python and\
suitable for use in (almost) any non-mobile environment.",
"Miscellaneous",
)
]
Expand Down
35 changes: 34 additions & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,42 @@
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Aries Cloud Agent Python Documentation
Aries Cloud Agent Python Code Documentation
===================================================

Hyperledger Aries Cloud Agent Python (ACA-Py) is a foundation for building decentralized
identity applications and services running in non-mobile environments.

This is the Read The Docs site for the Hyperledger
`Aries Cloud Agent Python <https://github.com/hyperledger/aries-cloudagent-python>`_.
This site contains only the ACA-Py docstrings documentation
extracted from the Python Code. For other documentation, please consult the links
in the Readme for the `ACA-Py <https://github.com/hyperledger/aries-cloudagent-python>`_
GitHub Repo. If you are getting started with verifiable credentials or Aries,
we recommend that you start with this `verifiable credentials and agents
getting started guide
<https://github.com/hyperledger/aries-cloudagent-python/tree/master/docs/GettingStartedAriesDev>`_.

All of the code in ACA-Py is within the `aries_cloudagent
<generated/aries_cloudagent.html>`_ module. To investigate the
code, use search or click on the `aries_cloudagent package` link in the left menu to
drill down into the modules, subpackages and submodules that make up ACA-Py.

Developers that are interested in what DIDComm protocols are supported in ACA-Py
should take a look at the `messaging <generated/aries_cloudagent.messaging.html>`_ subpackage.
Other general purpose subpackages that might be of particular interest include
`wallet <generated/aries_cloudagent.wallet.html>`_ and
`storage <generated/aries_cloudagent.messaging.html>`_. For those
agents playing different roles in a verifiable credential exchange, take a look
at the `issuer <generated/aries_cloudagent.issuer.html>`_,
`holder <generated/aries_cloudagent.holder.html>`_ and
`verifier <generated/aries_cloudagent.verifier.html>`_ packages.

Please see the `ACA-Py Contribution guidelines
<https://github.com/hyperledger/aries-cloudagent-python/blob/master/README.md#contributing>`_
for how to contribute to ACA-Py, including for how to submit issues about ACA-Py.


.. toctree::
:maxdepth: 2
:caption: Aries Cloud Agent Python - Modules
Expand Down

0 comments on commit 829f369

Please sign in to comment.