{"id":13508689,"url":"https://github.com/rossjones/nifty","last_synced_at":"2025-07-29T21:11:40.573Z","repository":{"id":33621426,"uuid":"37273671","full_name":"rossjones/nifty","owner":"rossjones","description":"helpful tools for when I need to create an Elixir NIF .","archived":false,"fork":false,"pushed_at":"2015-10-19T22:04:02.000Z","size":235,"stargazers_count":29,"open_issues_count":3,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-30T11:33:38.494Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rossjones.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-06-11T16:48:59.000Z","updated_at":"2025-02-02T16:22:02.000Z","dependencies_parsed_at":"2022-08-07T22:16:01.803Z","dependency_job_id":null,"html_url":"https://github.com/rossjones/nifty","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/rossjones%2Fnifty","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rossjones%2Fnifty/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rossjones%2Fnifty/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rossjones%2Fnifty/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rossjones","download_url":"https://codeload.github.com/rossjones/nifty/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248125581,"owners_count":21051768,"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-01T02:00:57.021Z","updated_at":"2025-04-09T23:00:13.979Z","avatar_url":"https://github.com/rossjones.png","language":"Elixir","funding_links":[],"categories":["Native Implemented Functions"],"sub_categories":[],"readme":"Nifty\n=====\n\nHelper script for setting up the boilerplate required when writing a NIF. I'm using it by installing as an archive, but I guess you *could* install it as a dep.\n\n## Install\n\n```elixir\ngit clone git@github.com:rossjones/nifty.git\ncd nifty\nmix do archive.build, archive.install\n```\n\n## Commands\n\n```elixir\n# Creates a skeleton Makefile, c source and Elxiir module.\nmix nifty.gen --library hello --module MyApp.Nif\n```\n\nThe compile and clean tasks should happen when your normal ```mix compile``` and ```mix clean``` calls happen.\n\n\n## Extra info\n\nHow to set up compilation for make was found at \u003chttp://spin.atomicobject.com/2015/03/16/elixir-native-interoperability-ports-vs-nifs/#comment-531191\u003e  which was very helpful in getting started. The mix tasks are derived from \u003chttps://github.com/asbaker/elixir-interop-examples/tree/master/serial_nif\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frossjones%2Fnifty","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frossjones%2Fnifty","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frossjones%2Fnifty/lists"}