{"id":13878177,"url":"https://github.com/adrienpoly/rubyvideo","last_synced_at":"2025-04-01T04:52:52.014Z","repository":{"id":175949253,"uuid":"654539568","full_name":"adrienpoly/rubyvideo","owner":"adrienpoly","description":"Indexing all Ruby related videos","archived":false,"fork":false,"pushed_at":"2025-03-25T00:50:07.000Z","size":59218,"stargazers_count":376,"open_issues_count":63,"forks_count":65,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-25T02:36:42.624Z","etag":null,"topics":["hacktoberfest","rails","ruby","video","view-transitions-api"],"latest_commit_sha":null,"homepage":"https://rubyvideo.dev","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/adrienpoly.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.md","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":"2023-06-16T10:53:34.000Z","updated_at":"2025-03-25T00:50:10.000Z","dependencies_parsed_at":"2023-11-12T17:51:38.063Z","dependency_job_id":"3bdaaae0-dc5e-498f-9a22-c770abb80e3f","html_url":"https://github.com/adrienpoly/rubyvideo","commit_stats":{"total_commits":688,"total_committers":34,"mean_commits":"20.235294117647058","dds":0.4084302325581395,"last_synced_commit":"b788b28961c34538415ac80e29d4fe365225c298"},"previous_names":["adrienpoly/rubyvideo"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrienpoly%2Frubyvideo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrienpoly%2Frubyvideo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrienpoly%2Frubyvideo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrienpoly%2Frubyvideo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adrienpoly","download_url":"https://codeload.github.com/adrienpoly/rubyvideo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246586047,"owners_count":20801026,"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":["hacktoberfest","rails","ruby","video","view-transitions-api"],"created_at":"2024-08-06T08:01:41.958Z","updated_at":"2025-04-01T04:52:47.002Z","avatar_url":"https://github.com/adrienpoly.png","language":"Ruby","funding_links":[],"categories":["Ruby"],"sub_categories":[],"readme":"# RubyVideo.dev\n\n[RubyVideo.dev](https://www.rubyvideo.dev), inspired by [pyvideo.org](https://pyvideo.org/), is designed to index all Ruby-related videos from conferences and meetups worldwide. At the time of writing, the project has about 4000 videos indexed from 175+ conferences and 2500+ speakers.\n\nTechnically the project is built using the latest [Ruby](https://www.ruby-lang.org/) and [Rails](https://rubyonrails.org/) goodies such as [Hotwire](https://hotwired.dev/), [Solid Queue](https://github.com/rails/solid_queue), [Solid Cache](https://github.com/rails/solid_cache).\n\nFor the front end part we use [Vite](https://vite.dev/), [Tailwind](https://tailwindcss.com/) with [daisyUI](https://daisyUI.com/) components and [Stimulus](https://stimulus.hotwire.dev/).\n\nIt is deployed on an [Hetzner](https://hetzner.cloud/?ref=gyPLk7XJthjg) VPS with [Kamal](https://kamal-deploy.org/) using [SQLite](https://www.sqlite.org/) as the main database.\n\nFor compatible browsers it tries to demonstrate some of the possibilities of [Page View Transition API](https://developer.mozilla.org/en-US/docs/Web/API/View_Transitions_API).\n\n## Contributing\n\nThis project is open source, and contributions are greatly appreciated. One of the most direct ways to contribute at this time is by adding more content.\n\nWe also have a page on the deployed site that has up-to-date information with the remaining known TODOs. Check out the [\"Getting Started: Ways to Contribute\" page on RubyVideo.dev](https://www.rubyvideo.dev/contributions) and feel free to start working on any of the remaining TODOs. Any help is greatly appreciated.\n\nFor more information on contributing conference data, please visit [this page](/docs/contributing.md).\n\n## Getting Started\n\nWe have tried to make the setup process as simple as possible so that in a few commands you can have the project with real data running locally.\n\n### Requirements\n\n- Ruby 3.4.1\n- Docker and docker-compose (for Meilisearch)\n- Node.js 20.11.0\n- Meilisearch 1.1\n\n### Setup\n\nTo prepare your database and seed content, run:\n\n```\nbin/setup\n```\n\n### Environment Variables\n\nYou can use the `.env.sample` file as a guide for the environment variables required for the project. However, there are currently no environment variables necessary for simple app exploration.\n\n### Meilisearch\n\n[Rubyvideo.dev](https://www.rubyvideo.dev) search uses Meilisearch as a search engine.\n\nTo start the app, you need to have a Meilisearch service started. There is a Docker Compose available\n\nIn a new terminal :\n\n```\ndocker-compose up\n```\n\nTroubleshooting:\n\n- if no search results are returned, most probably the index is empty. You can reindex by running `Talk.reindex!` in the Rails console.\n- if they are no talks at all you need to run rails db:seed first\n\n### Starting the Application\n\nThe following command will start Rails, SolidQueue and Vite (for CSS and JS).\n\n```\nbin/dev\n```\n\n## Linter\n\nThe CI performs these checks:\n\n- erblint\n- standardrb\n- standard (js)\n- prettier (yaml)\n\nBefore committing your code you can run `bin/lint` to detect and potentially autocorrect lint errors.\n\nTo follow Tailwind CSS's recommended order of classes, you can use [Prettier](https://prettier.io/) along with the [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss), both of which are included as devDependencies. This formating is not yet enforced by the CI.\n\n## Code of Conduct\n\nPlease note that this project is released with a Contributor Code of Conduct. By participating in this project, you agree to abide by its terms. More details can be found in the [Code of Conduct](/CODE_OF_CONDUCT.md) document.\n\n## Credits\n\nThank you [Appsignal](https://appsignal.com/r/eeab047472) for providing the APM tool that helps us monitor the application.\n\n## License\n\nRubyvideo.dev is open source and available under the MIT License. For more information, please see the [License](/LICENSE.md) file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrienpoly%2Frubyvideo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadrienpoly%2Frubyvideo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrienpoly%2Frubyvideo/lists"}