Skip to content

Commit

Permalink
Update README
Browse files Browse the repository at this point in the history
  • Loading branch information
nathanielrindlaub committed Aug 9, 2024
1 parent 0d13a04 commit 31f274f
Showing 1 changed file with 32 additions and 32 deletions.
64 changes: 32 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,33 +3,7 @@
An AWS Lambda-based, GraphQl interface for performing CRUD operations on camera
trap data stored in MongoDB.

## `Related repos`

Animl is comprised of a number of microservices, most of which are managed in their own repositories.

### Core services

Services necessary to run Animl:

- [Animl Ingest](http://github.com/tnc-ca-geo/animl-ingest)
- [Animl API](http://github.com/tnc-ca-geo/animl-api)
- [Animl Frontend](http://github.com/tnc-ca-geo/animl-frontend)
- [EXIF API](https://github.com/tnc-ca-geo/exif-api)

### Wireless camera services

Services related to ingesting and processing wireless camera trap data:

- [Animl Base](http://github.com/tnc-ca-geo/animl-base)
- [Animl Email Relay](https://github.com/tnc-ca-geo/animl-email-relay)
- [Animl Ingest API](https://github.com/tnc-ca-geo/animl-ingest-api)

### Misc. services

- [Animl ML](http://github.com/tnc-ca-geo/animl-ml)
- [Animl Analytics](http://github.com/tnc-ca-geo/animl-analytics)

## `Overview`
## Overview

Animl is an open, extensible, cloud-based platform for managing camera trap data.
We are developing this platform because there currently are no software tools that allow
Expand All @@ -53,7 +27,7 @@ associated deployment resources are managed with the
- [MongoDB Atlas](https://www.mongodb.com/cloud/atlas) via
[Mongoose](https://mongoosejs.com/)

## `Development`
## Development

### Prerequisites

Expand Down Expand Up @@ -170,12 +144,12 @@ npm run codegen

The generated types can be found in `src/@types/graphql.ts`

## `Data managment`
## Data managment

There are a handful of scripts in the `src/scripts/` directory to assist with
managing data in both the production and dev databases.

### `Creating backups`
### Creating backups

To create a complete JSON export of all collections in a DB, run:

Expand All @@ -184,11 +158,11 @@ npm run export-db-dev // export dev db
npm run export-db-prod // export prod db
```

### `Importing data from a backups`
### Importing data from a backups

TODO: write and test `importDb.js`

### `Updating documents in MongoDB`
### Updating documents in MongoDB

`updateDocuments.js` is a working template for writing targeted data updates.
It can be adapted to perform specific deletions/updates. You can run it with
Expand Down Expand Up @@ -218,3 +192,29 @@ Use caution when deploying to production, as the application involves multiple s
7. Turn off `IN_MAINTENANCE_MODE` in animl-frontend and animl-ingest, and deploy both to prod, and clear cloudfront cache.

8. Copy any images that happened to land in `animl-images-parkinglot-prod` while the stacks were being deployed to `animl-images-ingestion-prod`, and then delete them from the parking lot bucket.

## Related repos

Animl is comprised of a number of microservices, most of which are managed in their own repositories.

### Core services

Services necessary to run Animl:

- [Animl Ingest](http://github.com/tnc-ca-geo/animl-ingest)
- [Animl API](http://github.com/tnc-ca-geo/animl-api)
- [Animl Frontend](http://github.com/tnc-ca-geo/animl-frontend)
- [EXIF API](https://github.com/tnc-ca-geo/exif-api)

### Wireless camera services

Services related to ingesting and processing wireless camera trap data:

- [Animl Base](http://github.com/tnc-ca-geo/animl-base)
- [Animl Email Relay](https://github.com/tnc-ca-geo/animl-email-relay)
- [Animl Ingest API](https://github.com/tnc-ca-geo/animl-ingest-api)

### Misc. services

- [Animl ML](http://github.com/tnc-ca-geo/animl-ml)
- [Animl Analytics](http://github.com/tnc-ca-geo/animl-analytics)

0 comments on commit 31f274f

Please sign in to comment.