https://github.com/entur/enki
Front-end for Nplan
https://github.com/entur/enki
enki frontend nplan ror uttu
Last synced: 11 months ago
JSON representation
Front-end for Nplan
- Host: GitHub
- URL: https://github.com/entur/enki
- Owner: entur
- License: eupl-1.2
- Created: 2019-01-09T09:33:15.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-07-18T13:58:25.000Z (11 months ago)
- Last Synced: 2025-07-18T18:21:22.251Z (11 months ago)
- Topics: enki, frontend, nplan, ror, uttu
- Language: TypeScript
- Homepage: https://nplan.entur.org
- Size: 13.4 MB
- Stars: 11
- Watchers: 9
- Forks: 7
- Open Issues: 31
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Enki

[](https://sonarcloud.io/dashboard?id=entur_enki)
Frontend app for Nplan - a simple timetable editor. Backend is [Uttu](https://github.com/entur/uttu).
## Development
To run for development, simply do:
```
npm install
npm start
```
See http://localhost:3001/providers or http://localhost:3001/lines for providers and lines.
Note: The app uses Node version 22 (LTS).
To run together with a local instance of [Uttu](https://github.com/entur/uttu) on port 11701, add the following to `.env.development.local`.
```
REACT_APP_UTTU_API_URL=http://localhost:11701/services/flexible-lines
```
## Configuration
Configuration is bootstrapped from `/bootstrap.json`, when the app loads. You should add your environment-specific
config to the deployment, along with the built static files (i.e. in the `build/` folder).
For local development, add a `bootstrap.json` file to the `public/` folder, e.g.:
```
$ cp .github/environments/local.json public/bootstrap.json
```
See `src/config/ConfigContext.ts` for the shape of the configuration.
## Authentication
Uses OIDC for authentication. This solution is agnostic to which authentication provider you use.
Example configuration (works with Auth0):
```json
{
"oidcConfig": {
"authority": "https://",
"client_id": "",
"extraQueryParams": {
"audience": ""
}
}
}
```
For full configuration reference, see [oidc-client-ts documentation](https://authts.github.io/oidc-client-ts/interfaces/UserManagerSettings.html).
### Bypass authentication locally
It's possible to bypass authentication locally with the configuration parameter `disableAuthentication`
set to `true`. This can be used in combination with the `local-no-authentication` profile in the backend.
## Testing
Uses [Jest](https://facebook.github.io/jest) for unit and reducer testing.
```
npm test
```