opentripplanner

An open source multi-modal trip planner

https://github.com/opentripplanner/opentripplanner

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    2 of 250 committers (0.8%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.3%) to scientific vocabulary

Keywords from Contributors

transit-data bus gtfs-analysis gtfs-converters gtfs-feed gtfs-files gtfs-libraries gtfs-realtime gtfs-utils gtfs-validator
Last synced: 10 months ago · JSON representation

Repository

An open source multi-modal trip planner

Basic Info
Statistics
  • Stars: 2,413
  • Watchers: 146
  • Forks: 1,075
  • Open Issues: 148
  • Releases: 9
Created almost 15 years ago · Last pushed 10 months ago
Metadata Files
Readme Contributing License Codeowners

README.md

Overview

Join the chat at https://gitter.im/opentripplanner/OpenTripPLanner Matrix codecov Commit activity Docker Pulls

OpenTripPlanner (OTP) is an open source multi-modal trip planner, focusing on travel by scheduled public transportation in combination with bicycling, walking, and mobility services including bike share and ride hailing. Its server component runs on any platform with a Java virtual machine ( including Linux, Mac, and Windows). It exposes GraphQL APIs that can be accessed by various clients including open source Javascript components and native mobile applications. It builds its representation of the transportation network from open data in open standard file formats (primarily GTFS and OpenStreetMap). It applies real-time updates and alerts with immediate visibility to clients, finding itineraries that account for disruptions and service changes.

Note that this branch contains OpenTripPlanner 2, the second major version of OTP, which has been under development since 2018 and is now the dominant one and the only one being supported.

Performance Test

📊 Dashboard

We run a speed test (included in the code) to measure the performance for every PR merged into OTP.

More information about how to set up and run it.

Repository layout

The main Java server code is in application/src/main/. OTP also includes a Javascript client based on the MapLibre mapping library in client/src/. This client is now used for testing, with most major deployments building custom clients from reusable components. The Maven build produces a unified ("shaded") JAR file at otp-shaded/target/otp-shaded-VERSION.jar containing all necessary code and dependencies to run OpenTripPlanner.

Additional information and instructions are available in the main documentation, including a quick introduction.

Development

OpenTripPlanner is a collaborative project incorporating code, translation, and documentation from contributors around the world. We welcome new contributions. Further development guidelines can be found in the documentation.

Development history

The OpenTripPlanner project was launched by Portland, Oregon's transport agency TriMet (http://trimet.org/) in July of 2009. As of this writing in Q3 2020, it has been in development for over ten years. See the main documentation for an overview of OTP history and a list of cities and regions using OTP around the world.

Getting in touch

The fastest way to get help is to use our Gitter chat room where most of the core developers are. Bug reports may be filed via the Github issue tracker. The OpenTripPlanner mailing list is used almost exclusively for project announcements. The mailing list and issue tracker are not intended for support questions or discussions. Please use the chat for this purpose. Other details of project governance can be found in the main documentation.

OTP Ecosystem

  • awesome-transit Community list of transit APIs, apps, datasets, research, and software.

GitHub Events

Total
  • Create event: 152
  • Commit comment event: 1
  • Release event: 1
  • Issues event: 276
  • Watch event: 197
  • Delete event: 141
  • Issue comment event: 1,650
  • Push event: 736
  • Pull request review comment event: 1,960
  • Pull request event: 829
  • Pull request review event: 2,726
  • Fork event: 52
Last Year
  • Create event: 152
  • Commit comment event: 1
  • Release event: 1
  • Issues event: 276
  • Watch event: 197
  • Delete event: 141
  • Issue comment event: 1,650
  • Push event: 736
  • Pull request review comment event: 1,960
  • Pull request event: 829
  • Pull request review event: 2,726
  • Fork event: 52

Committers

Last synced: 11 months ago

All Time
  • Total Commits: 23,689
  • Total Committers: 250
  • Avg Commits per committer: 94.756
  • Development Distribution Score (DDS): 0.809
Past Year
  • Commits: 3,051
  • Committers: 40
  • Avg Commits per committer: 76.275
  • Development Distribution Score (DDS): 0.663
