Learning Trade is a free, open-source platform that provides students with easy access to Previous Year Question Papers (PYQs) and study materials. Built for students, by students — helping you ace your exams! 🎓
Browse, preview, and download question papers organized by:
- 🏫 College
- 📚 Course
- 📅 Semester
- 📝 Exam Type (Finals, Sessionals)
| Feature | Description |
|---|---|
| 📄 PDF Preview | Preview papers directly in browser before downloading |
| 🔍 Easy Navigation | Intuitive folder-based browsing structure |
| 📱 Responsive Design | Works seamlessly on desktop, tablet, and mobile |
| ⚡ Fast Performance | Built with Astro for lightning-fast page loads |
| 🆓 100% Free | All resources available at no cost |
| 🔄 Auto Updates | Site rebuilds automatically 4 times daily |
| Technology | Purpose |
|---|---|
| Astro | Static site generator for content-driven websites |
| Svelte | Reactive UI component framework |
| UnoCSS | Utility-first CSS engine |
| DaisyUI | Beautiful component library |
| Astro DB | Built-in database for content management |
| Tabler Icons | Icon set via UnoCSS preset |
-
Clone the repository
git clone https://github.com/Keshav-writes-code/learning_trade.git cd learning_trade -
Install dependencies
bun install
-
Start the development server
bun run dev
-
Open in browser
Navigate to
http://localhost:4321/learning_trade
| Command | Description |
|---|---|
bun run dev |
Start development server with hot reload |
bun run build |
Build the production site |
bun run preview |
Preview the production build locally |
bun run db:push |
Push database schema changes |
bun run db:exec |
Execute database seed script |
learning_trade/
├── public/ # Static assets
├── src/
│ ├── components/ # Reusable UI components
│ ├── layouts/ # Page layouts
│ ├── pages/ # Route pages
│ │ └── pyq/ # PYQ browsing pages
│ ├── lib/ # Utility functions
│ └── types/ # TypeScript types
├── db/
│ ├── config.ts # Database schema
│ └── seed.ts # Database seed data
├── docs/
│ └── guides/ # Documentation guides
├── astro.config.mjs # Astro configuration
└── unocss.config.ts # UnoCSS configuration
Contributions are welcome! Here's how you can help:
See the detailed guide: How to Add New PYQ
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
If you find this project helpful, please consider:
- ⭐ Starring this repository
- 🐛 Reporting bugs via Issues
- 💡 Suggesting features or improvements
This project is open source and available for educational purposes.
Made with ❤️ for students everywhere
Happy studying! 📖✨