-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Construct a build system #1
Comments
Are these features enough as a build system for the early stage? @homura @felicityin @yanguoyu |
These features I think are enough, but maybe |
In module.exports = {
defaultNetwork: "rinkeby",
networks: {
hardhat: {
},
rinkeby: {
url: "https://eth-rinkeby.alchemyapi.io/v2/123abc123abc123abc123abc123abcde",
accounts: [privateKey1, privateKey2, ...]
}
}
} https://hardhat.org/hardhat-runner/docs/config#available-config-options I think specifying a network with a cli option is flexible enough, with that I can schedule tasks for various chains simultaneously. At least, it's good for CI as follows: jobs:
test:
run: ... --network local
prod:
run: ... --network testnet |
Shall we need to add building, sign, and broadcast a transaction to the plugins? For developers to test the deployed contract on the chain. Or will it be in other packages? |
What kind of contract to be deployed? Is it defined by Nervos or Kuai? |
A async function main() {
const [deployer] = await ethers.getSigners();
console.log("Deploying contracts with the account:", deployer.address);
console.log("Account balance:", (await deployer.getBalance()).toString());
const Token = await ethers.getContractFactory("Token");
const token = await Token.deploy();
console.log("Token address:", token.address);
} |
I think supporting these functions via plugins will make the workflow uniform. BTW every plugin should be a package and necessary packages will be bundled and imported by default. |
Does a contract defined by Kuai need to be compiled? If yes, does a mockchain or vm need to be provided? |
Sure, at this stage we will keep using Capsule for works of contracts but taking it over by JavaScript/TypeScript is one of our goals A local node with flexible accessibility is desirable but out of our ability for now so we will start with a normal node. |
For me, the basic project structure could be like
|
The commands I'd like to have are as follows:
|
Tasks it may have
|
Is the project structure for |
Some open-source projects may help us:
|
This is the project structure generated by The directory for cache is named Individual
|
There's another package to rule them all, https://github.com/google/zx, but I'm not saying it's good for every project. |
This is a Design of There will be a `kuai/docker' package to provide docker image's donwnload / run / cache etc... usecases might look like:
|
Construct a build system similar to https://nx.dev/ or https://hardhat.org/ which covers basic usage of a framework
The text was updated successfully, but these errors were encountered: