https://github.com/avniproject/avni-media
Next.js application to view Media files for an organization
https://github.com/avniproject/avni-media
js nextjs npm webapp
Last synced: 5 months ago
JSON representation
Next.js application to view Media files for an organization
- Host: GitHub
- URL: https://github.com/avniproject/avni-media
- Owner: avniproject
- License: gpl-3.0
- Created: 2023-03-14T11:21:51.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-09-26T10:30:49.000Z (9 months ago)
- Last Synced: 2025-09-26T11:33:31.814Z (9 months ago)
- Topics: js, nextjs, npm, webapp
- Language: TypeScript
- Homepage:
- Size: 1.15 MB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Local Development
`avni-media` client and server do not support [username based authentication](https://avni.readme.io/docs/developer-environment-setup-ubuntu#conceptual-note) which is currently supported on `avni-server` for local development.
Connecting local avni-media to server/etl on another environment like staging leads to CORS errors.
Thus, for local development on avni-media, other avni components like `avni-server` and `avni-etl` need to be running locally with an IDP enabled i.e. Cognito or Keycloak.
### Other Avni Components
#### Environment Variables
I. Ensure that local `avni-server` and `avni-etl` have the following environment variables set
```
AVNI_IDP_TYPE
OPENCHS_CLIENT_ID
OPENCHS_IAM_USER_ACCESS_KEY
OPENCHS_IAM_USER_SECRET_ACCESS_KEY
OPENCHS_BUCKET_NAME
OPENCHS_USER_POOL
```
If using keycloak, also set the following on avni-server
```
OPENCHS_KEYCLOAK_SERVER
OPENCHS_KEYCLOAK_CLIENT_SECRET
OPENCHS_KEYCLOAK_ENABLED
```
II. Alternately, to work with Staging env IDP and Storage, you may use the following Make command in both avni-server and avni-etl. If required, override the DB and other details, Ex: OPENCHS_DATABASE_NAME=avni_org
```
## Init below fields in env variables
OPENCHS_STAGING_APP_CLIENT_ID
OPENCHS_STAGING_USER_POOL_ID
OPENCHS_STAGING_IAM_USER
OPENCHS_STAGING_IAM_USER_ACCESS_KEY
OPENCHS_STAGING_IAM_USER_SECRET_ACCESS_KEY
make start_server_staging OPENCHS_DATABASE_NAME=
```
### Avni Media
There is a `local.staging` environment template configured for `client` and `server` that help with running `avni-media` locally.
Look at `client/middleware.js` which takes care of routing the request to local `avni-server` and `avni-etl` in this mode.
#### Server
```
cd server
nvm use
make deps
make start-local-staging
```
#### Client
```
cd client
nvm use
make deps
make start-local-staging
```