Top Committers
Name Email Commits
Leonard Ehrenfried m****l@l****o 4,513
Thomas Gran t****n@g****m 3,070
Andrew Byrd a****w@f****t 2,807
Hannes Junnila h****a@g****m 1,245
novalis n****s@o****g 1,042
Joel Lappalainen l****8@g****m 907
OTP Changelog Bot c****t@o****g 720
Gard Mellemstrand g****d@e****g 699
Laurent Grégoire l****e@g****m 638
David Turner n****s@n****g 584
renovate[bot] 2****] 468
Matthew Wigginton Conway m****t@i****g 445
Vesa Meskanen v****n@c****m 428
Vincent Paturet v****t@e****g 425
Zsombor Welker z****r@r****o 361
Avi Flamholz f****z@r****m 303
Marko Burjek s****o@g****m 255
Jorden Verwer j****r@g****m 230
Brandon Martin-Anderson b****l@g****m 229
David Emory d****y@c****m 202
Hannes Junnila h****s@k****m 181
David Emory d****y@o****g 180
Nicholas Bergson-Shilcock me@n****t 169
Ville Pihlava v****a@c****m 166
OTP Serialization Version Bot s****t@o****g 165
Michael Tsang m****g@j****k 162
jkoelewijn g****t@j****l 155
Viljami Nurminen v****n@c****m 135
Matt Conway m****y@g****m 131
Tom Erik Støwer t****r@g****m 125
and 220 more...

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 369
  • Total pull requests: 1,661
  • Average time to close issues: 5 months
  • Average time to close pull requests: 18 days
  • Total issue authors: 100
  • Total pull request authors: 63
  • Average comments per issue: 2.51
  • Average comments per pull request: 2.2
  • Merged pull requests: 1,196
  • Bot issues: 6
  • Bot pull requests: 498
Past Year
  • Issues: 184
  • Pull requests: 1,021
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 9 days
  • Issue authors: 53
  • Pull request authors: 36
  • Average comments per issue: 0.98
  • Average comments per pull request: 2.07
  • Merged pull requests: 714
  • Bot issues: 1
  • Bot pull requests: 282
Top Authors
Issue Authors
  • miklcct (73)
  • t2gran (38)
  • leonardehrenfried (37)
  • vpaturet (22)
  • BredeD (18)
  • optionsome (11)
  • andtry (8)
  • vesameskanen (7)
  • VillePihlava (7)
  • hbruch (6)
  • fpurcell (6)
  • renovate[bot] (6)
  • habrahamsson-skanetrafiken (5)
  • hannesj (4)
  • eibakke (4)
Pull Request Authors
  • renovate[bot] (498)
  • leonardehrenfried (375)
  • t2gran (148)
  • vpaturet (92)
  • optionsome (82)
  • miklcct (80)
  • habrahamsson-skanetrafiken (48)
  • eibakke (37)
  • tkalvas (28)
  • testower (26)
  • VillePihlava (25)
  • flaktack (24)
  • vesameskanen (24)
  • abyrd (14)
  • mattwigway (13)
Top Labels
Issue Labels
Stale (85) Entur (32) Roadmap (27) bug (26) new feature (24) Bug (22) New Feature (15) Skanetrafiken (8) technical debt (8) IBI (8) improvement (7) RealTimeUpdate (7) HSL (7) routeRank (6) Improvement (5) skip changelog (5) TriMet (5) NeTEx (5) Regression (5) Technical Debt (4) OTP Debug UI (4) NVBW (3) Skip Changelog (3) documentation (2) GTFS (2) Real-Time Update (2) Entur Test (1) High Priority (1) bump serialization id (1) Documentation (1)
Pull Request Labels
Skip Changelog (652) skip changelog (325) Technical Debt (152) Improvement (119) Bug (113) bump serialization id (111) technical debt (77) Entur Test (71) improvement (64) Sandbox (59) IBI (53) OTP Debug UI (49) Documentation (44) bug (43) sandbox (42) RealTimeUpdate (42) Real-Time Update (41) New Feature (36) Entur test (33) GTFS (30) documentation (25) new feature (22) Skanetrafiken (21) config change (18) Config Change (15) NeTEx (15) Developer Decision Record (10) Regression (9) Digitransit Test (8) HSL (6)

Packages

  • Total packages: 3
  • Total downloads: unknown
  • Total docker downloads: 98
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 8
    (may contain duplicates)
  • Total versions: 40
proxy.golang.org: github.com/opentripplanner/OpenTripPlanner
  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 10 months ago
proxy.golang.org: github.com/opentripplanner/opentripplanner
  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 10 months ago
repo1.maven.org: org.opentripplanner:otp

The OpenTripPlanner multimodal journey planning system

  • Versions: 14
  • Dependent Packages: 0
  • Dependent Repositories: 8
  • Docker Downloads: 98
Rankings
Docker downloads count: 5.1%
Forks count: 5.3%
Stargazers count: 8.3%
Dependent repos count: 8.6%
Average: 15.5%
Dependent packages count: 49.9%
Last synced: 10 months ago

Dependencies

.github/workflows/cibuild.yml actions
  • actions/checkout v3.3.0 composite
  • actions/checkout v3.1.0 composite
  • actions/checkout v3 composite
  • actions/setup-java v3 composite
  • actions/setup-node v3 composite
  • al-cheb/configure-pagefile-action v1.3 composite
  • codecov/codecov-action v3.1.1 composite
.github/workflows/close_stale_pr_and_issues.yml actions
  • actions/stale v6.0.1 composite
.github/workflows/performance-test.yml actions
  • actions/checkout v3.1.0 composite
  • actions/setup-java v3 composite
  • actions/upload-artifact v3 composite
  • stCarolas/setup-maven v.4.5 composite
