https://github.com/humphd/snowy-owls-ca
Tracking Snowy Owls Across Canada
https://github.com/humphd/snowy-owls-ca
arc aws-lambda canada ebird leaflet nextjs owl
Last synced: 4 months ago
JSON representation
Tracking Snowy Owls Across Canada
- Host: GitHub
- URL: https://github.com/humphd/snowy-owls-ca
- Owner: humphd
- License: other
- Created: 2020-12-03T18:57:14.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2020-12-21T14:33:41.000Z (almost 5 years ago)
- Last Synced: 2025-04-08T22:05:55.404Z (7 months ago)
- Topics: arc, aws-lambda, canada, ebird, leaflet, nextjs, owl
- Language: JavaScript
- Homepage: https://snowyowls.ca
- Size: 9.77 MB
- Stars: 8
- Watchers: 2
- Forks: 1
- Open Issues: 8
-
Metadata Files:
- Readme: readme.md
- License: LICENSE.md
Awesome Lists containing this project
README
# [SnowyOwls.ca](https://www.snowyowls.ca)
[](https://begin.com)
- Production: https://www.snowyowls.ca
- Staging: https://staging.snowyowls.ca
A web app to help people find Snowy Owls across Canada.

## Setup
```
npm install
```
You also need to install dependencies for the HTTP functions:
```
cd src/http/get-recent
npm install
cd src/http/post-analytics
npm install
```
## eBird Token
You need to request an [eBird API Token](https://ebird.org/api/keygen). Set the
value of your token in a new file, `.arc-env`:
```
@testing
API_KEY your-token-here
```
## Development
To start a local development server:
```
npm run dev
```
Navigate to http://localhost:3000. Use `ctrl+c` twice to kill the two servers.
## Testing
To run linting and tests:
```
npm run lint
npm test
```
## Building
To build a production bundle in `out/`:
```
npm run build
```
## Deploying
To deploy to staging, push to the `main` branch. [Staging](https://staging.snowyowls.ca) is always running what's on `main`.
To deploy to production, create a tag:
```
git tag -a 1.x.y -m "v1.x.y"
git push origin 1.x.y
```
## Notes
- if new HTTP functions are added to `src/http/*`, remember to also add rewrite rules to the custom dev server for local development: [dev.js](dev.js)
- make sure the entire dev environment stays under ~500M. Use `npm run size` to check it.