Build Web3 at Lightning Speed
Juno is a blockchainless platform for creating innovative applications in the Web3 space.
Juno is a blockchainless platform for creating innovative applications in the Web3 space.
Ensure maximum security and privacy by using passwordless authentication. Securely and anonymously identify users.
Learn moreA simple and convenient programming model for storing data on the blockchain.
Learn moreEasily store and serve user-generated content, such as files, photos, and videos, on Web3.
Learn moreMaintain your brand identity with a custom domain for your decentralized application.
Learn moreExecute custom code in response to background events, extend Juno's smart contracts, and develop features that run on-chain.
Learn moreGather valuable, anonymous user insights with a simple, lightweight, and open-source web analytics that do not use cookies.
Learn moreWhether you're planning to build a website, blog, or application, quickly scaffold your project with ready-made templates.
npm create juno@latest
Juno Authentication ensures deep integration with services like Datastore and Storage, offering a cohesive ecosystem.
You can manage your users in an administration console. A new entry is automatically created when a user successfully signs in.
import { signIn } from "@junobuild/core";
<button onClick={signIn}>Sign-in</button>
Juno offers advanced blockchain capabilities via user-friendly JavaScript libraries, enabling seamless integration into your frontend projects.
import { setDoc } from "@junobuild/core";
await setDoc<Example>({
collection: "my_collection_key",
doc: {
key: "my_document_key",
data: myExample,
},
});
Designed by developers for developers, Juno's tools and console empower you to manage your dApps, monitor, and administrate your data.
Utilize the convenient CLI or GitHub Actions to deploy your projects with ease.
❯ npm i -g @junobuild/cli
❯ juno deploy
Enhance Juno's capabilities with strongly-typed hooks, automatically triggered to execute custom logic on your smart contract.
#[derive(Serialize, Deserialize)]
struct Person {
hello: String,
amount: DocDataBigInt,
}
#[on_set_doc]
fn on_set_doc(context: OnSetDocContext) -> Result<(), String> {
let data: Person = decode_doc_data(&context.data.data.after.data)?;
print(format!("Caller: {}", context.caller.to_text()));
print(format!("Data: {}", amount.value));
}
What people are saying
Juno is the best Web3 app out there.
Yes so easy build MVP with Juno 😍
I know you will love it when you try it out. I was amazed by how it is very easy to deploy an app on Juno.
I’m still amazed at how Juno has simplified the development process on ICP. It’s like a magic wand for devs - I get to focus on frontend and Juno handles the rest.
Thanks to Juno's well-documented get-started guide, we had it up and running in under 5 minutes. Our first decentralized analytics tool is now live and kicking!
If you're looking to start building on ICP, you definitely need to check out Juno! It's been a game-changer for me.
Juno enables easy dapp deployment across multiple UI frameworks including SvelteKit. ICP teams such as StackICP are using it to speed up their development.
Stay updated with the latest features and significant updates to Juno by reading the occasional newsletter.
Take control of YOUR WORK.
Shape a future where your apps are fully under your control.
Start building