Träwelling is a free check-in service that lets you tell your friends where you are and where you can log your public transit journeys. In short, you can check into trains and get points for it. Check it out at traewelling.de.
- Check into trains and other public transport options in most of Europe
- Track your work trips, e.g. for tax returns and travel expenses
- Follow other people and see where they're going
- Meet new friends who are on the same train
- Find who's going to an event and is in your train
- Automatic sharing to Twitter and Mastodon
- Available in German, English, Polish, French and Dutch
Set up an instance
Option 1: Using docker compose
docker folder you will find a sample docker-compose.yml and minimal settings in the .env files. Adjust the
values according to your requirements and start the containers:
cd docker docker-compose up
You can have sample data created if you set the environment variable
Option 2: Manual installation (e.g. for local development)
To set up a Träwelling instance you'll need:
- MariaDB or MySQL (SQLite is used for running tests)
- PHP 8.1 and the dependencies mentioned in composer.json
A local instance of db-rest v5 is recommended for the connection to HAFAS. Alternatively you can use a public instance (see .env.example).
After setting up these, you can clone the repository and install the project's dependencies:
composer install npm install
Now, you can create your own environment configuration:
cp .env.example .env vi .env
Please change whatever sounds wrong to you. This is also the place to add API keys (e.g. for Twitter). While you will not need all of those, you can stumble into weird bugs.
Then, generate some application keys and migrate the database to the latest level:
php artisan key:generate php artisan migrate #for example data use #php artisan db:seed php artisan passport:install
Last, but not least, you can run
npm run dev to build the frontend and watch for changes in the
Use your webserver of choice or the in php included dev server (
php artisan serve) to boot the application. You should
see the Träwelling homepage at http://localhost:8000.
Contributions are more than welcome. Please open an issue for bugs or feature requests. If you want to implement the feature - great; if you don't want to, that's fine, too.
If you add code:
If you edit the language files, please check if your change is applicable at least in english.
If you work on the front page (see screenshot above), please consider updating the screenshot.
Please consider adding unit and integration tests, especially if you're adding new features.
We currently support the languages German, English, Polish, French and Dutch. We would like to become even more international and for this we need you and your language skills.
We use a Weblate instance to manage the translations. There you can add new translations and correct mistakes.
If you have identified a security issue, please refrain from directly creating an issue or PullRequest so that the vulnerability is not exploited.
We are using the Affero General Public License (why?) - you are required to publish changes that you make to this software. Please refrain from creating your own public instance of Träwelling, instead try to create a better version for everyone.