Inspiration
One of our members was looking for grants for herself and for scholarships (all of us have done this) and found it hard and time consuming to get even a handful of them worth applying to. Also hearing about scholarships but missing the deadline.
What it does
Scrapes the internet using LLMs (Claude right now) to find scholarships and then the data is parsed and formatted for our data.
How we built it
Frontend: React, TanStack Router, TanStack Query, Tailwind CSS, shadcn-style UI primitives, and Base UI Backend: Bun, Hono, Zod, and Anthropic's SDK for LLM-powered grant workflows Data: Drizzle ORM with a Turso SQLite Database and a LibSQL Layer Shared packages: reusable TypeScript libraries for database access and utilities
Challenges we ran into
Prompt engineering Getting an LLM to output a specific data format was difficult but we were able to get most required data in a consistent format, while parsing the rest to a consistent manner
Database Design Designing the database was difficult to make it extensible and easy to use.
Accomplishments that we're proud of
The search tool works very well and returns all data matching the parameters
What we learned
Prompt engineering is actually pretty hard. Especially in order to get consistent data.
Designing an immutable database takes a good amount of effort and planning
What's next for Grant Genius
Adding features such as enhanced web scraping, more search options (geographic location), and accounts for users to save scholarships and grants
Built With
- and-base-ui-backend:-bun
- bun
- claude
- drizzle
- frontend:-react
- hono
- libsql
- orm
- shadcn-style-ui-primitives
- sqlite
- tailwind-css
- tanstack-query
- tanstack-router
- turso
- typescript
- zod
Log in or sign up for Devpost to join the conversation.