ton-society / grants-and-bounties

TON Foundation invites talent to imagine and realize projects that have the potential to integrate with the daily lives of users.
https://ton.org/grants
294 stars 133 forks source link

UI Components Library for Telegram Mini Apps #364

Closed kuhel closed 4 months ago

kuhel commented 10 months ago

Summary

Objective

To develop a React UI Components library for Telegram Mini Apps that implements the design language outlined in the Figma Telegram UI Kit.

Functionality

Technical Requirements

Deliverables

Approval

This specification must be approved by the project stakeholders before work commences. Any changes to the scope or deliverables should be documented and agreed upon by all parties involved.

Context

To develop a React UI Components library for Telegram Mini Apps that implements the design language outlined in the Figma Telegram UI Kit.

References

https://weui.io/

https://vkcom.github.io/VKUI/

https://mantine.dev/

Estimate suggested reward

Up to $20K

mbaneshi commented 10 months ago

Thanks, @delovoyhomie for approvement

markokhman commented 10 months ago

@kuhel this one can only be done after the design one (#363), right?

designervoid commented 10 months ago

Hello everyone!

What are your thoughts on a cross-platform design system? For instance, using Tailwind for the base package. It works well for web, but seems less effective on mobile platforms (see benchmark).

What other options do we have for the UI Component Package?

  1. Separate web components for the web, like @tonconnect/ui (use web components in any web environment).
  2. Separate components for React Native.

Like: @ton/ui/web, @ton/ui/mobile.

Looking forward to community thoughts, thanks!

mainsmirnov commented 9 months ago

Good evening,

We would love to take on this assignment, and we are currently in the process of preparing the design for this issue.

Desired reward: $20,000 Submission deadline: January 22

We will publish a version for each of the designated segments: Layout, Form, Navigation, Feedback, Overlays, Data Display, Typography, and Miscellaneous. We can split the reward for each block.

We plan to use Storybook for documentation. This tool will make it easier to delineate documentation in each component and make property descriptions available in the IDE.

UPD: If you choose us, I'd be happy to split the payment into two phases:

Stage 1: Overall architecture (provider for theme, platform, etc.), Typography components, and buttons. Stage 2: Finalization of the remaining components.

designervoid commented 9 months ago

Hi!

I've added a cli to the ton-design-system package, and we are now capable of distributing pre-built components.

Today, I tested the command npx "@designervoid/ton-design-system@latest" cli -g and successfully integrated the Button component into a Solid.js application.

I'm currently in the process of creating React components and more complex components.

kuhel commented 9 months ago

Hi @designervoid , thank you for suggestions and appreciate yours efforts. But we aim UI Kit following strict guidelines of Telegram. @mainsmirnov team is on UI kit layouts and we will ask them to contribute for web components library.

mbaneshi commented 9 months ago

@kuhel thank you ,would you please make these consideration somehow more obvious in future ,so community can discuss next step not assignment .

kuhel commented 9 months ago

make these consideration somehow more obvious in future

Well, I must admit that request was focused on UI language of Telegram from the very beginning.

implements the design language outlined in the Figma Telegram UI Kit

mainsmirnov commented 8 months ago

Greetings, community! We are thrilled to announce the release of the beta version of our library.

  1. Library: npm
  2. Code: TelegramUI
  3. Storybook: tgui.xelene.me
delovoyhomie commented 6 months ago

@mainsmirnov thank you for the contribution!

To accurately recognize your valuable contributions in our repository, we kindly request you to submit a Pull Request to the Hall of Fame file, providing the wallet address and a link to the bounty with the number.

Please follow these steps: 1) Fork the repository (if you haven't already). 2) Edit the Hall of Fame file, commit, and push your changes. 3) Create a Pull Request from your fork to the main repository, providing the wallet address and a link to the bounty with the number (for example, Pull Request https://github.com/ton-society/grants-and-bounties/pull/136). For reference on what your entry should look like, please see the examples of past merged pull requests.

4) And please follow the questbook proposal stage in accordance with the bounty guideline

delovoyhomie commented 4 months ago

Thank you for the contribution!