Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial description doc for developers #11

Merged
merged 2 commits into from
Mar 30, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions docs/40_development.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Developers information

## Current deployed instance

Uses Girder as a backend for storing dandisets on S3 in `s3://dandiarchive` with Girder keystore under `girder-assetstore/`

### https://github.com/dandi/dandiarchive - Web UI

- https://gui.dandiarchive.org/ is the deployed web UI instance

### https://github.com/dandi/dandi-cli/ - CLI/Python client

To be installed via `pip` or `conda` to interact with the archive.

### https://github.com/dandi/redirector - redirector

which provides redirects from https://dandiarchive.org/


## In development

It will use dandi-api service/backend which would provide specialized to dandiarchive functionality to
upload/download dandisets and public releases. All data ATM goes into a private bucket but later will migrate to
use `s3://dandiarchive`

### https://github.com/dandi/dandiarchive - Web UI

The same repository used as for the deployed instance but in a different "setup" so it uses dandi-api

- https://gui-beta-dandiarchive-org.netlify.app/ is the deployed Web UI instance working against dandi-api

### https://github.com/dandi/dandi-api/ - DANDI API service/backend

is DJANGO-based implementation of the DANDI API service to which both web UI
(https://github.com/dandi/dandiarchive)

- https://api.dandiarchive.org/swagger/ provides swagger interface to see and play around with the API server

### https://github.com/dandi/dandi-cli/ - CLI/Python client

The same client, but with `DANDI_DEVEL=1` env variable would enable command line options to interact with
`dandi-api` instead of a deployed instance.

### https://github.com/dandi/schema - exported DANDI schema

Contains json schemas for DANDI metata schema defined and exported by/from https://github.com/dandi/dandi-cli/ where
it resides in https://github.com/dandi/dandi-cli/blob/master/dandi/models.py and https://github.com/dandi/dandi-cli/blob/master/dandi/model_types.py


### http://github.com/dandi/dandi-api-datasets - CI dataset for metadata conversion & validation

Automatically updated (on drogon) given the current state of dandisets in the archive and dandi-cli (schema etc)