-
-
Sign in Page
-
Sign Up Page
-
Quiz Page
-
Uploaded Notes Page
-
Create a study plan through the plane ticket (Second Half)
-
AI Summary for the materials that the users have uploaded
-
Flashcard Page
-
Quiz History Page
-
Create a study plan through the plane ticket (First Half)
-
Dashboard (Lower Part)
-
Dashboard (Upper Part)
-
Fligh ticket place where users can click complete after they finish they study plan
-
AI explaining the answer to different age group
-
Sepolia Cryptocurrecny Transaction
-
AI Companion
-
Badge Page for users and see the NFT they get
Inspiration
We were inspired by a common student pain point: students spend too much time organizing lecture materials and not enough time actually learning. As Arbitrary Programmers, we wanted to build a system that converts raw lecture content into active study workflows while keeping learners motivated through visible progress and rewards.
Our guiding principle was:
$$ \text{Effective Learning} \propto \frac{\text{Practice} \times \text{Consistency}}{\text{Friction}} $$
So our goal became clear: increase practice and consistency while reducing friction.
What it does
ScholarFly allows users to upload lecture content (notes, audio, or video) and automatically generates:
- Transcripts
- AI summaries
- Quizzes
- Flashcards
- Flight-ticket checkpoints
It also introduces gamification and Web3 rewards:
- Complete a ticket $\rightarrow$ mint an NFT badge
- Receive SFT token rewards, which could be used for discounting on models
How we built it
We built ScholarFly using:
- Next.js + React + Tailwind CSS for frontend
- Next.js API routes for backend logic
- PostgreSQL for authentication, database, and storage
- Azure OpenAI + AssemblyAI for AI generation and transcription
- Ethers + Solidity smart contracts on Sepolia for NFT and ERC-20 rewards
We designed a shared authenticated app shell and connected wallet-based reward flows directly to learning milestones.
Challenges we ran into
- Hydration and client-render mismatches in dynamic UI components
- Stabilising AI output quality across different ages and learning styles
- Making NFT metadata reliably visible after mint (token ID/log parsing, metadata handling)
- Managing wallet/network constraints (Sepolia switching, RPC/env setup, minter permissions)
- Keeping UX consistent while shipping many features quickly
Accomplishments that we're proud of
- Built an end-to-end pipeline: upload lecture $\rightarrow$ generate study assets $\rightarrow$ reward completion
- Delivered a reusable ticket/checkpoint system with session history and clickable flows
- Implemented live badge + token reward mechanics tied to real learning completion
- Added global SFT balance visibility across authenticated experiences
- Maintained coherent product identity and UX through rapid iterations
What we learned
- Prompt engineering can matter as much as model selection for educational quality
- Small UX details (loading states, clear statuses, simple navigation) strongly improve user trust
- Web3 integration reliability depends on operational details, not only contract code
- Modular architecture (shared utilities, shared shell, clear API boundaries) speeds iteration
What's next for Arbitrary Programmers
- Personalize learning paths further with stronger mastery modeling
- Expand badge/token utility (levels, streak bonuses, redeemable perks)
- Improve on-chain metadata hosting for marketplace-grade NFT rendering
- Add teacher/classroom analytics and collaboration features
- Move from Sepolia prototype toward production-ready multi-network deployment
Built With
- assemblyai
- azure
- css
- erc-20
- erc-721
- ethers.js
- javascript
- lucide
- metamask
- next
- node.js
- postgresql
- react
- rls
- sepolia
- shadcn/ui
- solidity
- sql
- typescript
Log in or sign up for Devpost to join the conversation.