Moralis Upgradeable Smart Contract Tutorial

i think thats what i did

you said you used the .env.example no?

yes i used it and renamed it

hmmm interesting :thinking: let me see carefully again

ok so i started over and followed your instructions

:eyes: ohh now I see, yeah your env file is empty, it should have the REACT_APP_MORALIS_APPLICATION_ID and REACT_APP_MORALIS_SERVER_URL environment variables there :raised_hands: if you have it in .env.example, you can copy it there to .env

1 Like

alright cool cool, which step are you in right now?

at the .env step, just so im clear i only add REACT_APP_MORALIS_APPLICATION_ID and REACT_APP_MORALIS_SERVER_URL

not the others ?

1 Like

yepp they are the necessary ones in this tutorial :raised_hands: others are optional, mostly for using the Moralis Admin CLI

1 Like

you da man YosephKS thank you so much for the help

1 Like

Hi @YosephKS,

Thanks for the tutorial, very useful and helpful.

I have a question about upgradeable contracts. I have a โ€œfactoryโ€ contract which instantiates two other contracts using โ€œnewโ€. So, let us say, contract A instantiates contracts B1and C1. Would it be possible to make the factory (contract A) upgradeable so that it would instead instantiate contracts B2 and C2?

And if that is possible, do contracts B1, C1, B2, C2 need to be upgradeable themselves? or can they be โ€œstandardโ€ contracts?

I hope I am explaining myself properly, please let me know if I am not.

Thanks.

Yes great question! @DeveloperMarwan unfortunately a child contract created by a factory contract would not be able to be upgraded :raised_hands: here you can check the docs by OpenZeppelin for mode details on the topic https://docs.openzeppelin.com/upgrades-plugins/1.x/writing-upgradeable#creating-new-instances-from-your-contract-code

complied success!
i am getting this error
PollingBlockTracker - encountered an error while attempting to update latest block:

Hey @zap, itโ€™s pretty normal to have time out error when deploying, you can simply try migrate again and itโ€™ll continue the migration from where it left off, if the node is too unstable that it timeout very frequently, I suggest you try to use public RPC url

Thanks for your Reply!
tried migrate many time but not working
try to deploy to local network but caused me this error
Error: Artifacts are from different compiler runs

problem solved in local network
i have deleted src/contract [folder] and made empty contract [folder]
and change the in truffle-config.js changed network_id: โ€œ",
networks: {
develop: {
host: โ€œ127.0.0.1โ€,
port: 7545,
chainId: 1337,
network_id: "
โ€,

but problem persist with Rinkeby network

yeah if you get error of truffle compile all, just delete the contracts folder and recompile everything, sometimes that happens, and for rinkeby, I think it should already be configured there, you just need to have your Moralis Speedy nodes key (something I named myself), which is something in between the RPC URLs

Hi @YosephKS
Can you share the contracts (Solidity files)?

Hey @niknak, itโ€™s open source and you can find it in the Youtube description or on this thread, just scroll up to the top :raised_hands: