{"id":13558093,"url":"https://github.com/felipec/ripary","last_synced_at":"2025-12-30T14:50:16.012Z","repository":{"id":453398,"uuid":"76837","full_name":"felipec/ripary","owner":"felipec","description":"Codeswarm rewrite in ruby","archived":false,"fork":false,"pushed_at":"2009-10-04T19:51:14.000Z","size":99,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-11-04T08:37:16.487Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/felipec.png","metadata":{"files":{"readme":"README","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}},"created_at":"2008-11-16T19:51:57.000Z","updated_at":"2020-10-29T14:39:43.000Z","dependencies_parsed_at":"2022-08-02T20:30:21.360Z","dependency_job_id":null,"html_url":"https://github.com/felipec/ripary","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/felipec%2Fripary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/felipec%2Fripary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/felipec%2Fripary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/felipec%2Fripary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/felipec","download_url":"https://codeload.github.com/felipec/ripary/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247002467,"owners_count":20867467,"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-08-01T12:04:44.597Z","updated_at":"2025-12-30T14:50:15.955Z","avatar_url":"https://github.com/felipec.png","language":"Ruby","funding_links":[],"categories":["Ruby","others"],"sub_categories":[],"readme":"ripary is a rewrite of Michael Ogawa's code_swarm in ruby using cairo.\n\nWhy? code_swarm is 5k lines of code it depends on java 'Processing', and it's\nslow generating videos. Ripary is 500 lines of code, uses cairo, and it outputs\nraw video.\n\nFor the original code:\nhttp://code.google.com/p/codeswarm\n\nThe format of the events xml file is compatible with code_swarm's one.\n\nYou'll need libxml-ruby and cairo ruby files. You can use gem to install the dependencies:\n sudo gem install libxml-ruby\n sudo gem install cairo\n\n== get the events file ==\n\nThere's a tool that generates the events file from a git repository:\n\n./util/convert-git ~/src/my-project \u003e events.xml\n\nMost probably you would have to edit the file to remove mistakes.\n\n== howto generate a video ==\n\nThis describes how to generate an MPEG-4 video clip using FFmpeg, but it's also\npossible to export singe png images.\n\nFirst create a fifo file:\n mkfifo /tmp/ripary_rgb.bin\n\nThen on a console launch ffmpeg:\n ffmpeg -f rawvideo -pix_fmt bgr32 -s 640x480 -r 60 -qscale 11 -i /tmp/ripary_rgb.bin /tmp/movie.avi\n\nIt will wait until there's data on the fifo file.\n\nThen launch ripary:\n ruby app.rb\n\nThat's it!\n\n== to do ==\n\n * improve physics algorithms to be faster\n * don't depend on libxml (is there something fast enough)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffelipec%2Fripary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffelipec%2Fripary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffelipec%2Fripary/lists"}