update Contributing docs.
This commit is contained in:
parent
14fc7c642e
commit
df557ec2b9
|
@ -12,7 +12,7 @@ Fasten is made up of a handful of different components. Here's a summary of the
|
||||||
- Angular `v14.1.3`
|
- Angular `v14.1.3`
|
||||||
|
|
||||||
**Backend**
|
**Backend**
|
||||||
- Go `v1.18.3`
|
- Go `v1.22.1`
|
||||||
|
|
||||||
**Misc**
|
**Misc**
|
||||||
- Docker `v20.10.17`
|
- Docker `v20.10.17`
|
||||||
|
@ -105,9 +105,11 @@ The following URL's and credentials may be helpful as you're developing
|
||||||
- http://localhost:9090/web/dashboard - WebUI
|
- http://localhost:9090/web/dashboard - WebUI
|
||||||
|
|
||||||
### Credentials
|
### Credentials
|
||||||
- WebUI:
|
|
||||||
- username: `testuser`
|
Fasten stores all user data locally, including your account information. That means on first start you'll need to register a new account.
|
||||||
- password: `testuser`
|
Once you've done that, you'll want to go to the Sources tab and connect a healthcare provider.
|
||||||
|
|
||||||
|
See [Connecting a new Source](https://docs.fastenhealth.com/getting-started/sandbox.html#connecting-a-new-source) for credentials to use.
|
||||||
|
|
||||||
# Source Code Folder Structure
|
# Source Code Folder Structure
|
||||||
|
|
||||||
|
@ -151,44 +153,45 @@ The Fasten source code is organized into a handful of important folders, which w
|
||||||
│ │ │ │ ├── fasten-db.service.ts # db service, used to communicate with CouchDB database
|
│ │ │ │ ├── fasten-db.service.ts # db service, used to communicate with CouchDB database
|
||||||
│ │ │ │ ├── lighthouse.service.ts # api service, used to communicate with auth-gateway (Lighthouse)
|
│ │ │ │ ├── lighthouse.service.ts # api service, used to communicate with auth-gateway (Lighthouse)
|
||||||
│ │ │ │ └── toast.service.ts # notifications service, used to send notifications
|
│ │ │ │ └── toast.service.ts # notifications service, used to send notifications
|
||||||
│ │ │ └── workers
|
|
||||||
│ │ │ ├── queue.service.spec.ts
|
|
||||||
│ │ │ ├── queue.service.ts # queue service, used to coordinate background work
|
|
||||||
│ │ │ └── source-sync.worker.ts # background job (web-worker) that syncs all FHIR resources from healthcare provider
|
|
||||||
│ │ ├── lib # root directory for libraries
|
│ │ ├── lib # root directory for libraries
|
||||||
│ │ │ ├── README.md
|
|
||||||
│ │ │ ├── conduit # Conduit Library - HealthCare provider communication layer (FHIR protocol)
|
|
||||||
│ │ │ │ ├── fhir # contains healthcare provider specific FHIR clients
|
|
||||||
│ │ │ ├── database # Database Library - PouchDB/CouchDB client, compatible with web-worker and browser env
|
|
||||||
│ │ │ │ ├── plugins
|
|
||||||
│ │ │ │ └── pouchdb_repository.ts
|
|
||||||
│ │ │ ├── models
|
|
||||||
│ │ │ │ ├── database # Classes used to store data in CouchDB
|
|
||||||
│ │ │ │ ├── fasten
|
|
||||||
│ │ │ │ └── lighthouse # Classes used to communicate with Lighthouse API
|
|
||||||
│ │ │ └── utils
|
|
||||||
│ │ ├── styles.scss # Main sylesheet
|
│ │ ├── styles.scss # Main sylesheet
|
||||||
```
|
```
|
||||||
|
|
||||||
## Backend
|
## Backend
|
||||||
|
|
||||||
The backend is incredibly simple (by design). The hope is to remove it completely if possible, allowing Fasten to be served by
|
|
||||||
a CDN or minimal Nginx deployment.
|
|
||||||
|
|
||||||
```tree
|
```tree
|
||||||
├── backend
|
|
||||||
│ ├── cmd
|
backend
|
||||||
│ └── pkg
|
├── cmd
|
||||||
|
│ └── fasten
|
||||||
|
│ └── fasten.go
|
||||||
|
├── pkg
|
||||||
|
│ ├── auth
|
||||||
│ ├── config
|
│ ├── config
|
||||||
│ ├── database # contains CouchDB client, allowing creation of new Users (and associated databases)
|
│ ├── constants.go
|
||||||
│ ├── errors
|
│ ├── database # contains SQLite Database Client
|
||||||
│ ├── models
|
│ │ ├── migrations # contains database migrations
|
||||||
|
│ ├── event_bus # contains event bus for pub/sub in UI
|
||||||
|
│ ├── models # contains models for application
|
||||||
|
│ │ ├── database # contains database models, generated using Jennifer and supports search parameter extraction using FHIRPath.js to SQLite columns
|
||||||
|
│ │ │ ├── README.md
|
||||||
|
│ │ │ ├── choiceTypePaths.json
|
||||||
|
│ │ │ ├── fhirpath.min.js
|
||||||
|
│ │ │ ├── generate.go
|
||||||
|
│ │ │ ├── interface.go
|
||||||
|
│ │ │ ├── search-parameters.json
|
||||||
|
│ │ │ ├── searchParameterExtractor.js
|
||||||
|
│ │ │ ├── searchParameterExtractor_test.go
|
||||||
|
│ │ │ └── utils.go
|
||||||
|
│ ├── version
|
||||||
│ └── web
|
│ └── web
|
||||||
│ ├── handler # contains code for API endpoints
|
│ ├── handler # contains code for API endpoints
|
||||||
│ │ ├── auth.go # authentication endpoints (create new user)
|
│ ├── middleware # contains middleware for API endpoints
|
||||||
│ │ ├── cors_proxy.go # CORS proxy/relay for communicating with healthcare providers who do not support CORS
|
│ └── server.go
|
||||||
│ │ ├── couchdb_proxy.go # reverse proxy for CouchDB api, allowing for database API to be exposed (with limitations)
|
└── resources
|
||||||
│ │ └── metadata.go # API endpoint returning metadata for healthcare providers
|
├── related_versions.go # contains tools that help extract verion infromation for binaries
|
||||||
|
└── related_versions.json
|
||||||
```
|
```
|
||||||
|
|
||||||
## Distribution/Docker
|
## Distribution/Docker
|
||||||
|
@ -198,16 +201,11 @@ a CDN or minimal Nginx deployment.
|
||||||
├── Dockerfile # dockerfile for "all-in-one" image, containing frontend, backend & database
|
├── Dockerfile # dockerfile for "all-in-one" image, containing frontend, backend & database
|
||||||
├── docker
|
├── docker
|
||||||
│ ├── README.md
|
│ ├── README.md
|
||||||
│ ├── couchdb
|
|
||||||
│ │ ├── Dockerfile # dockerfile for "couchdb" only image, used for development
|
|
||||||
│ │ └── local.ini
|
|
||||||
│ └── rootfs # filesystem configs, used in Dockerfiles to setup s6-overlay service manager
|
│ └── rootfs # filesystem configs, used in Dockerfiles to setup s6-overlay service manager
|
||||||
│ └── etc
|
│ └── etc
|
||||||
│ ├── cont-init.d
|
│ ├── cont-init.d
|
||||||
│ │ ├── 01-timezone
|
│ │ ├── 01-timezone
|
||||||
│ │ └── 50-couchdb-init
|
|
||||||
│ └── services.d
|
│ └── services.d
|
||||||
│ ├── couchdb
|
|
||||||
│ └── fasten
|
│ └── fasten
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
Loading…
Reference in New Issue