[HOT] Updates, community discussions & feature requests

Thanks. What’s your opinion in regards to the documentation hub if we have this overview which can easily be maintained? Can and should we drop it? :smiley:

1 Like

Feel like every thing is in the place. With easy acces to all AE information.
Awesome!!

4 Likes

Where is easier to keep update the documentation? also if the documentation is keeping on GitHub is it mean we need to do a commit in order to update it?

1 Like

for any update to the documentation it is required to commit on github and open a pull-request.

to be honest I just don’t like the current documentation hub and I think having a definite link-list like in awesome-aeternity is way better and easier to maintain.

we have several components (protocol spec, node, sophia sdk, …) that all have their own dedicated documentation (see above) - so there is no need to maintain everything again in the documentation hub in one place. we could somehow integrate it and we thought about it but it’s in the end IMO not worth the work.

=> these dedicated documentations are meanwhile set up in a way that they are automatically built and published after each merge and for js-sdk and sophia docs we also have versioning in place (from now on)

we generally aim to improve READMEs on various repositories. and in the end - if something is not clear - you can always ask in the forum and you will get an answer and we can improve the README accordingly.

IMO we should take down documentation hub, improve READMEs where needed (proactively and on request basis) and use the awesome-aeternity repo to link to all the important stuff in the ecosystem.

opinions here? :slight_smile:

3 Likes

As discussed we decided to finally sunset the documentation-hub today in favor of a definite link collection included in awesome-aeternity.

If you now try to access the documentation-hub you will be redirected to the awesome-aeternity page.

Feel free to contribute via Github or let us know here if something is wrong/missing.

5 Likes

JS-SDK

We finally released v9.0.0 and subsequently v9.0.1 after we identified some unwanted behavior that came up when initializing the Channel Stamp in the Universal Stamp.

Thanks to @icarus this issue was identified very quickly as he updated the aepp-boilerplate-vue template in the aeUnited bounty program.

We encourage everybody to update to the latest version of the JS-SDK!

Highlights

What’s coming?

Sophia development

  • We made some update updates to AEstudio:
    • Using v9.0.1 of the JS-SDK
    • Introduced links to the explorer
  • We also updated the old contracts editor which can now be used again:

MDW-Backend

Lot’s of things happening here. It’s best to check GitHub and the recent releases.

There is also a release-please bot now that automatically prepares the releases including release notes for all changes in active development, see:

MDW-Frontend

We finally got some drive here, too. There are already some improvements there - especially the account page and display of AEX-9 tokens. Unfortunately the latest state isn’t released yet. Expect some further news about the explorer in the near future :slight_smile:

We also recently introduced release-please here now, see:

AMM / DEX (“Uniswap clone”)

Here we also made a lot of progress on contract development. The repository is still not public but the AMM also has a high priority. The good thing here is that we can analyze and improve our contract development tooling with this project. There are lots of tests that need to be covered and currently it’s very difficult to be productive with the status quo of the devtools. It’s most important for us now to sort the productivity issues out.

Be assured to get some updates here in the near future. On contract level we are almost done but of course we need to investigate what’s needed to do in the frontend to provide the same user experience like people are used to with e.g. Uniswap or other AMMs out there.

Bounties

This is ongoing and we plan to introduce new bounties in the near future. If you think you can help us and there is a missing bounty for that please let us know! :wink:

@VitalJeevanjot migrated the current token-migration backend to Node.js (currently in review) and @icarus finished the bounty to update the aepp-boilerplate-vue (see above).

Bounties we can currently imagine to additionally provide in the near future:

  • Introduce Sophia Syntax support
  • Implement a Sophia Langague Server Protocol (LSP) and at least one client implementation e.g. for VSCode

Closing words

Not sure if I forgot sth. important. For the Superhero Wallet we will also provide positive news in the near future - stay tuned! :slight_smile:

If you have any questions or suggestions let us know and/or create an issue in the corresponding Github repository.

One additional thing:

  • We signed up for the new GitHub Issues Feature and plan to use this to better manage our tasks and to be more transparent to the community in general.
7 Likes

Great news!! Now æpps can cover the gas fees of their users for a smoother user experience. Also really looking forward to the new AMM / DEX and new bounty ideas :smiley:

1 Like

does the amm/dex build on portal?

2 Likes

the AMM can handle tokens on aeternity like e.g. Uniswap does on Ethereum. it’s independent of Portal DeFi.

of course IF somebody would provide a token bridge e.g. to wrap ETH or BTC on aeternity those wrapped AEX-9 tokens could be traded there.

@bogdan will share some insights about the AMM development & testing today.

2 Likes

this is technical discussion. let’s keep it technical please. open another thread to discuss this topic if you want to and I will step out of this discussion because I cannot comment it. either we find people to provide liquidity or not.

