{"id":28122684,"url":"https://github.com/webarkit/nft-marker-creator-app","last_synced_at":"2025-05-14T08:14:24.854Z","repository":{"id":197878842,"uuid":"653842363","full_name":"webarkit/Nft-Marker-Creator-App","owner":"webarkit","description":"Improved NFT-Marker-Creator app to create your NFT markers for all compatible WebAR projects.","archived":false,"fork":false,"pushed_at":"2025-04-12T12:42:37.000Z","size":21357,"stargazers_count":6,"open_issues_count":4,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-05-13T03:50:01.650Z","etag":null,"topics":["image-tracking","jsartoolkit-nft","natural-feature-tracking","nft","webar","webarkit","webarkitlib"],"latest_commit_sha":null,"homepage":"","language":"C++","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/webarkit.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}},"created_at":"2023-06-14T21:23:34.000Z","updated_at":"2025-04-13T12:05:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"2a0deb42-1f2a-44bb-84da-a8049dc05bb6","html_url":"https://github.com/webarkit/Nft-Marker-Creator-App","commit_stats":null,"previous_names":["webarkit/nft-marker-creator-app"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webarkit%2FNft-Marker-Creator-App","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webarkit%2FNft-Marker-Creator-App/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webarkit%2FNft-Marker-Creator-App/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webarkit%2FNft-Marker-Creator-App/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/webarkit","download_url":"https://codeload.github.com/webarkit/Nft-Marker-Creator-App/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254101541,"owners_count":22014909,"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":["image-tracking","jsartoolkit-nft","natural-feature-tracking","nft","webar","webarkit","webarkitlib"],"created_at":"2025-05-14T08:14:22.484Z","updated_at":"2025-05-14T08:14:24.847Z","avatar_url":"https://github.com/webarkit.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"![github releases](https://flat.badgen.net/github/release/webarkit/Nft-Marker-Creator-App)\n![github stars](https://flat.badgen.net/github/stars/webarkit/Nft-Marker-Creator-App)\n![github forks](https://flat.badgen.net/github/forks/webarkit/Nft-Marker-Creator-App)\n![npm package version](https://flat.badgen.net/npm/v/@webarkit/nft-marker-creator-app)\n![docker pulls](https://flat.badgen.net/docker/pulls/webarkit/nft-marker-creator-app)\n[![CI](https://github.com/webarkit/Nft-Marker-Creator-App/actions/workflows/CI.yml/badge.svg)](https://github.com/webarkit/Nft-Marker-Creator-App/actions/workflows/CI.yml)\n[![Build Nft-Marker-Creator-App](https://github.com/webarkit/Nft-Marker-Creator-App/actions/workflows/build.yml/badge.svg)](https://github.com/webarkit/Nft-Marker-Creator-App/actions/workflows/main.yml)\n\n# Nft-Marker-Creator-App\n\nThis editor creates NFT markers for **WebARKitLib** and **ARTOOLKIT 5.x**, they are compatible with jsartoolkitNFT.js, jsartoolkit5.js, artoolkit5.js, ARnft.js and AR.js.\nA Node app is provided.\n\nCheck out the wiki to learn how to generate good markers! https://github.com/Carnaux/NFT-Marker-Creator/wiki/Creating-good-markers\n\nThis project is based on the original **NFT Marker Creator** by [Carnaux](https://github.com/Carnaux/NFT-Marker-Creator) but has been updated to work with the latest versions of Node and NPM, and also to work with the latest version of Emscripten, plus other improvements.\n\n## Node app\n\n### How to use it\n\n1. Clone this repository.\n\n2. Install all dependencies. First run\n\n   `nvm install`\n\n   it will download the node version specified in the `.nvmrc` file. You need to install nvm first if you don't have it. Then run `nvm use 18` to use the node version specified in the `.nvmrc` file.\n\n   Then finally run\n\n   `npm install`\n\n3. Put the image you want inside the `src` folder. You can just paste it or you can create a folder. e.g\n\n   - NFTmarkerCreatorApp Folder\n   - NFTMarkerCreator.js\n   - IMAGE.PNG :arrow_left:\n   - ...\n\n   or\n\n   - NFTmarkerCreatorApp Folder\n   - NFTMarkerCreator.js\n   - FOLDER/IMAGE.PNG :arrow_left:\n   - ...\n\n4. Run it\n\n```\ncd src\nnode NFTMarkerCreator.js -i PATH/TO/IMAGE\n```\n\nIn the end of the process an \"output\" folder will be created (if it does not exist) with the marker files.\n\nYou can use additional flags with the run command.\n\ne.g `node NFTMarkerCreator.js -i image.png -level=4 -min_thresh=8`\n\n    -zft\n          Flag for creating only the zft file\n    -noConf\n          Disable confirmation after the confidence level\n    -Demo\n          Creates the demo configuration\n    -level=n\n         (n is an integer in range 0 (few) to 4 (many). Default 2.'\n    -sd_thresh=\u003csd_thresh\u003e\n    -max_thresh=\u003cmax_thresh\u003e\n    -min_thresh=\u003cmin_thresh\u003e\n    -leveli=n\n         (n is an integer in range 0 (few) to 3 (many). Default 1.'\n    -feature_density=\u003cfeature_density\u003e\n    -dpi=f:\n          Override embedded JPEG DPI value.\n    -max_dpi=\u003cmax_dpi\u003e\n    -min_dpi=\u003cmin_dpi\u003e\n    -background\n         Run in background, i.e. as daemon detached from controlling terminal. (macOS and Linux only.)\n    --help -h -?\n          Display this help\n\n5. The generated files will be on the \"output\" folder.\n\n6. (OPTIONAL) You can test your marker using the demo folder!\n\n   - Just run `npm run demo`.\n\n   - It should open a server at: http://localhost:3000/\n\n   If you want to create the demo configuration when you create a marker, add `-Demo` to the command parameters.\n\n   e.g node NFTMarkerCreator.js -i image.png -Demo\n\n## ES6 version of the build library\n\nThe library is built with Emscripten and is located in the `build` folder. It is an ES6 module and can be imported in your project.\n\n\u003c!-- prettier-ignore --\u003e\n```js\n\u003cscript type=\"module\"\u003e\n\n  import nftMC from '../build/NFTMarkerCreator_ES6_wasm.js';\n  const mc = await nftMC();\n\n\u003c/script\u003e\n```\n\n## Create your NTS markers with our docker image\n\nFirst, you need docker installed in your system, if you haven't, follow the Docker engine installation [instruction](https://docs.docker.com/engine/install/) .\nThen inside the folder you want to run the docker image:\n\n`docker run -dit --name nft-app -v \"$(pwd):/src\" webarkit/nft-marker-creator-app:0.2.5 bash`\n\nWith the docker container generate the NFT marker:\n\n`docker exec nft-app node ../Nft-Marker-Creator-App/src/NFTMarkerCreator.js -I /src/pinball.jpg`\n\nremember to prepend the `-I /src/\u003cpath to your image\u003e`\n\n## Build\n\nBuild emscripten files with docker:\n\n    docker run --rm -v $(pwd):/src -u $(id -u):$(id -g) -e \"EMSCRIPTEN=/emsdk/upstream/emscripten\"  emscripten/emsdk:3.1.69 npm run build-local\n\nor better create a docker container and run the build command inside it:\n\n    docker run -dit --name emscripten-nft-marker-creator-app -v $(pwd):/src emscripten/emsdk:3.1.69 bash\n    docker exec emscripten-nft-marker-creator-app npm run build-local\n\nIn VSCode you can run the `setup-docker` and `build-docker` command inside package.json.\n\n## Planned Features\n\n- [ ] Multi threading support to speed up the creation of the markers.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebarkit%2Fnft-marker-creator-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwebarkit%2Fnft-marker-creator-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebarkit%2Fnft-marker-creator-app/lists"}