.github/workflows/post-merge.yml actions
  • actions/checkout v3.1.0 composite
pom.xml maven
  • com.google.cloud:libraries-bom 26.22.0 import
  • ch.poole:OpeningHoursParser 0.27.1
  • ch.qos.logback:logback-classic 1.4.11
  • com.azure.resourcemanager:azure-resourcemanager-servicebus 2.24.0
  • com.azure:azure-core 1.36.0
  • com.azure:azure-messaging-servicebus 7.13.2
  • com.beust:jcommander 1.82
  • com.conveyal:kryo-tools 1.5.0
  • com.fasterxml.jackson.core:jackson-annotations 2.15.2
  • com.fasterxml.jackson.core:jackson-core 2.15.2
  • com.fasterxml.jackson.core:jackson-databind 2.15.2
  • com.fasterxml.jackson.datatype:jackson-datatype-jdk8 2.15.2
  • com.fasterxml.jackson.datatype:jackson-datatype-jsr310 2.15.2
  • com.google.cloud:google-cloud-pubsub
  • com.google.cloud:google-cloud-storage
  • com.google.dagger:dagger 2.48
  • com.google.guava:guava 32.1.2-jre
  • com.google.protobuf:protobuf-java
  • com.googlecode.json-simple:json-simple 1.1.1
  • com.graphql-java:graphql-java 21.1
  • com.graphql-java:graphql-java-extended-scalars 21.0
  • com.microsoft.azure:azure-servicebus 3.6.7
  • de.javakaffee:kryo-serializers 0.45
  • edu.ucar:netcdf4 5.5.3
  • io.github.ci-cmg:mapbox-vector-tile 4.0.6
  • io.micrometer:micrometer-registry-prometheus 1.11.4
  • jakarta.annotation:jakarta.annotation-api
  • jakarta.validation:jakarta.validation-api
  • jakarta.ws.rs:jakarta.ws.rs-api
  • jakarta.xml.bind:jakarta.xml.bind-api 3.0.1
  • net.java.dev.jets3t:jets3t 0.9.4
  • net.logstash.logback:logstash-logback-encoder 7.4
  • net.objecthunter:exp4j 0.4.8
  • net.sourceforge.javacsv:javacsv 2.0
  • org.apache.httpcomponents.client5:httpclient5 5.2.1
  • org.apache.lucene:lucene-core 9.7.0
  • org.apache.lucene:lucene-queryparser 9.7.0
  • org.apache.lucene:lucene-suggest 9.7.0
  • org.asynchttpclient:async-http-client 2.12.3
  • org.eclipse.paho:org.eclipse.paho.client.mqttv3 1.2.5
  • org.entur.gbfs:gbfs-java-model 3.0.9
  • org.entur:netex-java-model 2.0.14
  • org.entur:siri-java-model 1.22
  • org.entur:siri-protobuf-mapper 1.0.3
  • org.geotools:gt-coverage 29.2
  • org.geotools:gt-geojson-core 29.2
  • org.geotools:gt-geotiff 29.2
  • org.geotools:gt-opengis 29.2
  • org.glassfish.jaxb:jaxb-runtime 3.0.2
  • org.glassfish.jersey.containers:jersey-container-grizzly2-http 3.1.3
  • org.glassfish.jersey.core:jersey-server 3.1.3
  • org.glassfish.jersey.inject:jersey-hk2 3.1.3
  • org.glassfish.jersey.media:jersey-media-json-jackson 3.1.3
  • org.onebusaway:onebusaway-gtfs 1.4.5
  • org.openstreetmap.osmosis:osmosis-osm-binary 0.48.3
  • org.processing:core 2.2.1
  • org.slf4j:jul-to-slf4j 2.0.9
  • org.slf4j:slf4j-api 2.0.9
  • com.tngtech.archunit:archunit 1.1.0 test
  • commons-cli:commons-cli 1.5.0 test
  • io.github.origin-energy:java-snapshot-testing-junit5 2.3.0 test
  • io.micrometer:micrometer-registry-influx 1.11.4 test
  • org.apache.commons:commons-compress 1.24.0 test
  • org.junit.jupiter:junit-jupiter-api 5.10.0 test
  • org.junit.jupiter:junit-jupiter-params 5.10.0 test
  • org.mockito:mockito-core 5.5.0 test
src/ext/java/org/opentripplanner/ext/gtfsgraphqlapi/generated/package.json npm
  • @graphql-codegen/add 5.0.0
  • @graphql-codegen/cli 4.0.1
  • @graphql-codegen/java 3.3.6
  • @graphql-codegen/java-resolvers 2.3.6
  • graphql 16.8.1
src/ext/java/org/opentripplanner/ext/gtfsgraphqlapi/generated/yarn.lock npm
  • 439 dependencies
docs/requirements.txt pypi
  • mkdocs ==1.5.2
  • mkdocs-material ==9.1.17
  • mkdocs-no-sitemap-plugin ==0.0.1