NOTE

  • this thread is about æpp development and developer suite and tools
  • every (!!!) unrelated post will be deleted from me from now on (without further notice!)
  • please stick to this and open other threads for discussing other topics (especially exchange and liquidity topics!!!)
3 Likes

thanks;for all developer work!amzing!

3 Likes

While I was working on the contract side of AMM I needed to run different tests in isolation. I had to reset the state of the contracts by deploying the whole stack of contracts over and over for each test. Meanwhile the core devs provided us an awesome feature for rolling back to a certain block height, so I’m able to discard the effects of some tests in order to use just the initial part which is common for multiple tests. I made a recording of such test running:

From minute 0 to 1:13 you will see the contract deployments. From 1:13 on I run the tests and after each test the state of the chain is rolled back in order to run independently from the previous tests and have a clean initial deployment to rely on in subsequent tests.

6 Likes

Hey there,

it’s been a while since the last update here. Be assured that we are continuously working on improving the developer ecosystem for aeternity.

I will sum up the most important activities around devtools in general as usual.

aepp-sdk-js

Last week we finally managed to roll out v10.0.0-beta.1 of the sdk, see:

This is a huge milestone because it now integrates the standalone calldata-lib that allows to encode and decode calldata for aeternity Smart Contracts, see:

What does this mean? It means that we do no longer require the (hosted) http compiler to simply encode and decode calldata for Smart Contracts. From now on you can also initialize contract instances in the SDK by just using ACI and bytecode. No need to provide the full sourcecode anymore. If your aepp needs to interact with an already deployed smart contract and if there is no need to deploy a contract you can also initialize your contract instance by just providing ACI and the contractAddress.

How to initialize your contract instance is described in the usage guide:

Please be aware that this is a major release that contains several breaking changes. All the breaking changes are described in the migration guide here:

This is not the only change. We provided some bugfixes and other enhancements, too. But the integration of the calldata lib is by far the most important change here.

We are happy to find many testers that provide feedback to us. If you find any problems please open an issue on GitHub!

Huge thanks from my side here goes to @dincho.chain, @davidyuk, @subhod-i & @bruteforce.chain! :slight_smile:

AEproject / devmode

With the help of the core team - specifically @uwiger - we made good process with devmode that is speficially designed to be used in local development of smart contracts.

The upcoming v4.0.0 of AEproject is currently in development by @philipp.chain and will incorporate the devmode by default. It will also include utilities to rollback to a certain state of the chain (e.g. to the state after all contracts have been initially deployed) and to easily perform event related tests.

As soon as we think this can be used in the public we will provide a beta release here, too and let you know!

MDW Frontend / Explorer

After several changes and enhancements we finally made a new release v0.4.0, see:

It is now possible to see AEX-9 tokens in the account page. We also introduced a dedicated page for the tokens.

It is planned to introduce a tokenlist which will become even more important if we see more serious projects building on aeternity, see:

What we can already say is that we will have a wrapped AE token, similar to WETH on Ethereum. The wrapped AE token will be used in the upcoming DEX implementation (Uniswap v2 clone).

There are also several other improvements. Specifically related to details of contract calls. You now see the entrypoint that has been called, the params that have been passed and of course if the contract call was successful or has been reverted.

Also for accounts you can now see the balance (finally) and you see if it is a basic account or a generalized account. At the moment almost all accounts are basic. Let’s see if we get some adoption for generalized accounts in the near future :slight_smile:

Of course there is still lot of things to improve and to be added. My thank here goes to @atanaskrondev.chain! :slight_smile:

You can check the explorer out here:

In general we now have a product owner in the team. @menabdeirakli will independently collect requirements and rethink the whole explorer from a product point of view. provide feedback here: Questionnaire about æternity Explorer (Middleware Frontend)

MDW Backend

It has been a while here since the latest release. The team made a lot of improvements and also introduced new features. There had been some difficulties that prevented an earlier release. We expect v1.3.0 to be released very soon, ideally this week.

See all the changes here:

Thanks here go to @sborrazas @cryptodao21ae & @philipp.chain! :slight_smile:

DEX / AMM

This is probably the project most people out there are interested in. When we met in Sofia in October this year we aimed to develop a clone for Uniswap v3 which was almost finished at that time already. Uniswap v3 in general is way more complex compared to Uniswap v2 and we also faced some issues with native support for Bitwise operations which are very helpful for Uniswap v3 contracts.

Meanwhile the Bitwise operations have been added to Sophia but we won’t be able to actually make use of it until the upcoming Ceres hardfork.

After some discussions in the past weeks we decided to initially go with a clone Uniswap v2 instead of v3 for these reasons. (knowing that we almost finished implementation for v3 already)

The good message is: contract development is finished and we already started implementing the UI.

The smart contracts are currently in internal review. After this review is done (matter of weeks) we will:

  • publish the repository with the contracts (currently still private)
  • have an external security audit
    • I am already in discussion with a service provider in that regards

