Inspiration
The inspiration for our Mail-Auth project stems from the growing need for a simple and seamless onboarding experience for first-time users of web3 applications. With the rise of decentralized applications and blockchain technology, the traditional process of creating and managing wallets for accessing web3 services has posed significant barriers for users unfamiliar with the intricacies of blockchain technology. We aimed to address this challenge and provide a user-friendly solution that eliminates the need for wallet creation while ensuring secure access to web3 applications.
Our team recognized that the existing authentication methods were often complex and required users to go through multiple steps, such as creating and managing wallets, remembering private keys, and dealing with transaction fees. These barriers hindered the mass adoption of web3 applications and limited the accessibility for users who were new to the decentralized ecosystem.
The desire to create a seamless onboarding experience led us to leverage the power of Google Authentication and integrate it with the NEAR Blockchain, a scalable and developer-friendly blockchain platform. By utilizing the Google Auth API and NEAR-API-JS library, we could streamline the authentication process and provide users with a familiar and straightforward method of signing in using their existing Google credentials.
Additionally, our project aimed to simplify the account creation process by automatically generating accounts for users upon successful authentication. This eliminated the need for users to manually create accounts and manage associated access keys, further enhancing the user experience and reducing complexity.
By combining these technologies and design principles, we sought to create an innovative solution that removed the barriers to entry for web3 applications. Our inspiration stemmed from the vision of enabling anyone, regardless of their technical background, to seamlessly access and interact with blockchain-based services. We aimed to provide a bridge between traditional authentication methods and the world of decentralized applications, allowing users to enjoy the benefits of web3 without the complexities associated with wallet management.
Overall, our inspiration was driven by the belief that user-friendly onboarding experiences are crucial for the widespread adoption of web3 applications. We aimed to empower users with a hassle-free, secure, and efficient means of accessing and interacting with decentralized services, ultimately contributing to the growth and accessibility of the NEAR blockchain ecosystem.
What it does
- Allows users to sign in to dapps using their emails
- Creates an NEAR account programatically for first time users
- Enables developers to cover for the gas fees of their users
How we built it
We used the Google Auth API to sign a user into a app and make sure the are still logged. We used the NEAR-JS-API to handle creation of accounts and check if an accountID with the users' email already exists. We utilized the NEP-366 for a model of a relayer for signing of transactions thus paying for gas fees
Challenges we ran into
Throughout the development of the Mail-Auth project, we encountered several challenges that tested our problem-solving skills and adaptability. These challenges were crucial learning opportunities that helped us grow as developers and expand our understanding of the NEAR protocol and related technologies. The key challenges we faced include:
Newness of NEAR Protocol: Building on the NEAR protocol was a new experience for our team. As beginners in the NEAR ecosystem, we had to invest time in understanding the protocol's concepts, account model, and how to interact with it using tools like the NEAR-JS-API. We faced a learning curve to grasp the nuances of working with NEAR, but our commitment to learning and exploration helped us overcome this challenge.
Understanding NEP-366: NEP-366, the concept of meta transactions, presented a unique challenge. Tailoring it to suit our application's requirements and integrating it seamlessly with our authentication process required a thorough understanding of the NEP-366 specification. We had to dig deep into the documentation, experiment with different approaches, and iterate on our implementation to ensure the smooth execution of meta transactions within Mail-Auth.
Integration of Moving Parts: Developing Mail-Auth involved integrating various components, including the Google Auth API, NEAR-JS-API, smart contracts, and the Mail-Auth API itself. Coordinating these different moving parts and ensuring their seamless integration required careful planning, effective communication, and continuous testing. We faced challenges in synchronizing the interactions between these components, but with perseverance and collaboration, we were able to overcome them.
Time Constraints: The time frame of the hackathon presented a significant challenge for us. With just about 2.5 days to build a functional MVP, we had to make strategic decisions about which features to prioritize and which to defer for future iterations. The limited timeframe meant we had to focus on delivering a minimum viable product that showcased the core functionality of Mail-Auth, while accepting that some desired features couldn't be fully implemented within the given timeframe.
Overcoming these challenges required a combination of technical expertise, research, collaboration, and effective time management. We worked closely as a team, leveraged available resources, sought guidance from the NEAR community, and embraced an iterative approach to tackle each challenge. These obstacles not only enhanced our technical skills but also instilled in us the resilience and adaptability needed to overcome hurdles in future projects.
Despite the challenges we encountered, we are proud of our ability to navigate through them and deliver a functional proof of concept for Mail-Auth within the given timeframe. The lessons learned from these challenges will continue to shape our development process, enabling us to tackle future obstacles with confidence and efficiency.
Accomplishments that we're proud of
Throughout our journey with the Mail-Auth project, we have achieved several significant milestones that we take pride in. These accomplishments demonstrate our dedication, innovation, and ability to deliver tangible results. Some of our notable achievements include:
Conceptualizing and Developing the Idea: The initial ideation phase was crucial in shaping the vision of Mail-Auth. We are proud of our ability to come up with the concept of a seamless authentication solution that leverages Google Authentication and integrates with the NEAR blockchain. This idea laid the foundation for the entire project and set us on a path towards creating a user-friendly onboarding experience for web3 applications.
Participation in Workspaces: We actively sought opportunities to engage with the developer community and showcase our project. Participating in workspaces, such as hackathons, meetups, and conferences, allowed us to present our proof of concept (POC) for the Mail-Auth API. We take pride in our ability to effectively communicate the value proposition and potential impact of our solution to a diverse audience.
Proof of Concept (POC): Developing a functional POC for the Mail-Auth API was a significant achievement. We successfully demonstrated the core functionality of the system, showcasing how users can seamlessly authenticate using Google credentials and interact with smart contracts on the NEAR blockchain. The POC served as a tangible proof of our concept and validated the feasibility of our approach.
Collaboration and Teamwork: Building Mail-Auth required strong collaboration and teamwork among our team members. We are proud of our ability to work cohesively, leverage each team member's strengths, and effectively communicate to achieve our project goals. Our collective efforts resulted in a well-coordinated and successful development process.
User-Centric Design: One of our key accomplishments is the user-centric design approach adopted throughout the development of Mail-Auth. We prioritized the user experience, ensuring that the authentication process was seamless, intuitive, and accessible to users of all technical backgrounds. By eliminating the need for wallet creation, we addressed a significant barrier to entry for first-time web3 application users.
Technical Implementation: Successfully implementing the integration between Google Authentication, the Mail-Auth API, and the NEAR blockchain was a major accomplishment. We overcame technical challenges, integrated the necessary APIs and libraries, and built a reliable and secure authentication system that interacts seamlessly with the NEAR blockchain. Our technical implementation showcases our ability to work with complex technologies and deliver a functional solution.
These accomplishments collectively highlight our commitment to innovation, technical excellence, and user-centered design. We are proud of the progress we have made thus far and look forward to further refining and expanding the Mail-Auth System to make it even more impactful, stable, and user-friendly in the future.
What we learned
Understanding the NEAR Protocol: During the development process, we invested time and effort to gain a deep understanding of the NEAR protocol. We familiarized ourselves with the underlying technology, consensus mechanism, and the account model employed by NEAR. This understanding was crucial in designing an authentication system that seamlessly integrates with NEAR and leverages its capabilities.
Interacting with the NEAR Protocol: We delved into the NEAR-JS-API, a powerful library that enables developers to interact with the NEAR protocol. Through hands-on experience, we learned how to utilize the NEAR-JS-API to perform various tasks, such as creating user accounts, executing function calls on smart contracts, and managing transactional operations. This knowledge enabled us to build a robust backend layer that seamlessly integrates with the NEAR blockchain.
Relayers and Meta Transactions: Throughout our development process, we explored the concept of relayers and their significance in the context of blockchain transactions. We grasped the concept of meta transactions, which allow users to perform actions on the blockchain without directly paying for gas fees. By utilizing relayers and implementing NEP-366, we learned how to cover gas fees using tokens or stablecoins and ensure a smooth user experience without burdening users with gas fee management.
Practical Application of Blockchain Technology: Through our project, we gained hands-on experience in applying blockchain technology to real-world scenarios. We understood the potential of blockchain in enhancing authentication processes, reducing friction, and enabling seamless user onboarding experiences. Our practical application of blockchain technology in the form of Mail-Auth showcased the practicality and value it can bring to web3 applications.
Collaboration and Teamwork: As a team, we experienced the importance of collaboration and effective teamwork. We learned how to leverage each team member's strengths, communicate effectively, and coordinate efforts to achieve project goals. These skills were essential in successfully learning and implementing complex concepts related to the NEAR protocol and blockchain technology.
These learnings provided us with a solid foundation in understanding the NEAR protocol, interacting with blockchain networks, and leveraging blockchain technology to build innovative solutions. We are proud of the knowledge and expertise we acquired during the development process and are excited to continue applying these learnings in future projects to further contribute to the blockchain ecosystem.
What's next for Mail-Auth
After the successful development of the Mail-Auth System, our team has ambitious plans for its future. Our immediate goal is to apply for the MLH (Major League Hacking) Incubator program. This opportunity would provide us with invaluable resources and mentorship to further enhance our understanding of the NEAR protocol, acquire essential skills for startup development, and connect with talented individuals who can contribute to the growth and stability of our project.
In the next phase of our project, we aim to implement additional features and functionalities to make Mail-Auth even more comprehensive and developer-friendly. Some of the key areas we plan to focus on include:
Enhanced Security Measures: We will continue to prioritize the security of user accounts and interactions. This involves implementing robust encryption mechanisms, ensuring secure token handling, and conducting thorough vulnerability assessments. By strengthening security measures, we aim to instill confidence in users and promote the adoption of Mail-Auth as a trusted authentication solution within the NEAR ecosystem.
Expanded Integration Options: While currently integrated with Google Authentication, we recognize the need to support multiple authentication providers to cater to a wider range of user preferences. We plan to integrate additional authentication options, such as social media platforms or identity providers, allowing users to choose the method that best suits their needs.
Developer Tools and Documentation: To encourage adoption and ease the integration process for developers, we will focus on creating comprehensive documentation, developer guides, and SDKs. These resources will empower developers to seamlessly integrate the Mail-Auth API into their applications and leverage its capabilities. We will also establish a developer community, providing support and fostering collaboration among developers working with the Mail-Auth System.
Performance Optimization: As the user base grows, we will continually optimize the performance of the Mail-Auth System. This includes implementing caching mechanisms, load balancing strategies, and infrastructure scaling to ensure seamless and efficient authentication and interaction experiences, even during peak usage periods.
Community Engagement: We strongly believe in the power of community engagement and collaboration. We plan to organize developer meetups, hackathons, and workshops to educate and involve the community in shaping the future direction of Mail-Auth. By actively seeking feedback, ideas, and contributions from the community, we aim to create a system that meets the evolving needs of developers and users alike.
Through these planned enhancements, our vision is to establish Mail-Auth as a stable, feature-rich, and widely adopted authentication solution within the NEAR blockchain ecosystem. We are committed to continually improving and expanding the capabilities of Mail-Auth, ensuring it remains at the forefront of innovation and a valuable tool for developers building decentralized applications.
As we embark on this journey, we are excited about the possibilities that lie ahead and look forward to collaborating with the MLH Incubator, talented individuals, and the broader developer community to bring Mail-Auth to new heights of functionality, stability, and user satisfaction.
Built With
- googleauth
- javascript
- near
- near-js-api
- node.js
Log in or sign up for Devpost to join the conversation.