-
Notifications
You must be signed in to change notification settings - Fork 17
Frontend Contest: Frontend of DEX with liquidity pools, Stage 1 #42
Comments
Do you expect the data to be hardcoded/calls mocked on all the screens? |
Are you accepting teams of 2-3? |
@danieldanielecki |
Is it allowed to not use any state management lib at all? Vanilla React might be enough for this functionality. Also, is it allowed to use |
@yugisu I guess |
https://github.com/KomodoPlatform/coins has all the infos about the supported coins |
Is next.js allowed? |
I feel |
As soon as it is a single page application can we use any client-side routing libraries like |
You can use the dependencies you want, but unnecessary and excessive dependencies will be considered a minus |
can I use the backend to simulate the real application and to create mocks? |
@tolya-yanot @EmelyanenkoK "Create Pool" and "Add Liquidity" seem to be the same functionality. Would you please provide some screenshots/explanation if there's any difference? |
I guess connection to wallet is also supposed to be mocked up?:) |
PS. Found a nice article related https://paulstamatiou.com/crypto-design-challenges |
https://github.com/netosha/ton-dex-contest
|
https://github.com/onicodys/ton-dex EQB4SuKF-J92gUIXXzIr9imxTmqRHvM2YjuTdn4vZ1IeF5ZG |
https://github.com/danieldanielecki/DEX-TON-Contest
|
https://github.com/D2Phoenix/ton-swap EQAaoKr296r6YnAQsPZaJ0hbgqFK_B_GotedqpGK9FeONlSi |
https://github.com/elisalech/ton-dex-contest last commit hash: TON wallet: Project ui and structure was inspired by pancakeswap, uniswap and 1inch. Unfortunately from the beginning I misunderstood the main task of building only ui (overengineering project from me) and, accordingly, could not finish remove liquidity, proper pool stats and mobile layout. Some of further fixes and features are described in todos. Thanks for the contest and looking forward to the next stages! |
https://github.com/egttopwwert/ton-dex-interface EQAslB5XKmpyyZZkmnBGBPpPfWee7yCrU3yPdrNtVIPIJxWS |
1 minute past 18:00 UTC, thank you so much for the fantastic contest and we're waiting for the results! |
Hello 👋 I've been doing the app until the last minute and forgot to describe its functionality and the build process. So, if you don't mind, I leave it here. Firstly, a little about myself. I'm Illia. I'm a 16-year-old young man from Ukraine who is passionate about programming. Last year I changed my educational institution to a lyceum at Kyiv Polytechnic Institute with the hope to find an ideal environment for studying computer science. But then, after talking with some students and teachers at KPI, I realized that it was only my dream, and no one would teach me programming except me. So that's why I'm here. Through this project, I wanted to apply my knowledge in practice by doing a real-world task and trying to make my contribution to the blockchain of the future. So let's take a look at what came of it. I started by analyzing the problem. I examined what is needed to do, did research about available decentralized and centralized exchanges. Then I created a mind map where I described the main parts of the application. As I mentioned before, I'm not an experienced developer. That's why my second step was learning the basics of Redux. My next step was creating the design of the app: https://www.figma.com/file/nfndBUbSuQWydTOeTae0uQ/the-open-network-dex-interface?node-id=0%3A1 I have created it from the view of a regular user. I have mixed best practices from world-level crypto exchanges, which I like to use, and the Tonkeeper theme. There were even more screens but cut them off due to not enough time. Then I started coding. I had five days and faith that I would have finished by the deadline. But in fact, it was more complicated than I thought. How to mock-up pools? How to mock-up wallet? How to build component hierarchy? How to combine it all? Unfortunately, sleepless nights didn't help, and I still haven't found answers to most of these questions. So that's why the final app functionality is limited to token swap. You can swap TON and tokens YANOT and SQUID. 1 TON equals 10 YANOT or 1000 SQUID, and 1 YANOT equals 100 SQUID. You can ask me, 'Why did you send this project if it's unfinished?'. I have never before participated in such contests. So I think it's necessary even though the project is unfinished. I want to be on the same wavelength with people who created the future. First P.S. I have just reviewed the works of other participants. They are 🔥 Second P.S. Thank you for TON. It has a great future. |
Good morning Illia, congratulations on your achievement. It'll pay off, don't worry. You have a bright future, even though if you won't be the winner - don't stop. Regarding little technical feedback for you to improve, I'd advise reviewing some of the apps from an architecture point of view. For example, some of us have created isolated ‘components’, each in a different folder having the ‘.tsx’ and ‘.css’/’.scss’ combined in 1 folder for 1 specific component. An alternative would be to use ‘styled-components’. The latter is being used in the projects some of us inspired, i.e., ‘PancakeSwap’ and ‘Uniswap’. They're open-source, so you can take a look, too. Caution: the codebase is overwhelming. Next, one of the submissions had something called ‘lazy loading’ - read about this. My final tip goes keeping your assets in separated folder, like ‘public’, or ‘assets.’ With the young age and priceless experience you've already “earned” more than the whole prize fund. Feel free to connect https://nl.linkedin.com/in/danieldanielecki (to all participants) Good luck, Daniel |
Dear Daniel, Thank you for taking the time to review my code. That is what I was looking for. I have heard about organizing files in the way you said. But have no idea how to apply it. I think it won't be a problem anymore because now I have great examples of its usage. Also, I will learn what is "styled-components" and lazy loading. Special thanks for the idea to learn from examples of existing projects from other developers. It is the best way to get their perennial experience and practical skills used in production. Thank you so much! And one more question. Could I message you on LinkedIn and ask questions about your professional career? There are lots of interesting details 👀 Best wishes, |
Happy New Year! 🍾 Am I the only one noticing for all Telegram/TON contests winners have been announced, excluding this one? (: |
All submissions do not meet our quality standards. The frontend should work smoothly and have a clean, pretty look. You can cooperate with a UI/UX designer to achieve a nice-looking UI. We repeat the competition with the same task. Anyone can participate. Prize fund: $30 000 in Toncoins. Deadline: 18:00 on Jan, 31 (UTC). |
That's a prosaic answer without any factual/technical information to bake this statement. It's even more disappointing after reading this answer to #43, i.e., "To get the main prize, it is not enough to simply collect existing metrics in one place and add ping of http pages." Thanks for the next "chance", it was an interesting challenge and new terminology to learn, but it doesn't look worthy given the amount of work we had/have to put in and seeing #43 results/code/rewards. Edit UX/UI that's a very subjective term, if you're creating frontend contest then maybe it'd be wise for you, to first hire UI/UX Designer, have the screens you want to be approved internally, and then give us the contests with clearly defined requirements. As you'd noticed, each team has delivered:
as part of the upcoming DEX with liquidity pools. The submissions had a frontend similar to what |
Is Flutter allowed? |
Good ? |
+1 |
Hey, This is totally unprofessional and disrespectful behavior! People put their personal time into this, with the expectation that there will be a winner, as in every competition. And after this, you come and say hey there's no winner and none of the submissions met your expectations. So, that's not people's fault, that's directly yours. Because as I checked almost all of the submissions fit the given task. If there were any other expectations, It's your fault that you didn't put them on the contest's description and whatever you're doing is called running away from giving the mentioned prize. And yet this isn't enough, you came and insulted @danieldanielecki by making fun of his submission that "no one steals it". This is how you respect people who put their time into projects of yours. As he's one of the guys who submitted both in the first time and in the repetition, I'm sure people took a look at his project (and the others who submitted first) to have clues about the project as you haven't provided any. And this would happen to all of the codes for the second stage, so he politely asked for compensation for the effort, not worried about stealing, yet you come and disrespect him. If you expected the winner's code to be something that you pick up and fill the mocks and push it to the production, while you're giving a tiny description with limited time, then I don't know what to say. That needs proper task sets with proper descriptions to reach the level which you expected to get with this insufficient information you gave. With this totally unprofessional behavior, I think we know the intentions of this competition. You now have several open-source projects mostly with MIT licenses in your hand which fit the described task and $30000 remaining untouched. No doubt with this kind of behavior and management the TON project will not go anywhere. If you care enough about reputation and want to earn it back, I suggest you either go public with review results that you did, so we can know why nobody's code met your quality requirements or announce the one with the best quality as the winner. Anyway, Good Luck with your ruined reputation, and I hope other developers see these so they don't fall into other traps of yours in the future. |
I'm a participant of Telegram contests (and winner of some) and I totally agree with the comments above. First - It's a contest, not a job that you order and pay for. So you can't expect 30k worth results from it in it's limited time and vague requirements in form "Do me a site like XXX, pls don't copy paste". If you want some quality job done - go hire people, put the detailed requirements and give enough time. Second - if Telegram would just discard all the submissions on some contests as "all are not good enough" - I would never take part in another one. You just loose trust and traction instead of gaining it. People spent their time, put their efforts that are just thrown away. And putting public comments like this is just disrespectfull as fuck. That contestant did a decent job, maybe just CSS needs a bit more polish, it's not a valid reason to behave like this. |
I have doubts that the authors of the contest knew what they wanted to see in the end. Just lost my time. |
@ftkvyn @AminRezaei0x443 |
@thirtndev maybe some works are not good enough, but there's no way none of them deserve at least the 4th place. |
It's not about the quality - it's about the respect and communication. A requirement "Do me a site like XXX" is NOT requirement - some years ago it was very common to order to do a website like Facebook. Did they require the complete copy? If not - what features, what integrations should be supported, what are the non-functional requirements, what are designs (if not direct copy)? Add here time constraints - some may commited 20 days of full-day work on this, some may not have so much time to spend. And both got nothing, not even a detailed review. Even Telegram's team, that is buisy supporting and developing multi-million user platform did commit to at least comment every submission. But this team has only time to write "All bad". |
@ftkvyn i am just a reviewer... i am not a member of this team. so i just can talk about code... also i didn't sumbitted any so i should not talk about communication between this team and people who submitted their best work. |
Man, you can post your code here, if you think you deserve to win. Be respectful to all of the participants |
@thirtndev Here an honest review should be taking all these points into account, regarding that the repetition had at most two weeks duration (Jan 17 - Jan 30) and most people didn't know until the second round. You can't expect all perfect and reject everything when you don't find that. At the first round problem of the submissions was generally mentioned as not having smooth and beautiful UI/UX. Here you can simply check and you'll see there are many submissions with great UI/UX. This is not how a contest should be held, you pick the best and give the prize. Later, you decide on how to continue on the other stages and rounds, or how to refine that code and ways to use it in the production. |
@stanislavhh it's closed so i just asked if there is any time to submit, excuse me if i did anything wrong. |
Tell us please we haven't seen such detailed description per submission as #43? @tolya-yanot, you're just a cheater. I hope, TON will be bankrupt when the crypto bubble breaks. |
I see where 100 TON from the prize pool has been utilized. |
Great developers of TON, if you are so sure that you are right, then why ban me in telegram chats and delete my message? In this message, only the facts and a link to this resource were presented, so that everyone could come in and check it out. They also indicated that my message was spam, so that I could not write in chats for a day more. By doing this, you only destroyed the last respect for you. |
Thanks for the scam 👍 I was glad to waste a week of my life in exchange for nothing. I can't believe I fell for this. Enjoy the saved $30k and ruined reputation among the developer communities. In the best traditions of Russian projects. Hope the crypto media and channels pay attention to this. |
From https://t.me/toncontests Let's explore the task:
The works were not evaluated according to the task, it seems that it all came down to the fact that you just "didn’t like it" and you expected to see something else, but it doesn’t matter, the TASK is a DOCUMENT(the LAW) - follow it when grading! "We set high standards on the quality and speed of development to ourselves and hope to see this in contests submissions. " Well, you can't give an overview of every work - because the check was not done properly. Unfortunately, the organization for this contest were unprofessional and not diligent. We believe that would be wrong to trust or cooperate low-quality company(scammers). Look for developers on freelance and do not kill such vector as contest programming! I going to move my toncoins to another crypto as fast as it would be profitable! PS: trolling of danieldanielecki - is what polite peoples call unprofessional and not diligent! |
I fully support ValeraKvip's opinion, and it really does look like a scam. It's very unfortunate that you are using Telegram's reputation and their approach for such pathetic actions. I hope not even more for the prize money but for specific facts why my work was not considered for any of the nominate places. |
Let me simplify
So the participants drew shapes: a square, a triangle, a circle, red green blue in different sizes. Then you say:
It is obvious that the developers did the job according to the task, but you rejected it according to some of your imagination. But I repeat: the text of the task is the law, respect it (as well as the participants)! Although even in my playful comment, I named the reason for the reject- which you did not. And I agree with samarets, Pavel Durov gave you a piece of his reputation when he blogged about you (why I actually participated) - but you flushed it down into the toilet. This is not a question of money, but trust, hiding behind someone else's reputation, you cheated everyone. Keep calling people who trusted you with their time - unprofessional lamers. And keep ignoring them. It's a recipe for victory! |
I didn't want to be polite:) |
Probably my English - i said it's impolite to trolling your submission by tolya-yanot |
UPDAfter additional discussion with the community members we decided to encourager all 21 participants and distribute the prize fund equally between them. Each receives 714.25 TON ($1428.5), which in total equals $30 000 at the current exchange rate ($2). Distribution: https://tonscan.org/address/EQDClyDhY5_7cUAywwD_49LglsEhyHHx-ShW4yF-89En1Iu3 I will clarify that private repositories (wclr repo remained private at the moment) and submissions without a link to the repository and wallet address were discarded. |
Spectacular decision 👏 You guys are amazing |
Well, it's better than just saying gtfo to all the participants. Thanks! For the future – take telegram contests as an example, their contests have set the standard in the world of coding contests. I mean:
|
Oh well. When the last one ended. I'd made a private repo thinking it would be reopened someday. Anyway congratulations to all the winners 👏 |
I have reopened the repo. Just closed it after the anouncement of the results. |
My recap:
The main reasons of failure in that contest were
We definitely are going to organize new contests and expand this direction of our activity. What will we change?
|
@EmelyanenkoK excellent report and great bug fixes. Hope everything works out next time. Good luck! ––––– @wclr It seems to me that you've closed the repository so that no one can see and use your code anymore. But remember that you published it under the MIT license. I hope I'm wrong about your motives and I understand that you were upset (like all of us), but it's only your mistake and it's a lesson for everyone about what not to do 🤷♂️ |
@tolya-yanot @EmelyanenkoK Thanks for these reconsiderations and explanations! I hope everything is satisfactory next time for both sides(participants and you). I was just thinking about major reasons why it turned out to be like this and I thought they're worth sharing:
I know this is time and resource-consuming, but If you already have specific review results to share, I guess sharing them would help current and future contest participants to understand the expectation level, know where was the problem, and how to perform better in the next contests. |
hi @tolya-yanot features: it will be great to receive your feedback on my project. |
🏆 Frontend Contest: Frontend of DEX with liquidity pools, Stage 1.
Prize fund: 30 000 TON.
Deadline: 18:00 on Nov, 30 (UTC).
Task:
Create a frontend of DEX with liquidity pools for TON Blockchain.
In this stage, you need to create a working UI. Asynchronous calls to smart contracts must be mocked-up.
We require a UI for exchanging one token for another token, a UI for creating a pool with two tokens, a UI for adding and removing liquidity from a pool, a UI with a list of pools and pool statistics.
You can explore services like Uniswap and Pancake.
You must use the Typescript+React+Redux stack.
Extra dependencies and extra code are not welcome.
You can't use the idea of just copying the entire open-source Uniswap code - there is a lot of unnecessary code there.
When considering the design options, you can focus on the ton.org site, UI of standard wallets and bridge. You may find the brand assets page helpful.
We deliberately did not give ready-made references so that you have the opportunity to rethink some things in using such services.
Evaluation priorities: understandability of the code and the possibility of its further support, general correctness and speed of the application and attention to detail.
Who can take part: Anyone.
How do I submit:
Please comment on this issue on GitHub by attaching an archive or link to the open-source code with a solution, a description of the functionality, a description of the build process, your TON address to receive an award. Submission must be under the MIT license.
To avoid plagiarism, you can attach a link to a private repo to the submission, which you will make public after the deadline.
The text was updated successfully, but these errors were encountered: