Inspiration
Our inspiration for this project stems from a desire to educate the younger demographic about the crucial importance of budgeting and managing money responsibly. In today's world, where consumer culture is pervasive and financial literacy is not always prioritized in traditional education systems, it is vital to equip children with the skills and knowledge they need to navigate their financial futures successfully.
Centsible was born from observing a concerning trend: many kids perceive money as an infinite resource. This misconception can lead to poor financial habits that persist into adulthood, resulting in difficulties managing personal finances, accumulating savings, and making informed economic decisions.
What it does?
The Centsible project is designed to be an engaging, comprehensive platform that provides children with the tools and knowledge they need to understand and manage their finances effectively. Here’s a detailed look at its core features:
Multiple Tabs for Different Aspects of Finance: The platform is structured with multiple interactive tabs, each dedicated to a specific aspect of personal finance. This organization helps kids to navigate through different financial topics systematically and allows them to focus on one concept at a time.
Effective Budgeting Practice: One of the key tabs focuses on budgeting. Here, kids learn how to allocate their virtual income towards various expenses, such as savings, needs, and wants. This tab includes interactive budgeting tools that simulate real-life scenarios, enabling kids to practice making decisions about spending and saving. They receive instant feedback on their choices, helping them understand the consequences of poor budgeting and the benefits of good financial planning.
Stock Market Simulator: To introduce kids to investing, the platform features a stock market simulator. This tab allows children to learn about stocks, market fluctuations, and investment strategies in a risk-free environment. They can track virtual portfolios, understand how the stock market works, and see the effects of their investment choices over time. This hands-on approach demystifies the stock market and encourages an early interest in investing.
Authorized Payment Card: Centsible includes a feature where kids can use a virtual payment card. However, this card requires parental authorization for transactions to go through. This setup teaches children the importance of accountability and responsible spending. Parents can monitor and approve or deny transactions, providing a controlled environment where kids can learn about money management without the risk of overspending.
How we built it?
Our project, Centsible, leverages a combination of cutting-edge technologies and platforms to create a robust, interactive, and secure financial education tool for kids. Here’s a detailed look at the technologies we used and how they come together:
Backend Development with NEAR Platform:
- For the backend, we chose the NEAR platform, which is a decentralized application platform built on blockchain technology. NEAR allows us to create scalable, secure, and transparent applications.
- Blockchain Integration: By using NEAR, we are able to implement blockchain technology to ensure the integrity and security of financial transactions within the platform. This is particularly useful for features like the authorized payment card, where transaction records need to be immutable and trustworthy.
- Smart Contracts: We utilize smart contracts on the NEAR blockchain to automate various aspects of the platform, such as tracking spending habits, rewarding achievements, and managing virtual portfolios in the stock market simulator.
Frontend Development with React and Next.js:
- Our frontend is built using React, a powerful JavaScript library for building user interfaces. React allows us to create a dynamic and responsive user experience that is both engaging and easy to navigate.
- Component-Based Architecture: React’s component-based architecture enables us to build reusable UI components, making development more efficient and the interface more consistent.
- Next.js Framework: We chose Next.js to enhance our React application by providing server-side rendering and static site generation. This improves the performance of our platform and ensures a smooth user experience.
- User Interface Design: With React and Next.js, we are able to create a clean, intuitive, and visually appealing interface that makes financial learning enjoyable for kids.
Node.js for Backend Services:
- Node.js is used to build backend services that handle various operations, such as interacting with the NEAR blockchain, managing user data, and processing transactions.
- API Development: We develop RESTful APIs with Node.js to facilitate communication between the frontend and backend. These APIs handle requests from the frontend, perform necessary computations or data retrieval, and send back responses.
- Real-Time Functionality: Node.js supports real-time functionality, which is crucial for features like the stock market simulator, where live data and instant feedback are essential.
HTML and CSS for Markup and Styling:
- While React and Next.js handle much of the dynamic content, HTML and CSS are used for the foundational structure and styling of the web pages.
- Responsive Design: We ensure that all elements of the platform are responsive and accessible on various devices, providing a seamless experience whether kids are using a computer, tablet, or smartphone.
Integration and Deployment:
- The integration of these technologies is streamlined to ensure that all components work together seamlessly. We use version control systems like Git to manage our codebase and facilitate collaboration among team members.
- Continuous Deployment: We implement continuous deployment practices to ensure that updates and new features are rolled out smoothly without disrupting the user experience. This involves automated testing, build processes, and deployment pipelines.
Challenges we ran into?
For our project, we all tried learning bits of development which none of us were familiar with, so we ran into a good few challenges trying to learn something new. In terms of the backend, setting up and learning about the functionality of blockchain was a difficult endeavour. There was a lot to learn about in very little time which lead to a few more time crunches, working and problem solving using NEAR was a very enjoyable process though. Front-end wise, learning react was a bit more challenging, and the learning curve was defintely steeper than expected, but over time we ironed out issues. The most valuable thing to come out of the process was the knowledge we acquired.
Accomplishments that we are proud of
Building Dynamic Web Applications: One of our proudest accomplishments after diving into frontend development with HTML, CSS, JavaScript, and React was the ability to build dynamic and responsive web applications. Being able to create user-friendly interfaces and interactive components from scratch was incredibly rewarding.
Mastering Frontend Technologies: Learning the ins and outs of frontend technologies allowed us to create visually appealing and functional websites. Whether it was styling layouts with CSS, adding interactivity with JavaScript, or building reusable components with React, each skill mastered felt like a significant achievement.
Understanding Backend Development with Near: Delving into backend development using Near was a game-changer. We gained a solid understanding of how to build smart contracts on the Near blockchain platform. This opened up a whole new world of possibilities for creating secure and scalable web applications.
Launching Real-World Projects: One of our proudest moments was launching real-world projects that leveraged both frontend and backend technologies. Whether it was a personal portfolio site, a dApp on the Near blockchain, or a collaborative project with others, seeing my creations come to life and being used by others was incredibly fulfilling.
What we learned
Node.js:
- We delved into Node.js, a powerful JavaScript runtime that enabled us to build scalable and efficient backend services. We learned how to set up a Node.js server, handle HTTP requests and responses, and create APIs that interact with our frontend.
- Real-Time Functionality: We also explored how Node.js can support real-time features, which was crucial for our stock market simulator, ensuring that live data and updates are efficiently handled.
React:
- React was at the heart of our frontend development. We learned how to create dynamic and interactive user interfaces using React’s component-based architecture.
- State Management: We delved into managing state within our application, using hooks and context to ensure that our UI remained responsive and consistent.
- Next.js: We also explored Next.js, which provided us with server-side rendering capabilities and improved our app’s performance through static site generation.
Avalanche and Blockchains:
- Avalanche is a platform for creating decentralized applications and custom blockchain networks. We learned about its consensus protocol and how to deploy smart contracts on it.
- Blockchain Fundamentals: Our exploration included understanding the basics of blockchain technology, such as decentralized ledgers, consensus mechanisms, and smart contracts. This knowledge was crucial for integrating blockchain into our platform to ensure security and transparency.
Frontend HTML Coding:
- In addition to React, we reinforced our knowledge of HTML and CSS, which are fundamental for structuring and styling web pages.
- Responsive Design: We learned how to create responsive designs that adapt to various screen sizes and devices, ensuring a seamless user experience.
Backend Blockchains:
- We gained hands-on experience with backend blockchain development, particularly using the NEAR platform.
- Smart Contracts: We learned how to write and deploy smart contracts, which are self-executing contracts with the terms of the agreement directly written into code. This was key to automating various features of our platform, such as tracking transactions and rewarding achievements.
Creating a Unique Idea:
- We honed our skills in ideation and innovation, working as a team to brainstorm and refine a unique project concept. This involved identifying a real-world problem, researching existing solutions, and developing a novel approach that leverages modern technology.
Team Collaboration:
- Working with my group mates was an essential part of this learning experience. We learned the importance of effective communication, task delegation, and collaboration.
- Version Control: We used version control systems like Git to manage our codebase, track changes, and facilitate seamless collaboration among team members. This was crucial for maintaining a coherent and organized development process.
what's next
The completion of our project, Centsible, marks just the beginning of a journey filled with exciting possibilities and opportunities for growth. With the skills and knowledge we have gained in backend blockchain technology and frontend development using React, we are well-positioned to explore a multitude of avenues for future projects. Here’s how we envision leveraging our newfound expertise:
Exploring New Ideas and Innovations:
- Armed with a deeper understanding of blockchain technology and its applications, we can brainstorm and explore new project ideas that leverage the power of decentralized networks. These could range from financial applications to supply chain management solutions and beyond.
Refining and Enhancing Centsible:
- While Centsible represents a significant achievement, there is always room for improvement. With more time and resources at our disposal, we can further polish and refine our project to create an even more robust and user-friendly platform. This could involve enhancing existing features, adding new functionalities, and optimizing performance for a seamless user experience.
Building More Advanced Smart Contracts:
- As we delve deeper into blockchain development, we can expand our repertoire of smart contracts to include more advanced functionalities. This could include complex financial instruments, decentralized governance systems, and innovative mechanisms for incentivizing user participation.
Scaling and Deploying on Mainnet:
- While our project was developed on a testnet environment, the next step would be to scale and deploy it on a mainnet for real-world usage. This involves ensuring scalability, security, and regulatory compliance, as well as addressing any challenges that may arise during deployment.
Collaborating with Industry Partners:
- With our newfound expertise, we have the opportunity to collaborate with industry partners, startups, and organizations working in the blockchain space. By pooling our resources and knowledge, we can tackle larger-scale projects and bring innovative solutions to market.
Continued Learning and Skill Development:
- The journey doesn’t end here. We will continue to deepen our understanding of blockchain technology, frontend development, and related fields through ongoing learning and skill development. This could involve participating in workshops, attending conferences, and pursuing certifications in relevant areas