{"id":13719702,"url":"https://github.com/alloy/RealNative","last_synced_at":"2025-05-07T11:32:35.562Z","repository":{"id":38907680,"uuid":"251266039","full_name":"alloy/RealNative","owner":"alloy","description":"React Native C Example – WHEN PERFORMANCE TRULY MATTERS!","archived":false,"fork":false,"pushed_at":"2023-01-26T18:47:26.000Z","size":2215,"stargazers_count":51,"open_issues_count":16,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-19T18:13:13.219Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://en.wikipedia.org/wiki/April_Fools%27_Day","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alloy.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}},"created_at":"2020-03-30T09:59:41.000Z","updated_at":"2024-05-01T03:24:56.000Z","dependencies_parsed_at":"2023-02-14T21:15:29.694Z","dependency_job_id":null,"html_url":"https://github.com/alloy/RealNative","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/alloy%2FRealNative","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alloy%2FRealNative/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alloy%2FRealNative/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alloy%2FRealNative/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alloy","download_url":"https://codeload.github.com/alloy/RealNative/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252869159,"owners_count":21816985,"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-03T01:00:54.449Z","updated_at":"2025-05-07T11:32:31.213Z","avatar_url":"https://github.com/alloy.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"```\n██████╗ ███████╗ █████╗ ██╗         ███╗   ██╗ █████╗ ████████╗██╗██╗   ██╗███████╗\n██╔══██╗██╔════╝██╔══██╗██║         ████╗  ██║██╔══██╗╚══██╔══╝██║██║   ██║██╔════╝\n██████╔╝█████╗  ███████║██║         ██╔██╗ ██║███████║   ██║   ██║██║   ██║█████╗  \n██╔══██╗██╔══╝  ██╔══██║██║         ██║╚██╗██║██╔══██║   ██║   ██║╚██╗ ██╔╝██╔══╝  \n██║  ██║███████╗██║  ██║███████╗    ██║ ╚████║██║  ██║   ██║   ██║ ╚████╔╝ ███████╗\n╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝╚══════╝    ╚═╝  ╚═══╝╚═╝  ╚═╝   ╚═╝   ╚═╝  ╚═══╝  ╚══════╝\n```\n\nℹ️ _This was [an April Fool’s 2020 project](https://twitter.com/alloy/status/1245654709421002754). While there may be interesting learnings to take away from this, I would not advice creating applications in this manner generally._\n\nA [React Native](https://reactnative.dev) application with _only_ user-land **C** code. For those of us that _do_ want to make use of React’s approach to defining views, but also realize that modern languages like **Objective-C** and **Swift** are just too high-level. Really, stitching together views needs to be optimized as much as possible. (PRs to port this code to assembler are much appreciated.)\n\nHighlights include:\n\n* Change code, re-compile, wait. Finally have that time again to [play with swords](https://xkcd.com/303/).\n* No longer be required to neatly separate view/controller code from native [threaded] code that affects the entire system.\n* Actual **C**SS (even if just flexbox).\n\nSee the [Components.c](./src/Components.c) file for the definitions of the components that make up the app and as a starting point to browse [the rest of the user-land source](./src) from.\n\n## Install\n\n```bash\ngit clone https://github.com/alloy/RealNative.git\ncd RealNative\nyarn install\ncd ios\npod install\ncd ..\nnpx react-native run-ios\n```\n\n## LICENSE\n\nAvailable under the [MIT license](./LICENSE).\n\nThanks to [Richard J. Ross III](https://stackoverflow.com/users/427309/richard-j-ross-iii) for [porting](https://stackoverflow.com/a/10290255/95397) the basic scaffolding of an iOS app to C.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falloy%2FRealNative","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falloy%2FRealNative","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falloy%2FRealNative/lists"}