Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Application for Dexel.md #2002

Closed
wants to merge 11 commits into from
237 changes: 237 additions & 0 deletions applications/Dexel.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,237 @@

# Dexel Grant Application

- **Team Name:** Awsmdot
- **Payment Address:** [0xa55f7149feb9d375045674449cfdb917c63bbbb1](USDC, Ethereum (ERC20))
- **[Level](https://github.com/w3f/Grants-Program/tree/master#level_slider-levels):** 2

## Project Overview :page_facing_up:

### Overview

**Dexel** aims to revolutionize the "read it later" domain by harnessing the power of the Polkadot ecosystem and decentralized web technologies. Recognizing the growing need for user-centric, private, and decentralized platforms, Dexel steps in to offer a seamless solution for users to save, categorize, and read online content.

- **Decentralized & Secure**: Built on the Polkadot network, Dexel ensures user data is decentralized and secure. Leveraging smart contracts developed with the Ink! framework, Dexel provides a robust foundation for user interactions.

- **Personalized Reading Experience**: Users can customize their reading environment, adjusting fonts, backgrounds, and more, ensuring a reading experience tailored to individual preferences.

- **Content Categorization**: Dexel intelligently categorizes saved URLs into Video, Project, or Article cards, streamlining user content management.

- **Privacy First**: In an era where data privacy is paramount, Dexel stands out by ensuring user data remains encrypted and private, giving users full control and ownership of their data.

By converging decentralized technologies with a user-first approach, Dexel aspires to be the go-to platform for individuals seeking a private, secure, and enhanced "read it later" experience.

This application is neither in response to an RFP nor a follow-up grant.


## Project Details :bulb:

### Tag Line

"Rediscover Reading Online. Secure. Private. Decentralized."

### Brief Description

Dexel is not just another bookmarking tool; it's a reimagined digital reading experience built on the Polkadot network. Designed with a focus on user-centricity, Dexel allows users to save online content effortlessly, categorizing it into Video, Project, or Article cards. Each saved content piece can be revisited in a personalized reading environment, with customization options at the user's fingertips. At its core, Dexel ensures data security and privacy through decentralized storage and smart contracts, empowering users to have full ownership and control over their data.

### Ecosystem Fit

As the Polkadot ecosystem matures, there's a growing demand for dApps that are not only decentralized but also prioritize user experience and practical utility. Dexel addresses this by melding the benefits of Polkadot's scalability, security, and interoperability with a tangible everyday use-case: saving and reading online content. The platform's integration with Polkadot allows for potential future collaborations with other parachains, opening avenues for enhanced features and cross-chain functionalities. By offering a decentralized alternative to mainstream "read it later" apps, Dexel fills a niche yet essential gap in the Polkadot dApp landscape.

### Design and User Experience

Our design philosophy is rooted in user-centricity and simplicity. With a clean interface and intuitive navigation, Dexel ensures users can effortlessly save and manage their content. Our Figma design offers a visual representation of the platform's aesthetics and functionality. You can explore the complete design here: [Figma Link](https://www.figma.com/file/4JD8UyfvdSgLTKxXZJgYBe/Awesomedot?type=design&node-id=450-450&mode=design&t=iD4AiGVpCiSFv1mn-0).

**Screenshots**:
- **Dashboard**: [Dashboard Screenshot URL](https://i.imgur.com/DprUIdV.png)
- **Home Page**: [Homepage Screenshot URL](https://i.imgur.com/kJDceSA.png)


## Team :busts_in_silhouette:

### Team members

- Ravi Kumar

### Contact

- **Contact Name:** Ravi Kumar
- **Contact Email:** [email protected]
- **Website:** itsravii:matrix.org

### Legal Structure

- **Registered Address:** 190, Faridpuri, West Patel Nagar, New Delhi, India, 110008
- **Registered Legal Entity:** Ravi Kumar

### Team's Experience

Our team brings a wealth of experience from the Polkadot ecosystem. Here are some highlights of our contributions:

- **DotForDummies**: A significant portion of our team has been instrumental in the development and management of [dotfordummies.co](http://dotfordummies.co), further showcasing our deep involvement with Polkadot-related projects.

- **Localization Initiatives**: We've actively contributed to broadening Polkadot's global reach by working on Hindi translations for the Polkadot website. This not only showcases our technical prowess but also our commitment to making Polkadot more accessible to non-English speaking communities.

- **Internationalization**: Beyond just translations, our team has been involved in internationalization efforts for Polkadot's codebase, ensuring that the platform is adaptable and friendly for a global audience.

- **Whitepaper Contributions**: To ensure comprehensive understanding and accessibility, we've also worked on the translation and adaptation of Polkadot's whitepaper.

Our team's past endeavors underline our dedication, expertise, and passion for the Polkadot ecosystem.


### Team Code Repos

- https://github.com/Awsmdot

Please also provide the GitHub accounts of all team members. If they contain no activity, references to projects hosted elsewhere or live are also fine.

- https://github.com/itssravi

## Development Roadmap :nut_and_bolt:

### Overview

- **Total Estimated Duration:** 4 Months
- **Full-Time Equivalent (FTE):** 2
- **Total Costs:** 30,000 USD

### Milestone 1: Initial Setup and Smart Contract Development

- **Estimated duration:** 2 months
- **FTE:** 2
- **Costs:** 15,000 USD

| Number | Deliverable | Specification |
| -----: | ----------- | ------------- |
| **0a.** | License | Apache 2.0 |
| **0b.** | Documentation | Both **inline documentation** of the code and a basic **tutorial** explaining how users can interact with Dexel, save content, and customize their reading environment will be provided. |
| **0c.** | Testing and Testing Guide | Core functions will be fully covered by unit tests to ensure functionality and robustness. A guide will be provided to detail how to run these tests. |
| **0d.** | Docker | A Dockerfile will be provided to test all the functionality delivered in this milestone. |
| 1. | Development Environment | Setting up the development environment for Dexel. |
| 2. | User Management Contract (UMC) | Development and initial deployment of the UMC on Polkadot testnet. |
| 3. | Content Management Contract (CMC) | Development of the CMC with features for saving, categorizing, and reading content. |
| 4. | Frontend Interface | Initial frontend interface development using React and Next.js, integrating with the developed smart contracts. |

### Milestone 2: Frontend Development, Integration, and Testing

- **Estimated duration:** 2 months
- **FTE:** 2
- **Costs:** 15,000 USD

| Number | Deliverable | Specification |
| -----: | ----------- | ------------- |
| **0a.** | License | Apache 2.0 |
| **0b.** | Documentation | We will extend the documentation to cover new features and updates. A detailed user guide on how to seamlessly interact with the platform, manage content, and customize the reading experience will also be provided. |
| **0c.** | Testing and Testing Guide | The second phase will involve rigorous testing of the entire platform. We will add more unit tests, and integration tests will ensure the frontend and smart contracts work in tandem. A guide detailing the extended test scenarios will be provided. |
| **0d.** | Docker | An updated Dockerfile will be provided to test the full functionality of Dexel, including the new features and improvements. |
| **0e.** | Article | At the end of this milestone, we will publish an article detailing the journey of Dexel, the challenges faced, and how it stands out in the decentralized ecosystem. |
| 5. | Comprehensive Frontend Development | A complete frontend development ensuring a seamless user experience, with features like content customization and management. |
| 6. | Frontend and Smart Contract Integration | Ensuring that the frontend perfectly interacts with the smart contracts, providing users with real-time feedback and updates. |
| 7. | User Personalization Features | Development of features that allow users to adjust their reading environments, ensuring a personalized reading experience. |
| 8. | Platform Testing | Comprehensive testing of the platform to ensure all features work as expected, and the platform is ready for launch. |


### Smart Contract Architecture

Our smart contract architecture is built using the Ink! framework. Our goal is to build a modular contract system where each module (or contract) will handle specific functionalities, allowing for better scalability, manageability, and upgradability.

- **User Management Contract (UMC)**
- **Content Management Contract (CMC)**
- **Customization & Preferences Contract (CPC)**

#### 2. Data Flows and Interactions

**2.1 User Authenticationn**

- User interacts with the frontend and opts to authenticate.
- The frontend communicates with the UMC to initiate the process.
- UMC interacts with the user's Polkadot wallet for authentication.
- Upon successful authentication, UMC stores user-specific keys and other necessary data on-chain.

**2.2 Saving Content**

- User pastes a URL on the frontend to be saved.
- Frontend communicates with the CMC to process this request.
- CMC fetches content linked to the URL, categorizes it, and stores the content reference (and metadata) on the Crust Network.
- The reference (or content ID) from Crust Network is then saved on-chain within the CMC, linked to the user's ID.

**2.3 Reading Content**

- User requests to read saved content via the frontend.
- Frontend communicates with the CMC to fetch the content reference for the user.
- The content itself is fetched from the Crust Network using the reference.
- Any customization preferences (like font, background) are fetched from the CPC.
- The content is then presented to the user as per their customization preferences.

**2.4 Setting Customization Preferences**

- User sets their reading preferences on the frontend.
- These preferences are then communicated to the CPC.
- CPC stores these preferences on-chain linked to the user's ID.


#### 3. Contract Interactions

**UMC**:

- Interacts with the user's Polkadot wallet for authentication.
- Stores user-specific details on-chain.

**CMC**:

- Responsible for content categorization.
- Interacts with the Crust Network for content storage and retrieval.
- Maintains on-chain references to content stored on the Crust Network.

**CPC**:

- Stores user customization preferences on-chain.
- Provides these preferences when requested.


#### 4. Security Mechanisms

Given the nature of the application, certain security mechanisms are crucial:

- **Rate Limiting**: Prevent any spam or DDoS attacks on the contract functions.
- **Data Validation**: Ensure that any data (like URLs) provided to the contracts is valid and safe.
- **Upgradability**: Design contracts such that they can be upgraded in the future without data loss or major disruptions.

This architecture and data flow provide a robust and scalable foundation for Dexel's functionalities. However, as with all technical designs, it's essential to undergo thorough testing, including unit tests, integration tests, and security audits, especially given the decentralized and financial nature of the platform.

By leveraging the benefits of Polkadot's interoperability and scalability, our smart contracts would ensure efficient operations, reduced gas fees, and enhanced security.

### Testing Strategy

- **Unit Tests**:
- **Contracts**: We'll use the built-in testing framework that comes with the Ink! platform to ensure each function behaves as expected.
- **UI**: We'll employ `Jest` combined with `React Testing Library` to test individual components and their interactions.

- **Integration Tests**: These tests will ensure the frontend and smart contracts work seamlessly together, providing users with real-time feedback and updates.

- **End-to-End (E2E) Tests**: We're considering using `Cypress` for real user scenarios from start to finish, ensuring the entire application works correctly.


## Future Plans :rocket:

Post the initial launch and deployment of Dexel, we have a strategic vision to ensure its sustained growth and relevance in the decentralized web ecosystem:

1. **Community Building**: Engage with our users through feedback sessions, ensuring the platform evolves based on their needs and preferences.

2. **Cross-Chain Integrations**: Explore potential collaborations within the Polkadot ecosystem, enhancing Dexel's capabilities and expanding its reach.

3. **Mobile Experience**: Recognizing the ubiquity of mobile users, we'll consider optimizing Dexel for mobile platforms, ensuring accessibility and convenience.

4. **Security Enhancements**: Continuously audit and refine the platform's security, ensuring user data remains protected against evolving threats.

Our journey with Dexel is a continuous one, and while we're ambitious, we're also grounded in our approach. We believe in growing organically, prioritizing user needs, and ensuring the platform's integrity at every step.

## Contact Information

- **Contact Name:** Ravi Kumar
- **Contact Email:** [email protected]
- **Website:** itsravii:matrix.org

## Appendices

[Any supplementary material or extended explanations]
Loading