Synaplan
Open-source AI platform for companies: self-hosted AI agents, GDPR-compliant chatbot widget, RAG knowledge base, WhatsApp and Outlook AI, MCP, multi-model routing. Docker, Kubernetes or hosted in Germ
翻訳待ち
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Transition is a modern new approach to transit planning. This repo is a Node/React web application to model, simulate and plan public transit and alternative transportation.
Definitions and symbols used in the code and in the interface
For Ubuntu users: complete step-by-step development environment setup procedure
For users only interested in running Transition, without manually installing all the dependencies, follow these step-by-step instructions to set up Transition using Docker Desktop.
npm install -g corepack. Corepack then runs the Yarn version set in the packageManager field of package.json. A previously installed Yarn 1 should be uninstalled first. If you need to use yarn 1 for other projets you should run yarn set version 1.22.22 in that project directory.For Ubuntu 20.04 or 22.04 users, use:
sudo apt-get install postgresql postgis lua5.3 liblua5.3-dev \
capnproto libcapnp-dev postgresql-postgis postgresql-postgis-scripts rustc cargo rustfmt rust-clippy
.env file in the project root directory (you can copy the .env.example file) and setup the projectyarn install or just yarn: Will download the packages required by the applicationyarn compile: Convert the typescript files to javascriptyarn setup: Run this command to setup the database for the current projectyarn migrate: Update the database schema with latest changes. This can be run whenever the source code is updatedyarn create-user: Run this task to create a new user in the database. The user will be able to login to the web interface. This command can be run entirely in a non-interactive mode with the following parameters: yarn create-user --username <username> --email <email> --password <clearTextPassword> [--first_name <firstName> --last_name <lastName> --[no-]admin --[no-]valid --[no-]confirmed --prefs <jsonStringOfPreferences>]. For example, to create and administrator user with the english language as preference, run the following command yarn create-user --username admin --email [email protected] --password MyAdminPassword --admin --prefs '{ "lang": "en" }'An example configuration and geographical area can be found in the examples directory.
Create a config.js file with the project's configuration. See the config file in the examples directory for an example configuration.
The main options to configure are the mapDefaultCenter which is usually around the center of the area that will be served by the instance of Transition and the projectDirectory, which is the local path where runtime files, user data, local osrm files, log files, etc. will be stored.
The example config file contains preferences to run the osrm servers for each mode locally. They are started when Transition starts. To use external osrm server, the configuration can be updated as follows, for example for the walking mode:
[...]
walking: {
port: 5001,
host: https://external.osrm-server,
autoStart: false,
enabled: true
[...]
Route calculations for transit route, walking access or egress to transit stops, etc. require a routing engine (osrm), which itself requires the road network from OpenStreetMap. The following commands will download and prepare the road network data for use with osrm.
But first, a GeoJSON polygon file is required to specify the area for which to download and process the road network. To easily create a polygon, geojson.io can be used, which can then be copy-pasted to a file.
yarn node --max-old-space-size=4096 packages/chaire-lib-backend/lib/scripts/osrm/downloadOsmNetworkData.task.js --polygon-file examples/polygon_rtl_area.geojson
yarn node --max-old-space-size=4096 packages/chaire-lib-backend/lib/scripts/osrm/prepareOsmNetworkData.task.js
Transition relies on a few environment variables, that can either be set on the system, or contained in a .env file. First, copy the example .env file and edit the variables.
cp .env.example .env
PG_CONNECTION_STRING_PREFIX=postgres://postgres:@localhost:5432/ to PG_CONNECTION_STRING_PREFIX=postgres://postgres:YOUR_POSTGRES_PASSWORD@localhost:5432/EXPRESS_SESSION_SECRET_KEY to a random string with no space.PROJECT_CONFIG to point to your project's configuration file. The default is an example configuration file that can be copied and configured for your own need.This is the beginning of the README. Read the rest at the original. Read the full README ↗