Skip to main content

GTFS Viewer written using Flask

Project description

logo

jvig

Pronounced d͡ʑvʲik (from 🇵🇱dźwig), it's a GTFS Viewer, created using Flask.

jvig is still work-in-progress, but it works.

Installation

Install Python (at least 3.9) and pip. Consult your OS repositories for the package names, but these are usually python3 and python3-pip. If you use a system without a package manager, I'd strongly recommend using one, like brew (for MacOS) or Chocolatey (for Windows).

After that, install jvig using pip: pip install --upgrade jvig.

Usage

jvig /path/to/gtfs.zip

or (if the place where pip install scripts is not in PATH):

python3 -m jvig /path/to/gtfs.zip

jvig can open both folders and ZIP archives.

jvig itself doesn't contain a GUI - rather it spawns a web server on localhost and port 5000. After seeing * Running on http://127.0.0.1:5000 on the console, open up http://127.0.0.1:5000.

WARNING: This is a development server.

jvig uses the default Flask server, which is not suitable for opening up to the Internet. jvig only binds to the loopback address, and the server is only accessible from your own computer.

Please don't serve jvig to the whole web.

Features/Todos

Shown GTFS tables

  • agencies
  • stops
  • routes
  • trips
  • frequencies
  • calendars
  • fares
  • transfers
  • pathways
  • feed_info
  • attributions
  • translations
  • shapes

Other improvements

  • search (provided by the browser)
  • verify dark mode
  • file-picker if no file was provided
  • better loading screen

License

GNU GPL v3 or later. Full text available in file license.md.

Icon

Awful, I know. Make a better one if you want to.

Currently it's these 2 things combined:

Development

This project uses isort and black for file formatting and pyright for type checking. The maximum line length is increased to 99, and the type checking is set to strict.

CI runs the following commands to help maintain high code quality:

$ black --check .
$ isort --check .
$ pyright
$ python -m pytest

If you use VS Code I recommend using the following settings:

{
    "[python]": {
        "editor.codeActionsOnSave": {
            "source.organizeImports": true
        },
        "editor.formatOnSave": true
    },
    "js/ts.implicitProjectConfig.checkJs": true,
    "python.formatting.provider": "black",
    "python.languageServer": "Pylance",
    "python.linting.enabled": false,
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jvig-1.1.1.tar.gz (86.9 kB view hashes)

Uploaded Source

Built Distribution

jvig-1.1.1-py3-none-any.whl (100.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page