We expect to be able to release a working version on testnet this year around Christmas that you could play around with.

For the mainnet release we definitely want and need to wait for the external security audit.

Thanks here go to @bogdan, @keno.chain & @Niq! :slight_smile:

NFT Standard

We continued the discussion about the AEX proposal and we finally agreed upon an interface. You can check the whole discussion around the proposal here:

@zkvonsnarkenstein.chain will shortly provide the Pull Request to the official AEX repository which we can then review before finally providing a reference implementation for it.

Thanks to everybody involved in the discussions here, especially @zkvonsnarkenstein.chain! :slight_smile:

Superhero Wallet

We recently had 3 releases where mainly refactoring and smaller improvements have been addressed, see:

Currently the development of Superhero Wallet is on hold. There is still being worked on UX topics, but no coding. The focus of the development currently is on DEX / AMM.

Also thanks to everybody involved here! :slight_smile:

Bounties

Almost all open bounties are in progress or have already been reviewed and accepted. See a complete list of bounties and their current state here:

@VitalJeevanjot helped us migrating the backend of the migration-aepp to Node.js and now we finally managed to have it working again. Read more here: Migrating your ERC-20 AE tokens to AE mainnet | by æternity blockchain | æternity blog

@emmanueljet created an aepp boilerplate for React that can be found here: GitHub - emmanuelJet/aepp-boilerplate-react: A ReactJS boilerplate to build æpps in the æternity ecosystem.

More bounties will be announced shortly.

Closing words

If you are a developer and want to help us in a specific way please get in touch with us. Either here in the forum or on Discord.

If you have specific requests regarding Devtools please let us know, too! :wink:

11 Likes

All that wouldn’t be possible without the devotion of @marco.chain and pushing it in the right direction! Thank you, really!

11 Likes

well done! Expect amm; nft!

2 Likes

aepp-sdk v10.0.0

Today we released a new major release of the JavaScript SDK. We recommend everybody to update to the latest version due to many important changes.

Check it out on npm:

Please keep in mind that the release ships some breaking changes which you need to adapt your aepps to. Especially if you have an aepp that interacts with smart contracts!

Check out the migration guide and the general usage guide here:

aeproject v4.0.0-alpha.2

Today we also released an alpha version of the upcoming aeproject version which introduces utilities that allow you to make use of new devmode features. One very important feature here is for example the possibility to make snapshots and rollback to a state of the chain. Also the node in devmode can emit blocks instantly and doesn’t rely on mining so that you no longer waste CPU resources on your local machine. Under the hood the v4.0.0-alpha.2 release already integrates the new aepp-sdk v10.0.0 :slight_smile:

Check it out on NPM:

And install with npm install -g @aeternity/[email protected]

We don’t have an easy upgrade-path for your old aeproject repositories yet. A migration guide and general documentation will follow. For the moment you need to stick to the help of the CLI commands aeproject provides.

For aeproject, independent of it’s current alpha state, we also recommend to test it at least for new projects and provide us feedback! You will be way more productive compared to the old version :wink:

Have fun testing and if you have any questions let us know - we are happy to help! :slight_smile:

7 Likes

More is on the way! - :raised_hands:

2 Likes

@philipp.chain provided an update from the middleware team here: Middleware Team Development Update

3 Likes

aepp-sdk-java v3.0.1 & contraect-maven-plugin v2.0.0

Over Christmas and new year @mitch_lbw and I worked heavily on the aepp-sdk-java and the contraect-maven-plugin.

We finally managed to address the most important issues and are happy to announce the release v3.0.1 of the SDK and v2.0.0 of the plugin.

Note: It is already v3.0.1 for the SDK as we identified some serious vulnerabilities in third party dependencies which we immediately resolved.

We also refurbished the documentation which now provides lot of examples how to use it and how to get started:

You can find the respective changelog here:

For the SDK we also updated following example applications:

But there is more! :wink:

contraect-showcase-maven

Of course we also updated the contraect-showcase-maven repository where we provide an example how to use the plugin along with the SDK.

MultiSig contract using Generalized Accounts

One highlight in this showcase repo an example how to use the Generalized Accounts feature of æternity by attaching a simple MultiSig contract.

Check out following resources to see how the contract and the respective tests look like:

AENS delegation

We also added an example how to use delegation signatures and allow contracts to perform AENS transactions on behalf of the user. By making use of delegation signatures you would for example be able to create an AENS marketplace :wink:

Check out the contract and the test here:

Disclaimer

None of the contracts in this showcase repo are audited. This is especially important to mention for the SimpleGAMultiSig contract in case you plan to use it in production!

Have fun testing! Happy to get feedback and give support! :slight_smile:

4 Likes

Thank you for update dear @marco.chain :pray:

1 Like