Skip to content

Latest commit

Β 

History

History
163 lines (110 loc) Β· 5.3 KB

File metadata and controls

163 lines (110 loc) Β· 5.3 KB

πŸ“š Learning Trade

Free Previous Year Question Papers & Study Materials

Astro Svelte DaisyUI UnoCSS

🌐 Live Site β€’ πŸ“– Docs


🎯 About

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)

✨ Features

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

πŸ› οΈ Tech Stack

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

πŸš€ Getting Started

Prerequisites

Installation

  1. Clone the repository

    git clone https://github.com/Keshav-writes-code/learning_trade.git
    cd learning_trade
  2. Install dependencies

    bun install
  3. Start the development server

    bun run dev
  4. Open in browser

    Navigate to http://localhost:4321/learning_trade

Available Commands

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

πŸ“ Project Structure

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

🀝 Contributing

Contributions are welcome! Here's how you can help:

Adding New PYQs

See the detailed guide: How to Add New PYQ

Code Contributions

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ž Support

If you find this project helpful, please consider:

  • ⭐ Starring this repository
  • πŸ› Reporting bugs via Issues
  • πŸ’‘ Suggesting features or improvements

πŸ“œ License

This project is open source and available for educational purposes.


Made with ❀️ for students everywhere

Happy studying! πŸ“–βœ¨