diff --git a/.gitignore b/.gitignore index 4e7a0b8a6a..94f74b403c 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,5 @@ stats.py unlighthouse.config.ts # Local Netlify folder .netlify +roadmap.json +roadmap.d.ts diff --git a/blog/news-and-updates/2024-11-27-update.mdx b/blog/news-and-updates/2024-11-27-update.mdx new file mode 100644 index 0000000000..6f79028b4b --- /dev/null +++ b/blog/news-and-updates/2024-11-27-update.mdx @@ -0,0 +1,34 @@ +--- +title: Developer weekly update November 27, 2024 +description: This week we have two community projects to showcase, Toolkit and Linkpin, and a reminder about developer office hours in the ICP Discord. +tags: [Devs] +image: /img/blog/dev-update-blog-nov-27.jpg +--- + +# Developer weekly update November 27, 2024 + +![November 27 2024](../../static/img/blog/dev-update-blog-nov-27.jpg) + +Hello developers, and welcome to this week's developer weekly update! This week we have two community projects to showcase, Toolkit and Linkpin, and a reminder about developer office hours in the ICP Discord. Let's get started! + +## Toolkit + +Toolkit is a dapp management platform with an initial focus on providing tooling for Service Nervous System (SNS) projects. It is designed to simplify dapp development, deployment, scaling, and collaboration. It provides tools to interact with SNS treasuries, mechanisms, and proposals. Developers can also use Toolkit to experiment with dapp governance and management. + +[Learn more about Toolkit](https://docs.ic-toolkit.app/docs/intro). + +## Linkpin + +Linkpin is an onchain bookmark manager, enabling you to login with Internet Identity, save a URL as a bookmark, and then reference that bookmark at a later time. Bookmarks can be managed by alphabetical order, number of clicks, or the last time you visited them. Linkpin utilizes ICP for all data storage and uses a backend written in Motoko. + +Linkpin is open source and fully customizable. Check out the code on [GitHub](https://github.com/tagoso/linkpin) for more information. + +## Developer office hours + +Every Wednesday, the ICP Discord server hosts two office hour sessions: 9 AM CET (8 AM UTC) and 10:30 AM PST (18:30 UTC). Each office hour is hosted in a drop-in style, enabling you to drop into the conversation as you please. + +Join the ICP Developer Discord: https://discord.internetcomputer.org/ + +That'll wrap up this week. Tune back in next week for more developer updates! + +-DFINITY \ No newline at end of file diff --git a/docs/developer-docs/defi/wallets/overview.mdx b/docs/developer-docs/defi/wallets/overview.mdx index 94c32b5063..0a9f3ac970 100644 --- a/docs/developer-docs/defi/wallets/overview.mdx +++ b/docs/developer-docs/defi/wallets/overview.mdx @@ -51,9 +51,9 @@ Third-party custody allows a third-party entity to act on your behalf, managing Before choosing a third-party option, you should do your own research and be sure that you understand the ramifications of your choices thoroughly before proceeding. ::: -### Web wallets +### Onchain wallets -Web wallets on ICP use Internet Identity for authentication, and are great for new users, less technical users, daily use, or small token transfers. Some examples include: +Onchain wallets on ICP use Internet Identity for authentication, and are great for new users, less technical users, daily use, or small token transfers. Some examples include: - [NFID](https://nfid.one/): Each new account creates a hardware wallet that is untraceable. NFID supports sign-in with Google in addition to Internet Identity. @@ -61,7 +61,9 @@ Web wallets on ICP use Internet Identity for authentication, and are great for n - [Stoic](https://www.stoicwallet.com/): The native wallet for ICP's largest NFT marketplace, Entrepot. -- [AstroX ME](https://astrox.me/): A multi-chain wallet that supports ICP, Ethereum, Polygon, and more. +- [AstroX ME](https://astrox.me/): A multi-chain wallet that supports ICP, Ethereum, Polygon, and more. + +- [Orbit](https://orbitwallet.io/): Private alpha. ### Browser extension wallets @@ -71,7 +73,13 @@ Browser extension wallets can be used easily on any webpage, making them a good - [Bitfinity](https://wallet.bitfinity.network/): Supports ICP, BTC, and SNS tokens. Available for Google Chrome. -- [Klever](https://klever.io/en-us): A multi-chain mobile wallet available for Google Chrome +- [Klever](https://klever.io/en-us): A multi-chain mobile wallet available for Google Chrome. + +- [Trust Wallet](https://trustwallet.com/blog/beginners-guide-to-icp). + +- [Metamask](https://snaps.metamask.io/snap/npm/fort-major/msq/). + +- [Primevault](https://www.primevault.com/). ### Mobile app wallets @@ -83,6 +91,32 @@ Mobile app wallets can be used for making transfers or payments while on the go, - [Klever](https://klever.io/en-us): A multi-chain mobile wallet available for Apple and Android devices. +- [AirGap](https://airgap.it/): Available for Apple and Android devices. + +- [Trust Wallet](https://trustwallet.com/): Available for Apple and Android devices, or as an APK file. + +## Institutional custody + +Institutional custody wallets are recommended for holding large amounts of crypto, as they provide additional benefits like customer support. + +- [Coinbase](https://www.coinbase.com/custody). + +- [Sygnum](https://www.sygnum.com/digital-asset-banking/internet-computer-icp/). + +- [Copper](https://copper.co/en/insights/company-news/copper-adds-support-for-new-token-standards-on-the-internet-computer-blockchain-as-institutional-interest-grows). + +- [Crypto Finance](https://www.crypto-finance.com/). + +- [Dfns (wallet as a service)](https://www.dfns.co/article/icp-support). + +- [Primevault](https://www.primevault.com/). + +- [Taurus](https://www.taurushq.com/blog/taurus-integrates-the-full-icp-value-chain-including-staking-in-its-custody-solution-taurus-protect/). + +- [NFID](https://nfid.one/). + +- [Orbit](https://orbitwallet.io/): Private alpha. + ## Self-custody wallets Self-custody is a token distribution option that enables you to have sole responsibility over your digital assets and the management of your private keys, without the need of a third party to act on your behalf. Because there is no third-party, self-custody solutions often look different than third-party custody solutions, such that they use wallet formats such as air-gapped machines or cold wallets. @@ -105,7 +139,19 @@ A **hardware wallet** is a physical device that holds your digital assets. Priva In most cases, you can recover from the loss of a hardware wallet because the assets stored on hardware wallets are secured using a secret seed phrase. If you copy and secure the seed phrase—for example, by storing it in the form of a [paper wallet](#paper-wallets)—you can initialize a new device with the seed phrase and regain access to your digital assets. -One common hardware wallet device is the Ledger Nano. [Read more about how to set up a Ledger Nano device](./self-custody/hardware-wallet-cli.mdx). +Common hardware wallets include: + +- [Ledger Nano](./self-custody/hardware-wallet-cli.mdx). + +- [AirGap](https://airgap.it/). + +- [Tangem](https://tangem.com/en/). + +- [Taurus](https://www.taurushq.com/blog/taurus-integrates-the-full-icp-value-chain-including-staking-in-its-custody-solution-taurus-protect/). + +- [Quill](/docs/current/developer-docs/developer-tools/cli-tools/quill-cli-reference/). + +- ICP custody with seed phrase and air-gapped machine. ### Air-gapped computers diff --git a/docs/developer-docs/smart-contracts/compile.mdx b/docs/developer-docs/smart-contracts/compile.mdx index d8cd71eb1c..86c542753f 100644 --- a/docs/developer-docs/smart-contracts/compile.mdx +++ b/docs/developer-docs/smart-contracts/compile.mdx @@ -4,6 +4,7 @@ keywords: [beginner, tutorial, compile] import TabItem from "@theme/TabItem"; import Tabs from '@theme/Tabs'; +import { GlossaryTooltip } from "/src/components/Tooltip/GlossaryTooltip"; import { AdornedTabs } from "/src/components/Tabs/AdornedTabs"; import { AdornedTab } from "/src/components/Tabs/AdornedTab"; import { BetaChip } from "/src/components/Chip/BetaChip"; @@ -19,13 +20,13 @@ After you have [written the code](/docs/current/developer-docs/smart-contracts/w :::danger -You must [create your canisters](/docs/current/developer-docs/smart-contracts/create) before you can build them, otherwise you will receive an error that they do not exist. +You must [create your canisters](/docs/current/developer-docs/smart-contracts/create) before you can build them; otherwise, you will receive an error message saying they do not exist. ::: `dfx build` looks for source code to compile for each canister configured under the `canisters` section in the [`dfx.json`](/docs/current/developer-docs/developer-tools/cli-tools/dfx-json-reference) file. It can be used to compile a specific canister or all canisters defined in the project. -Verify the location of your project's files and their file names. Be sure to edit your project's `dfx.json` file to reflect the current intended configuration if necessary. +Verify the location of your project's files and their file names. If necessary, edit your project's `dfx.json` file to reflect the current intended configuration. ## Compiling your canister @@ -72,16 +73,16 @@ When this command is executed, the following steps happen: ## How code is compiled to Wasm -WebAssembly (Wasm) is a platform independent binary format that can be executed in the Wasm virtual machine. -Many modern compilers support Wasm as the compilation target along with the traditional targets such as x86 and arm32. +WebAssembly (Wasm) is a platform-independent binary format that can be executed in the Wasm virtual machine. +Many modern compilers support Wasm as the compilation target along with traditional targets such as x86 and arm32. There are three types of Wasm depending on where the Wasm virtual machine is hosted and how it interacts with users and the host environment: -- **Web browser**: the Wasm program interacts with the users via the JavaScript bindings of the browser. The primary toolchain for compiling Wasm for browsers is [Emscripten](https://emscripten.org/). Note that such Wasm programs are incompatible with ICP. +- **Web browser**: The Wasm program interacts with the users via the JavaScript bindings of the browser. The primary toolchain for compiling Wasm for browsers is [Emscripten](https://emscripten.org/). Note that such Wasm programs are incompatible with ICP. -- **WASI**: this abbreviation stands for [WebAssembly System Interface](https://wasi.dev/). It is becoming the standard for running Wasm programs outside of Web browsers. Major Wasm runtimes such as Wasmtime and Wasmer support this standard. Compilers denote this target as `wasm32-wasi`. ICP does not directly support WASI, but it is possible to preprocess a WASI program and make it runnable on ICP with the community project [`wasi2ic`](https://github.com/wasm-forge/wasi2ic). +- **WASI**: This abbreviation stands for [WebAssembly System Interface](https://wasi.dev/). It is becoming the standard for running Wasm programs outside of Web browsers. Major Wasm runtimes such as Wasmtime and Wasmer support this standard. Compilers denote this target as `wasm32-wasi`. ICP does not directly support WASI, but it is possible to preprocess a WASI program and make it runnable on ICP with the community project [`wasi2ic`](https://github.com/wasm-forge/wasi2ic). -- **Vanilla Wasm**: there is no standard API for interacting with users and the host environment. Every host environment provides their own API. ICP uses this approach and provides the set of functions called the System API to the Wasm program. Many compilers denote this target as `wasm32-unknown-unknown` since they do not know the target host environment and do not make any assumptions about the available APIs. +- **Vanilla Wasm**: There is no standard API for interacting with users and the host environment. Every host environment provides its own API. ICP uses this approach and provides a set of functions, called the System API, to the Wasm program. Many compilers denote this target as `wasm32-unknown-unknown` since they do not know the target host environment and do not make any assumptions about the available APIs. The Canister Development Kit (CDK) of supported programming language comes with build scripts that link the System API and compile the code to Wasm programs that are compatible with ICP: diff --git a/docs/motoko/version.md b/docs/motoko/version.md index 4460e075bf..8bb44c6658 100644 --- a/docs/motoko/version.md +++ b/docs/motoko/version.md @@ -1,6 +1,6 @@ # Motoko Version -The release of Motoko documented here, currently 0.13.3, may be a few versions +The release of Motoko documented here, currently 0.13.4, may be a few versions ahead of the Motoko compiler that is shipped with dfx. You can, however, instruct `dfx` to use a newer version of Motoko than the one diff --git a/docs/tutorials/developer-journey/level-3/3.5-identities-and-auth.mdx b/docs/tutorials/developer-journey/level-3/3.5-identities-and-auth.mdx index 6d3dc6ddbb..e592315991 100644 --- a/docs/tutorials/developer-journey/level-3/3.5-identities-and-auth.mdx +++ b/docs/tutorials/developer-journey/level-3/3.5-identities-and-auth.mdx @@ -111,7 +111,7 @@ To get started, open a terminal window, navigate into your working directory (`d ```bash dfx start --clean --background git clone https://github.com/dfinity/examples.git -cd examples/motoko/auth-client-demo +cd examples/archive/motoko/auth-client-demo npm install ``` diff --git a/docusaurus.config.js b/docusaurus.config.js index c6befda892..c7cd65939e 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -600,6 +600,7 @@ const config = { "What is the ICP token?, How is the Internet Computer governed?, How do I start building fully onchain Web3?", "data-modal-disclaimer": " This LLM provides responses are generated automatically and may be inaccurate or outdated. Please take care to verify or validate any responses before making any critical decisions.", + "data-user-analytics-fingerprint-enabled": "true", async: true, }, ], diff --git a/plugins/utils/redirects.js b/plugins/utils/redirects.js index 0ef9bb9a49..fd63a56ab7 100644 --- a/plugins/utils/redirects.js +++ b/plugins/utils/redirects.js @@ -23,7 +23,7 @@ const redirects = ` /icp-newsletter /news /ois /sns /docs/current/developer-docs/getting-started/overview-of-icp /docs/current/developer-docs/getting-started/network-overview - /docs/videos-tutorials /developers + /docs/videos-tutorials /docs/current/home /docs /docs/current/home /docs/current/ /docs/current/home /docs/current/concepts/bitcoin-integration /bitcoin-integration @@ -640,6 +640,7 @@ const redirects = ` /docs/current/developer-docs/getting-started/deploy/testnet /docs/current/developer-docs/getting-started/deploy-and-manage /docs/current/developer-docs/getting-started/deploy-and-manage /docs/current/developer-docs/getting-started/deploy-and-manage /docs/current/developer-docs/smart-contracts/write/default-template /docs/current/developer-docs/smart-contracts/write/overview + /developers /docs/current/home ` .split(/[\r\n]+/) .map((line) => line.trim().replace(/^#.*$/, "").trim()) diff --git a/roadmap/entries/data-digital_assets.json b/roadmap/entries/data-digital_assets.json index 3f57af34f4..83836b7ef8 100644 --- a/roadmap/entries/data-digital_assets.json +++ b/roadmap/entries/data-digital_assets.json @@ -2,6 +2,48 @@ "categoryName": "Digital Assets", "categoryDescription": "DeFi protocols, real-word asset tokenization, and other digital asset solutions are strong drivers of web3 adoption. ICP’s Chain Fusion capabilities, unparalleled scalability, and the ability to serve web assets from chain opens up novel digital asset classes. Moreover, it makes ICP an attractive platform to build multi chain custody solutions and wallets.", "elements": [ + { + "title": "Solana Integration", + "overview": "OISY widens its multi-chain reach beyond Bitcoin and Ethereum, and will integrate with the most important networks. Solana is the first one to be implemented, a crucial step forward in our mission to deliver a true multi-chain wallet for decentralized finance (DeFi) users.", + "status": "in_progress", + "forum": "", + "proposal": "", + "docs": "", + "is_community": false, + "in_beta": false, + "milestone_id": "Helios" + }, + { + "title": "In-Wallet Swaps", + "overview": "Introducing in-wallet swaps, this release will enhance flexibility for managing assets, allowing users to seamlessly change their asset allocation directly in OISY using DEX liquidity, mitigating risk or aiming for a higher yield.", + "status": "in_progress", + "forum": "", + "proposal": "", + "docs": "", + "is_community": false, + "in_beta": false, + "milestone_id": "Helios" + }, + { + "title": "Promote Chain-Key Tokens", + "overview": "With improved screens, flows, and helper texts for chain fusion conversions, OISY will provide users with the right information at the right places to make informed decisions to easily convert native tokens into their chain fusion twins or vice versa.", + "status": "in_progress", + "forum": "", + "proposal": "", + "docs": "", + "is_community": false, + "in_beta": false, + "milestone_id": "Helios" + }, + { + "title": "OISY Wallet v1.0 - The official Launch", + "description": "With the Helios release, officially named v1.0, OISY will step out of the beta status into its first production version. This includes functional coverage of all key features like buy, receive, send, swap, and convert from and to chain-key tokens, and with several major blockchains integrated, also a true multi-chain nature. Behind the scenes, it also includes setting up proper processes for product improvement, marketing, automated testing, and setting up a user friendly support process.", + "is_milestone": true, + "milestone_id": "Helios", + "status": "in_progress", + "eta": "", + "eta_to_render": "January 2025" + }, { "title": "Orbit Multi custody wallet for ICP", "overview": "Users can securely share ownership of the ICP token with a fully onchain wallet. From simple 1-out-of-2 configurations to sophisticated approval policy rules, Orbit provides comprehensive support for secure financial transactions with a flexible user-role-based system.", diff --git a/search/src/search/Cargo.toml b/search/src/search/Cargo.toml index 9c6f5912af..77e017c591 100644 --- a/search/src/search/Cargo.toml +++ b/search/src/search/Cargo.toml @@ -3,9 +3,8 @@ name = "search" version = "0.1.0" edition = "2021" - [dependencies] -rust-stemmers = "*" -regex = "*" -serde = { version = "1.0.152", features = ["derive"] } -candid = "0.8.4" +rust-stemmers = "1.2.0" +regex = "1.10.2" +serde = { version = "1.0.193", features = ["derive"] } +candid = "0.8.4" \ No newline at end of file diff --git a/showcase.json b/showcase.json index dab55450b9..c3b18d15a8 100644 --- a/showcase.json +++ b/showcase.json @@ -14,7 +14,7 @@ "usesInternetIdentity": true, "stats": "1,000+ TPS", "display": "Large", - "logo": "/img/showcase/bitfinity_evm.png", + "logo": "/img/showcase/bitfinity_evm.svg", "screenshots": [ "/img/showcase/bitfinity_showcase.webp" ] @@ -164,7 +164,7 @@ "usesInternetIdentity": true, "twitter": "https://twitter.com/dragginzgame", "description": "Dragginz is a virtual pets game from the creators of Neopets. Hatch and raise Dragginz to accompany you on your adventures..", - "logo": "/img/showcase/dragginz_logo.svg" + "logo": "/img/showcase/dragginz_logo.png" }, { "id": "icdex", @@ -326,7 +326,7 @@ "twitter": "https://twitter.com/HelixMarkets", "description": "Helix Markets is a decentralized exchange that aims to bring true ownership and full transparency to crypto trading.", "usesInternetIdentity": true, - "logo": "/img/showcase/helix_logo.webp", + "logo": "/img/showcase/helix_logo.svg", "screenshots": [ "/img/showcase/helix_screenshot.png" ] @@ -370,8 +370,30 @@ "screenshots": [ "/img/showcase/juno_social_image.jpg" ], - "youtube": "https://www.youtube.com/watch?v=mr_9XArcG9Y" - }, + "youtube": "https://www.youtube.com/@junobuild" + }, + +{ + "id": "oisy", + "name": "OISY Wallet", + "oneLiner": "Browser-based multi-chain wallet", + "website": "https://oisy.com", + "github": "https://github.com/dfinity/oisy-wallet", + "display": "Large", + "tags": [ + "Ethereum", + "DeFi", + "Wallet", + "Chain Fusion" + ], + "twitter": "https://x.com/oisy", + "description": "OISY Wallet is a new browser-based multi-chain wallet, powered by Internet Computer’s chain fusion technology. It is fully on-chain and implements network custody, an innovative approach that leverages the Internet Computer’s advanced cryptography to eliminate the need for you to handle private keys directly.", + "usesInternetIdentity": true, + "logo": "/img/showcase/oisy_logo.svg", + "screenshots": [ + "/img/showcase/oisy-preview.webp" + ] +}, { "id": "kinic", "name": "Kinic", @@ -466,23 +488,6 @@ "usesInternetIdentity": true, "logo": "/img/showcase/nnsfront-enddapp_logo-dark.webp" }, - { - "id": "oisy", - "name": "OISY Wallet", - "oneLiner": "Browser-based multi-chain wallet", - "website": "https://oisy.com", - "github": "https://github.com/dfinity/oisy-wallet", - "tags": [ - "Ethereum", - "DeFi", - "Wallet", - "Chain Fusion" - ], - "twitter": "https://x.com/OISY_Wallet", - "description": "Oisy is a new browser-based, self-custodial and multi-chain wallet powered by Internet Computer's chain fusion technology.", - "usesInternetIdentity": true, - "logo": "/img/showcase/oisy_logo.svg" - }, { "id": "trax", "name": "Trax", @@ -494,7 +499,7 @@ "description": "Trax is a content aggregator and social marketplace, catering specifically to music artists and their die-hard fans, often referred to as “superfans”. By facilitating exclusive content drops and events, TRAX aims to help artists cultivate closer relationships with their superfans and generate higher revenue. ", "website": "https://trax.so/", "usesInternetIdentity": true, - "logo": "/img/showcase/trax_logo.jpeg" + "logo": "/img/showcase/trax_logo.webp" }, { "id": "w3ns", @@ -588,7 +593,7 @@ ], "description": "BOOM DAO is an all-in-one web3 game platform and protocol running 100% onchain on the Internet Computer. We are on a mission to build the gaming vertical of the Internet Computer blockchain, power the next generation of fully onchain games on ICP, and provide a collaborative hub for all things web3 gaming.", "stats": "23,000+ DAO Members", - "logo": "/img/showcase/boom-dao-logo.webp", + "logo": "/img/showcase/boom-dao-logo.png", "display": "Large", "usesInternetIdentity": true, "github": "https://github.com/BoomDAO/", @@ -1101,7 +1106,7 @@ "description": "Unleash your inner commander and dominate the metaverse in the action-packed universe of Cosmicrafts. Engage in thrilling interstellar battles, strategize with allies, and conquer the cosmos. Are you ready to claim your place among the stars?", "usesInternetIdentity": true, "stats": "10,000+ users", - "logo": "/img/showcase/cosmicrafts_logo.webp", + "logo": "/img/showcase/cosmicrafts_logo.png", "video": "/img/showcase/cosmicrafts_video.mp4", "videoContentType": "video/mp4", "screenshots": [ @@ -1547,7 +1552,7 @@ ], "description": "Connect, engage and inspire your audience while owning your data and your identity.", "usesInternetIdentity": true, - "logo": "/img/showcase/bink_logo.webp" + "logo": "/img/showcase/bink_logo.svg" }, { "id": "pythonagent", @@ -1613,7 +1618,7 @@ "website": "https://bitomni.io", "twitter": "https://x.com/Bitomni_Global", "display": "Large", - "logo": "/img/showcase/bitomni_logo.png", + "logo": "/img/showcase/bitomni_logo.svg", "screenshots": [ "/img/showcase/bitomni_screenshot.png" ] @@ -1808,7 +1813,7 @@ "website": "https://dbox.foundation/", "twitter": "https://twitter.com/DBOXFoundation?s=20&t=AlMLUWAfM1UU2f_mRzwqCg", "discord": "https://discord.gg/rEN6ygpCxK", - "logo": "/img/showcase/dbox_logo.webp", + "logo": "/img/showcase/dbox_logo.png", "submittableId": "22737412" }, { @@ -2771,7 +2776,7 @@ "name": "Hobbi", "description": "With Hobbi, you can create a profile and record all the multimedia content you consume. Whether it's a movie, a book, or even a video game, register and share your profile with whomever you want.", "website": "https://hobbi.me", - "logo": "/img/showcase/hobbi_logo.png", + "logo": "/img/showcase/hobbi_logo.svg", "screenshots": [ "/img/showcase/hobbi_screenshot.png" ], @@ -2868,7 +2873,7 @@ "github": "https://github.com/Zondax/vault-k8s-canister", "youtube": "https://youtu.be/99MahI1SO7c", "twitter": "https://twitter.com/_zondax_", - "logo": "/img/showcase/zondax-logo.jpg", + "logo": "/img/showcase/zondax-logo.svg", "screenshots": [ "/img/showcase/vault-k8s.jpg" ], @@ -3218,7 +3223,7 @@ "name": "Accelar", "description": "Accelar is a unified product development infrastructure that allows for efficient development, launching, and management of web3 features including LLMs on ICP. Create canisters, workflows, identities, and interact with dApps through a non-custodial wallet.", "website": "https://www.accelar.io", - "logo": "/img/showcase/accelar_logo.png", + "logo": "/img/showcase/accelar_logo.svg", "display": "Normal", "id": "Accelar", "oneLiner": "A unified product development infrastructure that allows for efficient development, launching, and management of web3 features including LLMs on ICP.", @@ -3330,7 +3335,7 @@ "description": "A MultiSignature wallet and omnichain module designed for cross-chain message signing, suitable for multiple blockchain ecosystems.", "usesInternetIdentity": true, "display": "Normal", - "logo": "/img/showcase/blendsafe.png", + "logo": "/img/showcase/blendsafe.svg", "submittableId": "44514818" }, { @@ -3548,24 +3553,6 @@ "logo": "/img/showcase/frontrow_logo.png", "submittableId": "43814286" }, - { - "id": "rentspace", - "name": "RentSpace", - "oneLiner": "A crypto-friendly property rental platform.", - "website": "https://rentb.space/", - "tags": [ - "DeFi", - "SocialFi" - ], - "twitter": "https://twitter.com/RentSpaceco", - "github": "https://github.com/ICP-hub/RentSpace-ICP", - "discord": "https://discord.gg/hCFmTWFx85", - "description": "A crypto-friendly property rental platform", - "usesInternetIdentity": false, - "display": "Normal", - "logo": "/img/showcase/rentspace_logo.png", - "submittableId": "44394368" - }, { "id": "myordinalsloan", "name": "MyOrdinals.Loan", @@ -3621,7 +3608,7 @@ "website": "https://app.appic.solutions/", "github": "https://github.com/Appic-Solutions", "display": "Normal", - "logo": "/img/showcase/appic_logo.jpg", + "logo": "/img/showcase/appic_logo.png", "submittableId": "44626035" }, { @@ -3829,7 +3816,7 @@ "github": "https://github.com/zkCross-Network/zkCross-ICP", "twitter": "https://twitter.com/ZkCrossNetwork", "display": "Normal", - "logo": "/img/showcase/zkCross_logo.png" + "logo": "/img/showcase/zkCross_logo.svg" }, { "id": "icpexchange", @@ -3923,7 +3910,7 @@ "website": "https://owqnd-biaaa-aaaak-qidaq-cai.icp0.io/", "twitter": "https://twitter.com/icfootprint", "display": "Normal", - "logo": "/img/showcase/ic_footprint_logo.png" + "logo": "/img/showcase/ic_footprint_logo.svg" }, { "id": "galactic-bridge", @@ -4021,7 +4008,7 @@ "website": "https://hamsternet.io/", "twitter": "https://twitter.com/Hamsternetio", "display": "Normal", - "logo": "/img/showcase/hamster_logo.png" + "logo": "/img/showcase/hamster_logo.svg" }, { "name": "MSQ - Safe ICP Wallet", @@ -4082,7 +4069,7 @@ "name": "Konectª", "description": "A new protocol that gathers notifications and events from all your apps implementing it, and compiles them into a user-specific canister.", "website": "https://qmtwu-wqaaa-aaaan-qlrya-cai.icp0.io/", - "logo": "/img/showcase/konecta_logo.png", + "logo": "/img/showcase/konecta_logo.svg", "display": "Normal", "oneLiner": "A new protocol that gathers notifications and events from all your apps implementing it, and compiles them into a user-specific canister.", "tags": [ @@ -4249,7 +4236,7 @@ "description": "A city-based events calendar app helping web3 communities and companies in effectively reaching their target audience within cities.", "usesInternetIdentity": true, "display": "Normal", - "logo": "/img/showcase/dotmeet_logo.jpg" + "logo": "/img/showcase/dotmeet_logo.svg" }, { "id": "syron", @@ -4596,7 +4583,7 @@ "DeFi" ], "description": "Stake your ICP, join the pool and win big rewards!", - "logo": "/img/showcase/neuronpool_logo.png", + "logo": "/img/showcase/neuronpool_logo.svg", "usesInternetIdentity": true, "stats": "Open-source DeFi", "authOrigins": [ @@ -4957,5 +4944,58 @@ "twitter": "https://x.com/medblockid", "website": "https://medblock.id", "submittableId": "44389918" + }, + { + "id": "tap-protocol", + "name": "Tap Protocol", + "description": "Tap is the most programmable layer 1 Bitcoin protocol, enabling full smart-contract functionality without having to wrap or bridge any assets, and without the need for any L2 infrastructure.", + "logo": "/img/showcase/tapprotocol_logo.svg", + "display": "Normal", + "tags": [ + "Bitcoin", + "DeFi", + "Tools / Infrastructure" + ], + "twitter": "https://x.com/tap_protocol", + "website": "https://www.tap-protocol.com" + }, + { + "id": "ic-toolkit", + "name": "IC Toolkit", + "description": "IC Toolkit simplifies canister management, project collaboration, and decentralized governance on ICP.", + "logo": "/img/showcase/ictoolkit_logo.png", + "display": "Normal", + "tags": [ + "DAO", + "Tools / Infrastructure" + ], + "usesInternetIdentity": true, + "twitter": "https://x.com/ic_toolkit", + "website": "https://ic-toolkit.app" + }, + { + "id": "nfid-identitykit", + "name": "NFID IdentityKit", + "description": "NFID IdentityKit is the best way to connect an ICP wallet to your dapp.", + "logo": "/img/showcase/nfididentitykit_logo.svg", + "display": "Normal", + "tags": [ + "Tools / Infrastructure" + ], + "github": "https://github.com/internet-identity-labs/identitykit", + "twitter": "https://x.com/NFIDIdentityKit", + "website": "https://www.identitykit.xyz/" + }, + { + "id": "dfxdashboard", + "name": "DFX Dashboard", + "description": "DFX Dashboard is a GUI for using dfx, the CLI tool for ICP development.", + "logo": "/img/showcase/dfxdashboard_logo.svg", + "display": "Normal", + "tags": [ + "Tools / Infrastructure" + ], + "github": "https://github.com/tolgayayci/dfx-dashboard", + "website": "https://dfx-dashboard-docs.netlify.app/" } ] \ No newline at end of file diff --git a/src/components/DevelopersHome/DappStart/index.module.css b/src/components/DevelopersHome/DappStart/index.module.css deleted file mode 100644 index 34a05f13d1..0000000000 --- a/src/components/DevelopersHome/DappStart/index.module.css +++ /dev/null @@ -1,235 +0,0 @@ -.section { - position: relative; - overflow: visible; - display: flex; - flex-direction: column; -} - -.container { - width: Min(100vw,1440px); - padding: 40px 0; - margin: auto; - position: relative; -} - - -.title { - display: flex; - justify-content: center; - align-items: center; - text-align: center; - flex-direction: row; - margin: 0 auto 80px auto; - width: Min(660px, 90%); - font-weight: 700; - font-size: 60px; - line-height: 70px; -} - -.callToAction { - display: flex; - color: #3b00b9; - font-weight: 700; - font-size: 18px; - line-height: 26px; - margin-left: 24px; - transition: all var(--ifm-transition-custom-speed) var(--ifm-transition-custom-curve); - @apply z-30; -} - -.callToAction:hover { - color: black; - text-decoration: none; -} - -.callToAction:hover::before { - background: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.7813 7.33336L7.20529 3.75736L8.14796 2.8147L13.3333 8.00003L8.14796 13.1854L7.20529 12.2427L10.7813 8.6667H2.66663V7.33336H10.7813Z' fill='black'/%3E%3C/svg%3E%0A") no-repeat; -} - -.callToAction::before { - content: ""; - width: 24px; - height: 24px; - display: flex; - align-self: center; - margin: auto 0.5rem auto 0; - background: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.7813 7.33336L7.20529 3.75736L8.14796 2.8147L13.3333 8.00003L8.14796 13.1854L7.20529 12.2427L10.7813 8.6667H2.66663V7.33336H10.7813Z' fill='%233b00b9'/%3E%3C/svg%3E%0A") no-repeat; -} - -.cards { - display: flex; - flex-wrap: wrap; - box-sizing: border-box; - gap: 8px; - margin: auto; - width: Min(1110px, 90%); -} - -.card { - background: rgba(255, 255, 255, 0.5); - border: 1px solid #FFFFFF; - backdrop-filter: blur(5px); - box-sizing: border-box; - border-radius: 12px; - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - padding: 0 64px; - margin: auto 0 ; - height: 258px; - overflow: hidden; - transition: all var(--ifm-transition-custom-speed) var(--ifm-transition-custom-curve); -} - -.cardContainer { - width: calc(50% - 4px); -} - -.cyclesContainer { - width: 100%; -} - -.cyclesContainer .informationBody { - width: 45%; -} - -.cardHover:hover { - color: white; - text-decoration: none; - padding-bottom: 32px; - background: var(--ifm-color-primary); - border: 1px solid var(--ifm-color-primary); - transition: all var(--ifm-transition-custom-speed) var(--ifm-transition-custom-curve); -} - -.cardHover:hover .informationTitle, -.cardHover:hover .informationIcon, -.cardHover:hover .informationBody { - color: white; - text-decoration: none; - transition: all var(--ifm-transition-custom-speed) var(--ifm-transition-custom-curve); -} - -.cardHover:hover .motokoBackground { - bottom: 0; - transition: all var(--ifm-transition-custom-speed) var(--ifm-transition-custom-curve); -} - -.bodyContainer { - display: flex; - flex-direction: column; - margin: 0; - flex-grow: 1; - width: 95%; -} - -.informationTitle { - font-weight: 700; - font-size: 40px; - line-height: 50px; - color: var(--ifm-color-primary); - margin-bottom: 8px; -} - -.informationBody { - font-weight: 400; - font-size: 16px; - line-height: 24px; - color: black; - width: 80%; - margin-bottom: 0; -} - -.informationIcon { - color: var(--ifm-color-primary); - margin: auto; - width: 24px; - height: 24px; -} - -.motokoBackground { - height: 100px; - position: absolute; - bottom: -17px; - right: -4%; -} - -.BGShape { - position: absolute; - color: #3B00B9; - top: -100px; - left: -600px; - width: 1500px; - max-width: 1500px; - @apply -z-10; -} - -@media screen and (max-width: 996px) { - .card { - width: 100%; - height: 168px; - padding: 24px 32px; - } - - .title { - font-size: 32px; - line-height: 42px; - text-align: start; - margin-bottom: 32px; - } - - .bodyContainer { - width: 100%; - } - - .informationTitle { - font-weight: 700; - font-size: 24px; - line-height: 32px; - } - - .informationTitle { - margin-bottom: 8px; - } - - .informationIcon { - width: 16px; - height: 16px; - } - - .informationBody { - font-weight: 400; - font-size: 12px; - line-height: 20px; - margin-bottom: 0; - width: 95%; - } - - .cyclesContainer .informationBody { - width: 95%; - } - - .motokoBackground, .BGShape { - display: none; - } - - .header { - justify-content: flex-start; - align-items: flex-start; - flex-direction: column; - } - - .header p { - font-size: 24px; - line-height: 32px; - margin-bottom: 12px; - } - - .callToAction { - margin-left: 0; - } - .BGShape { - display: none; - } -} diff --git a/src/components/DevelopersHome/DappStart/index.tsx b/src/components/DevelopersHome/DappStart/index.tsx deleted file mode 100644 index 7a0cf42135..0000000000 --- a/src/components/DevelopersHome/DappStart/index.tsx +++ /dev/null @@ -1,95 +0,0 @@ -import React, { useEffect } from "react"; -import styles from "./index.module.css"; -import { motion, useAnimation } from "framer-motion"; -import transitions from "@site/static/transitions.json"; -import { useInView } from "react-intersection-observer"; -import clsx from "clsx"; -import RightArrowSVG from "@site/static/img/svgIcons/rightArrowIcon.svg"; -import BGCircle from "@site/static/img/purpleBlurredCircle.webp"; - -function Index() { - const controls = useAnimation(); - const { ref, inView } = useInView({ threshold: 0.2 }); - useEffect(() => { - if (inView) { - controls.start("show"); - } - }, [controls, inView]); - - return ( -
Developer grants
-- The DFINITY Developer Grant Program aims to catalyze the growth - of the Internet Computer ecosystem. -
-Beacon fund
-- Beacon invests early in strong teams who can launch and grow the - open internet services and decentralized financial systems of - the future. -
-Cycles faucet
-- Get free cycles to use for testing and deployment of your - project on the Internet Computer. -
-
- + Start coding
@@ -514,7 +514,7 @@ function SocialMediaDappsPage() {