diff --git a/README.es-ES.md b/README.es-ES.md new file mode 100644 index 0000000..e64c7f7 --- /dev/null +++ b/README.es-ES.md @@ -0,0 +1,285 @@ + + +# La ruta Blockchain + +* Un conjunto de recursos sobre blockchain junto con algunos fragmentos. Perspectiva de desarrollador. +* En memoria de @ajlopez y sus repositorios de recursos de aprendizaje sobre DeFi. + +![Defi](./defi.jpeg) + +******************* + +- [La ruta Blockchain](#the-blockchain-path) + * [Contratos Inteligentes](#smart-contracts) + + [Básicos](#basics) + + [Avanzados](#advanced) + + [Seguridad](#security) + + [Optimizaciones de Gas](#gas-optimizations) + + [EIPs](#eips) + * [DeFi](#defi) + + [Yield Farming](#yield-farming) + + [Market Maker Automatizado](#automated-market-maker) + + [Préstamos y Créditos](#borrowing-and-lending) + + [Flash Loans](#flash-loans) + + [Oráculos](#oracles) + + [Vaults](#vaults) + + [Agregadores de Rendimiento](#yield-aggregators) + + [Staking de NFTs](#nft-staking) + * [Otras blockchains](#other-blockchains) + * [Algorand](#algorand) + * [Cosmos](#cosmos) + * [Near](#near) + * [RSK](#rsk) + * [Solana](#solana) + + [Básico](#basic) + + [Programas nativos](#native-programs) + + [SPL TOKEN](#spl-token) + * [Conocimiento Cero](#zero-knowledge) + * [Glosario y contenido técnico](#glossary-and-technical-mix) + + [Frameworks y utilidades](#frameworks-and-utilities) + +******************* +## Contratos Inteligentes + +### Básicos + +* Tipos de funciones: + * [Tipos de funciones en sc-I](https://medium.com/@yangnana11/solidity-function-types-4ad4e5de6d56#:~:text=Internal%20functions%20can%20only%20be,context%20of%20the%20current%20contract) + * [External vs public](https://ethereum.stackexchange.com/questions/19380/external-vs-public-best-practices) + * [Modificador Overrides](https://docs.soliditylang.org/en/latest/contracts.html#function-overriding) + +* Variables: + * [I](https://betterprogramming.pub/learn-solidity-variables-part-1-657fc27c2cc1) + * [II](https://betterprogramming.pub/learn-solidity-variables-part-2-f3b842f5bfb8) + +* Funciones fallback: + * [Fallback](https://medium.com/upstate-interactive/the-truth-about-fallback-functions-in-solidity-a2c604f8e66b) + * [Fallback II](https://www.tutorialspoint.com/solidity/solidity_fallback_function.htm) + +* [Interfaces](https://www.geeksforgeeks.org/solidity-basics-of-interface/) + +* [Librerías](https://jeancvllr.medium.com/solidity-tutorial-all-about-libraries-762e5a3692f9#:~:text=A%20library%20in%20Solidity%20is,in%20a%20more%20modular%20way) + +* Pruebas: + * [Guía técnica sobre cómo escribir buenas pruebas unitarias en sc](https://medium.com/upstate-interactive/a-simple-guide-for-how-to-write-unit-tests-for-smart-contracts-8ec4b645f57b) + +### Avanzados + +* [DelegateCalls](https://medium.com/coinmonks/delegatecall-calling-another-contract-function-in-solidity-b579f804178c) + +* SC actualizables (Upgradable SC): + * [No todos los contratos son inmutables](https://betterprogramming.pub/not-all-smart-contracts-are-immutable-create-upgradable-smart-contracts-e4e933b7b8a9) + * [Explicación detallada e implementación de Oz](https://simpleaswater.com/upgradable-smart-contracts/) + * [Solución interna de CardStack](https://medium.com/cardstack/upgradable-contracts-in-solidity-d5af87f0f913) + +* [Hooks](https://docs.openzeppelin.com/contracts/3.x/extending-contracts) + +* [Bytes I (doc oficial)](https://www.tutorialspoint.com/solidity/solidity_strings.htm) +* [Bytes II (post antiguo)](https://medium.com/@libertylocked/what-are-abi-encoding-functions-in-solidity-0-4-24-c1a90b5ddce8) +* [Bytes III (más completo)](https://docs.soliditylang.org/en/latest/internals/layout_in_storage.html#bytes-and-string) + +* [Abstract vs Interfaces](https://medium.com/upstate-interactive/solidity-how-to-know-when-to-use-abstract-contracts-vs-interfaces-874cab860c56) + +* [Integración con contratos de Oz](https://docs.openzeppelin.com/contracts/3.x/extending-contracts) + +* [Contrato de Ejemplo Pausable](https://fravoll.github.io/solidity-patterns/emergency_stop.html) + + +### Seguridad + +* [Reentrada](https://blockman.medium.com/reentrancy-a-vulnerability-that-causes-your-solidity-smart-contract-to-be-withdrawn-all-money-f4a9f6cdc57) +* [Reentrada después del fork de Istanbul](https://blog.openzeppelin.com/reentrancy-after-istanbul/) + +### Optimizaciones de Gas + +* [Consejos de Gas](https://mudit.blog/solidity-gas-optimization-tips/) +* [Consejos de Gas actualizados](https://blog.polymath.network/solidity-tips-and-tricks-to-save-gas-and-reduce-bytecode-size-c44580b218e6) +* [El almacenamiento es caro](https://medium.com/geekculture/hitchhikers-guide-to-the-evm-56a3d90212ac) +* [Pila demasiado profunda y solución](https://medium.com/1milliondevs/compilererror-stack-too-deep-try-removing-local-variables-solved-a6bcecc16231) + +### EIPs + +* EIP-155: Chain ID +* EIP-712: Estándar para firma de mensajes tipados + * https://medium.com/metamask/eip712-is-coming-what-to-expect-and-how-to-use-it-bb92fd1a7a26 + * https://medium.com/coinmonks/eip712-a-full-stack-example-e12185b03d54 + * https://dev.to/zemse/ethersjs-signing-eip712-typed-structs-2ph8 +* EIP-1167: Contrato Proxy + * https://eips.ethereum.org/EIPS/eip-1167 + * https://github.com/optionality/clone-factory/blob/master/contracts/CloneFactory.sol +* EIP-1344: Opcode de Chain ID +* EIP-1559: Cálculos de tarifas de Gas + * https://www.blocknative.com/blog/eip-1559-fees +* EIP-777: Tokens ERC20 mejorados + * https://eips.ethereum.org/EIPS/eip-777 +* EIP-4626: Vaults tokenizados +* EIP-2981: Regalías NFT + +********************************** + +## DeFi + +### Yield Farming + +* [Yield Farming (Es)](https://academy.bit2me.com/que-es-el-yield-farming/) +* [Yield Farming (En)](https://academy.binance.com/en/articles/what-is-yield-farming-in-decentralized-finance-defi) + +### Market Maker Automatizado +* [AMM](https://academy.binance.com/en/articles/what-is-an-automated-market-maker-amm) + +### Préstamos y Créditos + +* [Documentación de Compound](https://compound.finance/docs) +* [Compound - Prestar](https://medium.com/compound-finance/supplying-assets-to-the-compound-protocol-ec2cf5df5aa) +* [Compound - Pedir prestado](https://medium.com/compound-finance/borrowing-assets-from-compound-quick-start-guide-f5e69af4b8f4) +* [Explicación de Gemini](https://www.gemini.com/cryptopedia/what-is-compound-and-how-does-it-work#section-the-compound-de-fi-protocol) + +### Flash Loans + +* [Decrypt](https://decrypt.co/resources/what-are-flash-loans-the-defi-lending-phenomenon-explained) +* [Binance](https://academy.binance.com/en/articles/what-are-flash-loans-in-defi) +* [Medium Geek Culture](https://medium.com/geekculture/what-is-a-defi-flash-loans-flash-loan-attack-c130c83d9811) +* [101 Blockchains](https://101blockchains.com/defi-flash-loans/) +* [Docs técnicas de AAVE](https://docs.aave.com/developers/guides/flash-loans) + +### Oráculos + +* [Por qué oráculos](https://medium.com/iex-ec/why-your-dapp-needs-a-decentralized-oracle-2f2403f9fd7) +* [MakerDao Medianizer](https://developer.makerdao.com/feeds/) + +* [Rastreador TVL](https://defipulse.com/) + +### Vaults + +* [Vaults explicados](https://blog.apy.vision/defi-vaults/) +* [Explotación de yDAI](https://swissborg.com/blog/flash-loan-attack) + +### Agregadores de Rendimiento + +* [Verso](https://verso.finance/the-mechanics-of-yield-farming-and-yield-aggregators/#:~:text=Yield%20farming%20aggregators%20essentially%20automate,maximizing%20yields%20via%20auto%20compounding.) +* [Eqifi](https://eqifi.medium.com/defi-explained-what-is-a-yield-aggregator-e611f0cf969b) +* [Stakingbits](https://medium.com/stakingbits/what-is-yield-farming-and-a-yield-aggregator-8161e7a74b43) +* [Hackernoon](https://hackernoon.com/how-do-yield-aggregators-work) + +### Staking de NFTs + +* [Doc detallada de Moonpay](https://www.moonpay.com/nft/nft-staking) +* [Repositorio de ejemplo usando ERC1155](https://github.com/karangorania/nft-staking) + +********************** + +## Otras blockchains + +## Algorand + +* [Activos estándar (ASA)](https://developer.algorand.org/docs/features/asa/) +* [Contratos Inteligentes con Estado](https://developer.algorand.org/docs/features/asc1/stateful/) +* [Contratos Inteligentes sin Estado](https://pyteal.readthedocs.io/en/stable/overview.html) +* [Directrices Teal](https://developer.algorand.org/docs/features/asc1/stateful/) +* [Visión general de PyTeal](https://developer.algorand.org/docs/features/asc1/teal/pyteal/) + +## Cosmos + +* [IBC-Protocol](https://ibcprotocol.org/) +* [SDK](https://docs.cosmos.network/v0.44/) +* [Starport](https://docs.starport.com/) +* [Cosmwasm](https://cosmwasm.com/) + * [Semántica de contratos](https://docs.cosmwasm.com/docs/1.0/smart-contracts/contract-semantics) + * [Análisis de contratos](https://docs.cosmwasm.com/tutorials/simple-option/develop) + * [Anatomía de un contrato inteligente](https://docs.cosmwasm.com/dev-academy/develop-smart-contract/intro) + * [Cosmwasm para desarrolladores](https://blog.cosmos.network/cosmwasm-for-developers-7640ee38430f) + +## Near + +## RSK + +* [Rlogin](https://github.com/wighawag/tutorial-hardhat-deploy) +* [RSK Swap](https://rskswap.com/docs/v2/protocol-overview/how-rskswap-works) +* [SC de RSK Swap](https://rskswap.com/docs/v2/smart-contract-integration/quick-start/) + + +## Solana + +### Básico + +* [Programando en Solana](https://paulx.dev/blog/2021/01/14/programming-on-solana-an-introduction/) +* [Solana 101](https://learn.figment.io/tutorials/solana-101) +* [Solana para técnicos](https://2501babe.github.io/posts/solana101.html) +* [Recetario de Solana](https://solanacookbook.com/#contributing) +* [Transacciones de Solana en profundidad](https://medium.com/@asmiller1989/solana-transactions-in-depth-1f7f7fe06ac2) + +### Programas nativos + +* [Explicación](https://medium.com/coinmonks/solana-internals-part-1-what-are-the-native-on-chain-programs-and-why-do-they-matter-61c981483e86) + +### SPL TOKEN + +* [CLI](https://medium.com/@kaloliya/step-by-step-guide-for-creating-a-token-on-solana-network-68d3b890ca84) +* [Explicación del código junto con ejemplo](https://medium.com/credix/building-an-spl-token-faucet-on-solana-2b8a07d364ff) +* [Explicación técnica](https://medium.com/credix/building-an-spl-token-faucet-on-solana-2b8a07d364ff) + +********************** + +## Conocimiento Cero + +Más formales: + +* [Wikipedia](https://en.wikipedia.org/wiki/Zero-knowledge_proof) +* [Zcash](https://z.cash/technology/zksnarks/) +* [Introducción con ejemplos](https://media.consensys.net/introduction-to-zksnarks-with-examples-3283b554fc3b) +* [Optimistic vs Rollup](https://blog.matter-labs.io/optimistic-vs-zk-rollup-deep-dive-ea141e71e075) + +Matemáticas: + +* [Por dentro por Vitalik](https://medium.com/@VitalikButerin/zk-snarks-under-the-hood-b33151a013f6) +* [Decentriq](https://blog.decentriq.com/zk-snarks-primer-part-one/) +* [Mezcla con computadoras cuánticas](https://medium.com/coinmonks/zk-starks-create-verifiable-trust-even-against-quantum-computers-dd9c6a2bb13d) +* [Coinbase](https://blog.coinbase.com/zksnarks-and-cryptographic-accumulators-f840da0b61c6) + +Implementaciones + +* [Zokrates](https://zokrates.github.io/introduction.html) +* [ZkSync](https://blog.matter-labs.io/introducing-zk-sync-the-missing-link-to-mass-adoption-of-ethereum-14c9cea83f58) +* [Circom](https://docs.circom.io/background/background/) + + +## Glosario y contenido técnico + +* [Mercado bajista y alcista](https://academy.binance.com/en/glossary/bear-market) +* [Comparación de Tokens](https://medium.com/coinmonks/token-standards-erc20-vserc721-vs-erc1155-3106f1e3f2f3) +* [Tutorial ERC20](https://medium.com/crypto-currently/the-anatomy-of-erc721-e9db77abfc24#:~:text=Ethereum%20Request%20for%20Comments%20721,the%20tokens%20are%20non%2Dfungible%20) +* [ERC721 detallado](https://medium.com/crypto-currently/the-anatomy-of-erc721-e9db77abfc24#:~:text=Ethereum%20Request%20for%20Comments%20721,the%20tokens%20are%20non%2Dfungible%20) +* [Aleatoriedad](https://betterprogramming.pub/how-to-generate-truly-random-numbers-in-solidity-and-blockchain-9ced6472dbdf) +* [Direcciones de vanidad](https://academy.bit2me.com/en/what-is-a-vanity-address/#:~:text=Vanity%20addresses%2C%20or%20vanity%20addresses,up%20the%20security%20they%20provide.) +* IPFS + * [Oficial](https://ipfs.io/) + * [Tutorial práctico](https://medium.com/coinmonks/a-hands-on-introduction-to-ipfs-ee65b594937) + + +### Frameworks y utilidades + +* Hardhat + * [Tutorial del plugin Hardhat-deploy](https://github.com/wighawag/tutorial-hardhat-deploy) + +* TheGraph + * [QS Oficial](https://thegraph.com/docs/en/developer/quick-start/) + * [Documentación completa](https://thegraph.com/docs/en/developing/creating-a-subgraph/) + * [Mappings](https://thegraph.com/docs/en/developing/creating-a-subgraph/#writing-mappings) + * [Desplegando subgraph](https://medium.com/xord/the-graph-network-part-ii-deploying-the-subgraph-xord-a80b454d96d2) + * [Pruebas unitarias](https://thegraph.com/docs/en/developing/unit-testing-framework/) + * [Subgraphs de contratos inteligentes de Celo](https://learn.figment.io/tutorials/celo-subgraphs) + +* Anchor + * [Docs oficiales](https://www.anchor-lang.com/l) + * [Repo](https://github.com/coral-xyz/anchor) + * [Anchor simplificado para nuevos desarrolladores](https://hashnode.com/post/anchor-framework-simplified-for-new-developers-in-solana-cktyttmwf09h6bps189wxcngd) + * [Contextos, PDAs y semillas](https://2501babe.github.io/posts/anchor101.html) + +* Solana-cli + * [Instalación](https://docs.solana.com/cli/install-solana-cli-tools) + * [Uso oficial](https://docs.solana.com/cli/conventions) + * [Operaciones básicas](https://medium.com/@lianxiongdi/solana-development-1-basic-operation-of-solana-cli-dcf156137e6) + * [Crear Token usando cli](https://medium.com/@lianxiongdi/solana-development-2-create-your-own-token-bfd4e53c3840) + +* Truffle: + * [migrate por dentro](https://medium.com/@blockchain101/demystifying-truffle-migrate-21afbcdf3264)