o1-labs / docs2 Goto Github PK
View Code? Open in Web Editor NEWDocs website for the Mina Protocol.
Home Page: https://docs.minaprotocol.com
Docs website for the Mina Protocol.
Home Page: https://docs.minaprotocol.com
Quoting a great write-up shared by from Gordon Freeman on discord:
npx create-react-app --template typescript
npm run eject
add the following line to the config/webpack.config.json in the return statement
experiments: { topLevelAwait: true },
(on my setup it is before the line target: ['browserslist'],)go to your zkapp project and type: npm link
go to your react app and type: npm link
5.1. make sure that the name matches the name in your zkapp package.json
5.2 if there is a type stuff error during import use this // @ts-ignore right before the import statement in your react app
// @ts-ignore
import { Multisignature } from 'zkapp-multisign'
https://stackoverflow.com/questions/64732623/react-typescript-cannot-find-module-or-its-corresponding-type-declarationif there is an import error you might have to set the file extension of your zkapp in
/build/src/index.js manually (like this: import { Multisignature } from './Multisignature.js';) -- .js is the important part
6.1 Don't forget to add this file extension after every build of your zkapp
We would like to have better tracking of user behavior while using the docs. Hotjar will be the chosen tool to enable this feature.
Steps to reproduce:
It's most likely due to client side routing, but weird that it is happening at all given it's a static site. If needed, we could also consider moving the URL redirects out of the docusaurus config and into the vercel config, which should avoid it because those occur before the request reaches the framework.
Also, Brandon will set up a team review of precondition implementation to suggest changes.
Possible as a tip box so it stands out, likely at end of How to Write a zkApp or in the How to Deploy a zkApp section, wherever it fits best.
Add recommendations on where and when to compile smart contracts in a UI to provide the best end user experience.
This should be implemented after the proofsEnabled feature is released. The proofsEnabled feature will give developers the option to use proof authorization but easily turn off actual proof creation for quicker development.
Looking at the Github Actions history, the algolia-search
job has stopped working and failed.
It seems not to affect deployment, however.
Taken from feedback from Builders Program
Gregor: in-depth tutorials can help explain this.
To the How to Write a zkApp UI page.
Related:
And document use cases:
Add a tip describing how to create custom error messages in assertions, to the How to Write a zkApp page
On the How to Write a zkApp page. To show how to use it to initialize state.
The old docs had a page that displayed the graphql schema. The new docs are missing this page, we should re-add this.
burnto says:
Currently if you follow the step-by-step message board tutorial, it omits discussion of deployment and implementing a deploy function, which is a pretty critical part of the development cycle.
From an issue submitted to the old docs repo: MinaProtocol/docs#232
Tagging @jackryanservia to consider this.
See bottom of https://docs.minaprotocol.com/en/zkapps/how-to-write-a-zkapp We have an example for React currently, which is good, but should add it for other frameworks too.
From @es92
E.g. one that can be initialized with variable merkle witness heights
This is likely to make it into one of the planned tutorials, I'd imagine. If not, we can figure out where to add it.
To consider. Not a must have.
To How to Write a zkApp page.
Per discussion with Product Eng.
pull request WIP: #53
E.g. for the Mina node. For DRYer docs.
See the Hello World tutorial. Some text snippets contain line numbers or ellipsis, to help readers
...
10
11
12
13
14
15
...
This helps when viewing the tutorial vs the final version that is linked to on Github, but makes a mess for users who copy the code. If we have the ability to customize this JS code, we could use a regex for the start of the line to remove these.
Hello,
A requirement to run a node (and verify the key pair) is that the following permissions are set. The following command is provided on the Connect to Network page, under the Docker section. (The commands are also used on the key pair generation page.)
chmod 700 ~/keys
chmod 600 ~/keys/my-wallet
Windows users can't normally run these commands, and that may pose a problem if the user decides to share a windows folder containing the keys to docker using the --bind
/--volume
commands. The user may face an issue where the programs throw an error that the permissions are incorrectly set.
The suggestion is to add a warning block in the docs to Windows users, informing them to use Windows Subsystem for Linux (WSL) to perform the permission changes. Modern Docker makes use of WSL, and it is assumed that it's enabled on the Windows machine using Docker.
Here is a short guide showing how to perform these steps from a windows terminal. In my case, using Powershell, but it's assumed the command line (CMD) works as well.
wsl -d docker-desktop
to open Windows Subsystem for Linux with the docker-desktop distribution (It should be available since you installed docker). You are now in a linux environment, and can run the above commands, however, some modifications need to be done.~
, and you need to make sure that you only use forward /
slashes. The process will look something like the following. If no error message appears, the permission change completed successfully.PS C:\CryptoWallet> wsl docker-desktop
Desktop-name:/tmp/docker-desktop-root/mnt/host/c/CryptoWallet# chmod 700 keys
Desktop-name:/tmp/docker-desktop-root/mnt/host/c/CryptoWallet# chmod 600 keys/my-wallet
This should allow users to continue as normal with the installation and use of the mina node software.
x = 0 && x = 1
.destroy()
method to destroy an account, which would remove it from the ledgerCould go in the FAQ or the upcoming Snapps for Ethereum developers...or both!
Otherwise, it will remove the spread operator from within code too. I.e. ...Permissions.default(),
becomes Permissions.default(),
.
It seems like the current plugin used to integrate Google Analytics @docusaurus/plugin-google-gtag
, is not working correctly. To fix this, we should just insert the markup that Google Analytics looks for directly in the head
and body
tag manually.
When struct is available
https://docs.minaprotocol.com/zkapps/how-to-write-a-zkapp#custom-data-types
In the footer, we have an email submission for that lets users sign up for updates. Currently, this form does not do anything when a user submits their email form.
We need to add some behavior to submit the email to an endpoint for this flow to be finished.
The dominant paradigm in today's zk tooling is that some user code is compiled to a zk circuit. SnarkyJS, however, works differently: The user-written JS is executed to create a circuit, not compiled.
This difference creates a lot of misconceptions about snarkyjs, for users coming from other zk ecosystems or from higher-level zk material, so we should call it out in the docs to prevent these misconceptions early on.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.