{"id":48828348,"url":"https://github.com/jonoomph/spinout","last_synced_at":"2026-04-14T19:01:54.179Z","repository":{"id":345362616,"uuid":"1028041823","full_name":"jonoomph/spinout","owner":"jonoomph","description":"Lightweight car dynamics sim for AI control on challenging terrain. EXPERIMENTAL and WIP.","archived":false,"fork":false,"pushed_at":"2026-03-18T19:22:26.000Z","size":1700,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-19T08:41:47.573Z","etag":null,"topics":["ai","driving-simulator","experimental","self-driving","simulation"],"latest_commit_sha":null,"homepage":"http://spinout.openshot.org","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jonoomph.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-07-29T00:12:15.000Z","updated_at":"2026-03-18T19:22:30.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/jonoomph/spinout","commit_stats":null,"previous_names":["jonoomph/spinout"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/jonoomph/spinout","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonoomph%2Fspinout","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonoomph%2Fspinout/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonoomph%2Fspinout/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonoomph%2Fspinout/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jonoomph","download_url":"https://codeload.github.com/jonoomph/spinout/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonoomph%2Fspinout/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31810741,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T18:05:02.291Z","status":"ssl_error","status_checked_at":"2026-04-14T18:05:01.765Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["ai","driving-simulator","experimental","self-driving","simulation"],"created_at":"2026-04-14T19:01:52.482Z","updated_at":"2026-04-14T19:01:54.166Z","avatar_url":"https://github.com/jonoomph.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Spinout\n\n### Lightweight car dynamics sim for AI control on challenging terrain.\n\n---\n\n## Overview\n\n**Spinout** is a fast, minimal, OpenGL-accelerated driving simulator built to test and train **AI controllers** (PID, RL, or custom models) in **accurate vehicle dynamics** over **randomly generated terrain and roads**.  \n\nForget the bloated dependencies and high-fidelity rendering of other simulators—Spinout is all about **speed, physics accuracy, and control evaluation**.\n\n[Watch Video Demo](https://github.com/user-attachments/assets/329bb3c3-9c3f-4c3b-9294-0d1080335e63)\n\n![sunset.png](img/sunset.png)\n![grass.png](img/grass.png)\n![rain.png](img/rain.png)\n![dirt.png](img/dirt.png)\n\n**Early-stage, but already usable for controller experiments and sim development.**\n\n---\n## What It Does\n\n- **Drivable 3D sim, built for control work**  \n  Fast vehicle dynamics, procedural terrain, generated roads, and lightweight OpenGL rendering.\n\n- **Planner-aware controller interface**  \n  Controllers receive vehicle state plus path targets and fixed-rate preview data for steering and speed logic.\n\n- **Built-in baseline controller**  \n  Includes a PID steering controller with curvature and road-roll feedforward.\n\n- **Interactive and headless workflows**  \n  Run it as a visual demo, or use the Gym-style environment API for testing and training loops.\n\n- **Scenario variation out of the box**  \n  Different road surfaces, terrain types, weather modifiers, wind, buildings, and speed-limit signage.\n\n## Quick Start\n\n```bash\ngit clone https://github.com/jonoomph/spinout.git\ncd spinout\npip install -r requirements.txt\npython -m src.game\n```\n\nPress `S` in the demo to toggle the built-in auto-steer controller.\n\n## For Developers\n\nUse the environment directly if you want to plug in your own controller or training loop. The simulator exposes normalized driver commands plus structured telemetry, planner targets, and preview horizons.\n\n```bash\npytest -q\n```\n\n## Why Spinout\n\nSpinout is aimed at the gap between toy 2D controller demos and heavyweight driving stacks: fast to iterate on, grounded in real control problems, and simple enough to modify.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonoomph%2Fspinout","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjonoomph%2Fspinout","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonoomph%2Fspinout/lists"}