{"id":23557430,"url":"https://github.com/codetoby/transistor-project","last_synced_at":"2025-05-15T23:31:15.234Z","repository":{"id":268225355,"uuid":"903568935","full_name":"codetoby/transistor-project","owner":"codetoby","description":"A Bus Routing Engine for Maastricht","archived":false,"fork":false,"pushed_at":"2024-12-15T10:09:00.000Z","size":72466,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-17T14:45:16.768Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codetoby.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-14T23:54:26.000Z","updated_at":"2024-12-15T10:09:04.000Z","dependencies_parsed_at":"2024-12-15T11:30:18.373Z","dependency_job_id":null,"html_url":"https://github.com/codetoby/transistor-project","commit_stats":null,"previous_names":["codetoby/transistor-project"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codetoby%2Ftransistor-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codetoby%2Ftransistor-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codetoby%2Ftransistor-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codetoby%2Ftransistor-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codetoby","download_url":"https://codeload.github.com/codetoby/transistor-project/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254442219,"owners_count":22071860,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-26T14:29:39.581Z","updated_at":"2025-05-15T23:31:10.209Z","avatar_url":"https://github.com/codetoby.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Maastricht Public Transport Routing\n\nThis project aims to optimize public transport routing within Maastricht using the General Transit Feed Specification (GTFS) dataset. The focus is on creating an efficient routing algorithm that utilizes a well-structured relational database to enhance the user experience in navigating the city’s bus network.\n\n## Table of Contents\n\n- [Getting Started](#getting-started)\n  - [Prerequisites](#prerequisites)\n  - [Database Setup](#setup-database)\n  - [Installation](#installation)\n- [Usage](#usage)\n- [Running the Tests](#running-the-tests)\n  - [Unit Tests](#unit-tests)\n  - [Code Coverage](#code-coverage)\n- [Built With](#built-with)\n\n## Getting Started\n\nThese instructions will get you a copy of the project up and running on your local machine for development and testing purposes.\n\n### Prerequisites\n\nWhat things you need to install the software and how to install them:\n\nJava JDK 11 or later\nMaven 3.6 or later\nDocker\nA suitable IDE like IntelliJ IDEA or Eclipse\n\n### Setup Database\n1. Run docker compose from project root directory:\n```bash \n$ docker compose up -d\n```\n\n2. Get container name:\n```bash\n$ docker ps\n```\n\n3. Copy files to the container:\n```bash\n$ docker cp ./gtfs \u003ccontainer-name\u003e:/\n$ docker cp ./scripts/zipcodes/CompleteZipCodes.txt \u003ccontainer-name\u003e:/\n$ docker cp ./scripts/sql/setup_database.sql \u003ccontainer-name\u003e:/\n```\n\n4. Access the container:\n```bash\n$ docker exec -it \u003ccontainer-name\u003e /bin/bash\n```\n\n5. Access mysql as root (root password can be found in docker compose file):\n```bash\n$ mysql -u root -p\n```\n\n6. Set the local infile variable in mysql command line:\n```bash\nmysql\u003e SET GLOBAL local_infile=1;\n```\n\n7. Exit mysql server:\n```bash\nmysql\u003e exit\n```\n\n8. Connect to the server with local-infile system variable:\n```bash\n$ mysql --local-infile=1 -u root -p\n```\n\n9. Run script to create and fill tables:\n```bash\nmysql\u003e source ./scripts/sql/setup_database.sql\n```\n\n\n### Installation\n\nA step-by-step series of examples that tell you how to get a development environment running:\n\n1. Clone the repository:\n```bash\n   git clone https://github.com/codetoby/transistor-project.git .\n```\n2. Install Maven dependencies:\n```bash\n    mvn install\n```\n3. Compile the project:\n```bash\n    mvn compile\n```\n\n## Database Configuration Setup\n\nTo configure the database settings for the application, please create a new .env file in the root directory of the project and provide the following properties:\n1. `MYSQL_DATABASE` - The URL of the database server.\n2. `MYSQL_USER` - The username to connect to the database.\n3. `MYSQL_PASSOWRD` - The password to connect to the database.\n4. `MYSQL_ROOT_PASSOWRD` - The name of the database to connect to.\n\nFor guidance on the format and available configuration options, refer to the example file provided at:\n\n```bash\n.env.example\n```\n\n## Usage\n```bash\nmvn exec:java -D\"exec.mainClass\"=\"org.group14.App\"\n```\n\n## Running the Tests\n\n### Unit Tests\n```bash\nmvn test\n```\n### Code Coverage\n```bash\nmvn jacoco:report\n```\nThis will generate a report in `target/site/jacoco/index.html`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodetoby%2Ftransistor-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodetoby%2Ftransistor-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodetoby%2Ftransistor-project/lists"}