pointsight/README.MD

83 lines
2.1 KiB
Plaintext
Raw Permalink Normal View History

2022-03-06 18:36:36 +01:00
# Pointsight
Pointsight is a centrailzed geolocatlized api aggreagtor.
# To be done before feature lock
- [X] Feature to report points
- [ ] API usage tracking (MySQL done; influx done; limiting tbd)
- [X] Proper error messages, on page crash loading failure, lost connection
- [X] Shareable points, open by link
- [X] Offline version
- [X] Filter sidebar
# Configuration
This is the configuration with all it's defaults.
```
let jsonConfigGlobal = {
fontAwesome: undefined,
mapboxAccessToken: undefined,
cookieSecret: undefined,
mapquest: undefined,
here: undefined,
sentryDsn: undefined,
database: {
host: "127.0.0.1",
user: "pointsight",
password: "CHANGE_ME",
database: "pointsight",
customSettings: {
wait_timout: 28800
}
},
env: "PROD",
maint: true,
betaMode: false,
port: 3000,
adress: '127.0.0.1',
taxonomyCacheInterval: 5,
metrics: {
influx: {
enable: false,
host: "127.0.0.1",
database: "pointsight",
user: "pointsight",
password: "CHANGE_ME",
},
writeMetricsToMySQL: true
}
}
```
# How to deploy
1. Make sure Node.js is installed
2. Clone repo
3. Run the `npm install` command
4. Create the `config/default.json` file with proper settings
1. Make sure `env` is set to `PROD`
2. Make sure `maint` is set to `false`
3. Make sure the database credentials are set
5. Start the server with `npm start`, this starts the server on port 3000
## Troubleshooting
**The map stays empty**
Cause: The data cannot be loaded because the API key was not imported.
Solution: Import the `b03f8aaf-1f32-4d9e-914a-9a50f904833d` into the `apikeys` table. After importing it you may use the apikey manager to change it's options.
**The map is not being displayed**
Cause: The maps tiles cannot be loaded as the API key is missing.
Solution: Make sure the config contains the correct apikey.
# For developers
## Adding a new module
1. Copy the example module folder
2. Change the `main.js` to your needs.
1. Update the modules meta data in the `getModuleMeta()` funcion
2. Make sure to use the right country for your module