{"id":19717283,"url":"https://github.com/brightprogrammer/crossfile","last_synced_at":"2026-05-12T08:34:15.785Z","repository":{"id":241846708,"uuid":"804707557","full_name":"brightprogrammer/CrossFile","owner":"brightprogrammer","description":"Cross Platform File I/O Library","archived":false,"fork":false,"pushed_at":"2024-07-08T14:36:28.000Z","size":1052,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-10T15:35:46.992Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brightprogrammer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2024-05-23T05:40:01.000Z","updated_at":"2024-11-04T07:45:59.000Z","dependencies_parsed_at":"2025-01-10T15:33:39.566Z","dependency_job_id":"167862bd-ba8f-49d7-bb72-185341c1ce69","html_url":"https://github.com/brightprogrammer/CrossFile","commit_stats":null,"previous_names":["brightprogrammer/crossfile"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightprogrammer%2FCrossFile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightprogrammer%2FCrossFile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightprogrammer%2FCrossFile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brightprogrammer%2FCrossFile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brightprogrammer","download_url":"https://codeload.github.com/brightprogrammer/CrossFile/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241039040,"owners_count":19898610,"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-11-11T22:46:03.305Z","updated_at":"2026-05-12T08:34:10.762Z","avatar_url":"https://github.com/brightprogrammer.png","language":"C","funding_links":["https://www.buymeacoffee.com/brightprogrammer"],"categories":[],"sub_categories":[],"readme":"# CrossFile\n\n[![](https://img.shields.io/badge/Discord-7289DA?style=for-the-badge\u0026logo=discord\u0026logoColor=white)](https://discord.gg/https://discord.gg/J9b45jbAdH)\n\u003ca href=\"https://www.buymeacoffee.com/brightprogrammer\" target=\"_blank\"\u003e\u003cimg src=\"https://cdn.buymeacoffee.com/buttons/default-orange.png\" alt=\"Buy Me A Coffee\" height=\"28\" width=\"105\"\u003e\u003c/a\u003e\n\n## Intro\n\nI've always felt the need for one single C/C++ library to handle all the file formats\nI need. The search has been quite long, and I've failed hard in finding an appropriate\nlibrary. For this, I'm now writing one myself. Whatever binary file format I need to\ninteract with, CrossFile must and will support it.\n\nCrossFile is a cross-platform file I/O library that aims to provide support for\nreading, modifying, and creating the supported file formats from scratch.\n\nCrossFile aims :\n\n- to support all the file formats I need (font, images, executables, archives,\n  data, etc...)\n- to provide a uniform cross-platform interface for interaction with these files\n- to read/modify/edit/create the files.\n- to be free forever and simple to use\n\n## Build\n\nTo build and install CrossFile as a library on your system, follow the following steps :\n\n- Create a build directory where you want to build the library. I usually name this as\n  `Build` inside the project root itself.\n- Go inside `Build` directory and open a terminal, or you can follow any other method\n  to go to that directory inside the terminal.\n- Run the following command :\n\n   - If you have Ninja installed on your system, then use it, it's better :\n     `cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release`\n   - If you don't have Ninja installed, then we'll just use GNU Make :\n     `cmake .. -DCMAKE_BUILD_TYPE=Release`\n\n- The last step will generate build files needed for building the project, and now you can run :\n\n   - `ninja` if you have Ninja installed\n   - `make -j${nproc}` if you have make installed. You can run just `make` as well.\n     The only difference is number of threads provided for building the project.\n\n- The last step will build the project, and now you can run it (for now) using `bin/main`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrightprogrammer%2Fcrossfile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrightprogrammer%2Fcrossfile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrightprogrammer%2Fcrossfile/lists"}