ICP devs! Submit example projects to ICP Ninja and earn a 10 ICP bounty if yours shines. Help us showcase ICP’s unique features and let us know what you think of ICP Ninja. Keep code high-quality, concise, and user-friendly. Submissions start today until October 31, 2025!
Inspiration Categories
We recommend starting off of an existing example in ICP Ninja, e.g. the “Who Am I” example.
Freely contribute, but draw ideas from:
Decentralized AI: Use LLM canister or on-chain AI.
Chain Fusion & Tokens: Cross-chain tools like EVM/SOL RPC or ICRC standards.
World Computer: HTTPS outcalls, timers, storage, etc.
Requirements
Project deploys in ICP Ninja
<2000 lines (.mo/.rs & .jsx total).
Backend: Motoko/Rust.
Frontend: JavaScript, React/Vite.
One backend + one frontend canister.
Local dfx deploy works in the devcontainer in VS Code.
Timing
Ongoing – submit anytime! Rolling reviews and bounty announcements.
Submit before October 31, 2025 to be eligible for the bounty!
Ninja share link (e.g., https://icp.ninja/i?s=zXvpW).
GitHub link to the code (via export from ICP Ninja).
One short paragraph of positive and/or negative feedback or feature requests about ICP Ninja.
Judging Criteria
Must meet the above requirements, be deployable in Ninja, use ICP features, have appealing/intuitive UI, have good code quality, balance simplicity/functionality, and add user value.
Bounty
Win 10 ICP per great example! Depending on the amount of submissions, we will handpick our favorite examples, and reward the winners. We will send you a DM if you are eligible for a reward within 10 days from your submission!
Questions? Comment below. Let’s innovate!
BY PARTICIPATING IN THE CONTEST, YOU ACKNOWLEDGE THAT YOU HAVE READ, UNDERSTOOD, AND AGREED TO THESE TERMS AND CONDITIONS.
ICP Ninja:ICP Ninja Source code on GitHub:GitHub - AiBhrigu/LLM-Chatbot: LLM Chatbot - created on ICP Ninja Feedback: ICP Ninja is amazing! Fast canister deployment, sleek dark theme, and very intuitive. Love how quickly you can experiment. It would be great to have custom template saving and extended logs for deeper debugging.
ICP Ninja:ICP Ninja Source code on GitHub:canChat: a chat room based on ICP Blockchain Feedback: ICP Ninja is truly a great place for new ICP developers. The curated examples and integrated AI assistant make onboarding smooth and intuitive. It’s been a huge help for guidance and experimentation. It would be amazing if the AI could access our editor working directory in future updates, that would make debugging and contextual help even easier!
Feedback: I get why ICP Ninja exists and its probably not my demographic but here are some of my issues:
Iteration is very slow because builds take SO long to do, doesn’t make sense to develop on there if its so much slower than just doing it in VS Code
[Bug] Deleting a file seems to refresh the page, then create a new project with a template? have to navigate back to the one i was working on
Have a real hard time with the editor highlights, they dont seem to be right and I have many import errors, yet it build just fine
Really hard to work with things like MOPS or dfx since there is no terminal and its unclear what version dfx is. I had a few people get stuck on trying to use certain features but dfx wasn’t up to date and it gave weird error messages
Would be nice to see a little bit more in the build logs if needed
The urls are on a different gateway? I couldnt use my default ic0.app urls which broke things
I would like it if i could just open up an existing github repo, make some changes, then commit them if i were to use this
ICP ninja is amazing as it is user friedly providing examples and AI support to developers and free deployments add charm to it .I wish there was a terminal to run commands .
Hi, thanks for your submission. Could you please create an ICP Ninja share link for your project (head to Export > Share link in the editor) and update the link in the description?
Kindly use full screen mode for better game experience
By the way ,I have actually added sounds to make the game feel amazing .Sounds are working perfectly locally and on icp ninja deployment ,game is working but sounds are not being picked up and console says:
“Audio play failed: NotSupportedError: The element has no supported sources.”
I am working on it so that ICP ninja deployment also has sounds for the game .You can give me suggestions if you want.Thank you in advance!
Cool game! I’m not sure about the audio issue. Do you mind fixing it (have you tried with the AskAI in ICP Ninja or asking an LLM of your choosing?), or if you can’t figure it out, send a new share link without the audio files in it? Also, could you rename the project title to “Snake Game” or something?
Ninja share link without audio files ::ICP Ninja
Yes ,I have tried various AI’s ,read docs etc.What suggested solutions from ai and docs I have tried up till now:
Checked if audio files were corrupted ,which they were not. They played fine .
Used aysnchronous operations ,did not work .
Checked if .wav and .mp3 are supported by various browsers or not .Found out they are supported but still icp ninja deployment on browsers is not picking up sounds.
Placed sounds in public folder ,made absolute paths ,so that asset canister (frontend canister) serves files correctly ,but it plays sounds locally not on icp ninja deployment.
NOTE : I have changed the project repo name to Infinity Snake(I got the name inspired from Dfinity ).I can change the project and folders to this names as well but that might break the code .If you say ,I will do it carefully . btw ,I am still working on sounds for ICP Ninja deployment so I have created two branches ; one without sounds and other with sounds which are currently working locally only.Above I have shared url for (no-sounds) branch