{"id":20255301,"url":"https://github.com/projectm-visualizer/frontend-sdl-rust","last_synced_at":"2025-04-11T00:05:36.984Z","repository":{"id":72407301,"uuid":"532128593","full_name":"projectM-visualizer/frontend-sdl-rust","owner":"projectM-visualizer","description":"Rust | SDL-based standalone application that turns your desktop audio into awesome visuals.","archived":false,"fork":false,"pushed_at":"2025-04-09T16:46:05.000Z","size":104,"stargazers_count":17,"open_issues_count":1,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-11T00:05:30.766Z","etag":null,"topics":["music","music-visualisation","rust","sdl3","visualization"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/projectM-visualizer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2022-09-03T01:54:34.000Z","updated_at":"2025-04-09T18:33:28.000Z","dependencies_parsed_at":"2024-01-23T21:20:27.611Z","dependency_job_id":"a860adae-7929-401c-9bfd-0bfd3dd79d3b","html_url":"https://github.com/projectM-visualizer/frontend-sdl-rust","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projectM-visualizer%2Ffrontend-sdl-rust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projectM-visualizer%2Ffrontend-sdl-rust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projectM-visualizer%2Ffrontend-sdl-rust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projectM-visualizer%2Ffrontend-sdl-rust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/projectM-visualizer","download_url":"https://codeload.github.com/projectM-visualizer/frontend-sdl-rust/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248317707,"owners_count":21083528,"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":["music","music-visualisation","rust","sdl3","visualization"],"created_at":"2024-11-14T10:38:02.947Z","updated_at":"2025-04-11T00:05:36.959Z","avatar_url":"https://github.com/projectM-visualizer.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca id=\"readme-top\"\u003e\u003c/a\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![Contributors][contributors-shield]][contributors-url]\n[![Forks][forks-shield]][forks-url]\n[![Stargazers][stars-shield]][stars-url]\n[![Issues][issues-shield]][issues-url]\n[![License][license-shield]][license-url]\n\n\u003cbr /\u003e\n\n\u003ch3 align=\"center\"\u003eProjectM\u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n    Reference projectM application in Rust, utilizing the \u003ca href=\"https://crates.io/crates/projectm\" target=\"_blank\"\u003eprojectM\u003c/a\u003e crate\n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/projectM-visualizer/frontend-sdl-rust/issues\" target=\"_blank\"\u003eReport Bug\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/projectM-visualizer/frontend-sdl-rust/issues\" target=\"_blank\"\u003eRequest Feature\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\u003cbr /\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003cdetails\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#prerequisites\"\u003ePrerequisites\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#usage\"\u003eUsage\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#support\"\u003eSupport\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contact\"\u003eContact\u003c/a\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\u003cbr /\u003e\n\n\u003c!-- GETTING STARTED --\u003e\n\n## Getting Started\n\nTo get this crate up and running properly, you'll need to install some prerequisites.\n\n### Prerequisites\n\nDepending on the OS/distribution and packaging system, libraries might be split into separate packages with binaries and\ndevelopment files. To build projectM, both binaries and development files need to be installed.\n\n#### General build dependencies for all platforms:\n\n- [**Rust**](https://www.rust-lang.org/tools/install)\n- A working build toolchain.\n- [**CMake**](https://cmake.org/): Used to generate platform-specific build files.\n- **OpenGL**: 3D graphics library. Used to render the visualizations.\n- or **GLES3**: OpenGL libraries for embedded systems, version 3. Required to build projectM on Android devices,\n  Raspberry Pi, Emscripten and the Universal Windows Platform.\n- [**glm**](https://github.com/g-truc/glm): OpenGL Mathematics library. Optional, will use a bundled version with\n  autotools or if not installed.\n- [**SDL3**](https://github.com/libsdl-org/SDL): Simple Directmedia Layer \u003e= 3. Provided by sdl3-rs.\n  the test UI.\n- [**LLVM**](https://llvm.org/): Low-Level Virtual Machine. Optional and **experimental**, used to speed up preset\n  execution by leveraging the LLVM JIT compiler.\n\n#### Only relevant for Windows:\n\n- [**vcpkg**](https://github.com/microsoft/vcpkg): C++ Library Manager for Windows. _Optional_, but recommended to\n  install the aforementioned library dependencies.\n- [**GLEW**](http://glew.sourceforge.net/): The OpenGL Extension Wrangler Library. Only required if using CMake to\nconfigure the build, the pre-created solutions use a bundled copy of GLEW.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- USAGE EXAMPLES --\u003e\n\n## Usage\n\n```\n// run app\ncargo run\n\n// build app\ncargo build\n```\n\n### If using SDL installed via Homebrew\n\n```\nRUSTFLAGS=\"-L$(brew --prefix sdl3)/lib\" cargo build\nRUSTFLAGS=\"-L$(brew --prefix sdl3)/lib\" cargo run\n```\n\n### Optimized build\n\n```\ncargo run --release\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- CONTRIBUTING --\u003e\n\n## Contributing\n\nContributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.\n\nIf you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag \"enhancement\".\nDon't forget to give the project a star! Thanks again!\n\n1. Fork the Project\n2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the Branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- LICENSE --\u003e\n\n## License\n\nDistributed under the LGPL-2.1 license. See `LICENSE` for more information.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- SUPPORT --\u003e\n\n## Support\n\n[![Discord][discord-shield]][discord-url]\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- CONTACT --\u003e\n\n## Contact\n\nBlaquewithaq (Discord: SoFloppy#1289) - [@anomievision](https://twitter.com/anomievision) - anomievision@gmail.com\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n\n[contributors-shield]: https://img.shields.io/github/contributors/projectM-visualizer/projectm-rs.svg?style=for-the-badge\n[contributors-url]: https://github.com/projectM-visualizer/frontend-sdl-rust/graphs/contributors\n[forks-shield]: https://img.shields.io/github/forks/projectM-visualizer/projectm-rs.svg?style=for-the-badge\n[forks-url]: https://github.com/projectM-visualizer/frontend-sdl-rust/network/members\n[stars-shield]: https://img.shields.io/github/stars/projectM-visualizer/projectm-rs.svg?style=for-the-badge\n[stars-url]: https://github.com/projectM-visualizer/frontend-sdl-rust/stargazers\n[issues-shield]: https://img.shields.io/github/issues/projectM-visualizer/projectm-rs.svg?style=for-the-badge\n[issues-url]: https://github.com/projectM-visualizer/frontend-sdl-rust/issues\n[license-shield]: https://img.shields.io/github/license/projectM-visualizer/projectm-rs.svg?style=for-the-badge\n[license-url]: https://github.com/projectM-visualizer/frontend-sdl-rust/blob/master/LICENSE\n[crates-shield]: https://img.shields.io/crates/v/projectm-rs?style=for-the-badge\n[crates-url]: https://crates.io/crates/projectm-rs\n[crates-dl-shield]: https://img.shields.io/crates/d/projectm-rs?style=for-the-badge\n[crates-dl-url]: https://crates.io/crates/projectm-rs\n[discord-shield]: https://img.shields.io/discord/737206408482914387?style=for-the-badge\n[discord-url]: https://discord.gg/7fQXN43n9W\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprojectm-visualizer%2Ffrontend-sdl-rust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprojectm-visualizer%2Ffrontend-sdl-rust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprojectm-visualizer%2Ffrontend-sdl-rust/lists"}