gita-svelte-assignment Svelte Themes

Gita Svelte Assignment

Bhagavad Gita Web Application

A modern, responsive web application for exploring the Bhagavad Gita, built with SvelteKit and styled with Tailwind CSS.

šŸ“ Project Structure

frontend/
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ lib/
│   │   ā”œā”€ā”€ assets/          # Static assets (images, icons)
│   │   ā”œā”€ā”€ components/      # Reusable Svelte components
│   │   └── index.js         # Library exports
│   ā”œā”€ā”€ routes/
│   │   ā”œā”€ā”€ api/
│   │   │   └── gita/[chapter]/+server.js  # API endpoint for chapter data
│   │   ā”œā”€ā”€ gita/
│   │   │   ā”œā”€ā”€ +page.svelte               # Chapters overview page
│   │   │   └── [chapter]/+page.svelte     # Individual chapter page
│   │   ā”œā”€ā”€ login/+page.svelte             # User login
│   │   ā”œā”€ā”€ register/+page.svelte          # User registration
│   │   ā”œā”€ā”€ dashboard/+page.svelte         # User dashboard
│   │   ā”œā”€ā”€ contact/+page.svelte           # Contact page
│   │   └── admin/+page.svelte             # Admin panel
│   ā”œā”€ā”€ app.css            # Global styles and Tailwind imports
│   ā”œā”€ā”€ app.d.ts           # TypeScript declarations
│   └── app.html           # Main HTML template
ā”œā”€ā”€ static/                # Static files (favicon, robots.txt)
ā”œā”€ā”€ package.json           # Dependencies and scripts
ā”œā”€ā”€ svelte.config.js       # SvelteKit configuration
ā”œā”€ā”€ vite.config.js         # Vite build configuration
ā”œā”€ā”€ jsconfig.json          # JavaScript/TypeScript config
└── tailwind.config.js     # Tailwind CSS configuration

🌟 Features

  • Interactive Chapter Display: Browse all 18 chapters of the Bhagavad Gita in an elegant diamond-grid layout
  • User Authentication: Complete login, registration, and profile management system
  • Dashboard: Personal dashboard for users to track their progress
  • Contact Page: Get in touch with the application maintainers
  • Admin Panel: Administrative features for content management
  • Responsive Design: Optimized for desktop, tablet, and mobile devices
  • Modern UI: Clean, spiritual-themed design with smooth animations

šŸš€ Tech Stack

  • Framework: SvelteKit 2.48.5
  • Styling: Tailwind CSS 4.1.17
  • Build Tool: Vite 7.2.2
  • Language: TypeScript 5.9.3
  • Linting: ESLint 9.39.1 with Prettier 3.6.2
  • Package Manager: npm
  • Additional Tools: Svelte 5.43.8, Svelte Check 4.3.4

šŸ”— API Integration

The application integrates with external APIs for Bhagavad Gita content:

  • Sanskrit API: https://sanskrit.ie/api/geeta.php - Provides chapter and verse data
  • Endpoint: /api/gita/[chapter] - Internal API route that proxies requests to the external API
  • Data Format: JSON responses containing Sanskrit text, translations, and commentaries

šŸ“‹ Prerequisites

  • Node.js (version 18 or higher)
  • npm or yarn

šŸ› ļø Installation & Setup

  1. Clone the repository:
git clone <repository-url>
cd vows-vibe-work-svelte
  1. Navigate to the frontend directory:
cd frontend
  1. Install dependencies:
npm install
  1. Start the development server:
npm run dev
  1. Open your browser and navigate to http://localhost:5173

The application will automatically reload when you make changes to the code.

šŸ“œ Available Scripts

  • npm run dev - Start development server
  • npm run build - Build for production
  • npm run preview - Preview production build
  • npm run check - Type checking and linting
  • npm run check:watch - Watch mode for type checking
  • npm run format - Format code with Prettier
  • npm run lint - Run ESLint and Prettier checks

šŸŽØ Design Features

  • Spiritual Theme: Warm color palette inspired by traditional Indian aesthetics
  • Diamond Grid Layout: Unique presentation of Gita chapters
  • Smooth Animations: Fade-in effects and hover transitions
  • Typography: Serif fonts for headings, clean sans-serif for body text
  • Accessibility: Proper contrast ratios and semantic HTML

šŸ¤ Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature-name
  3. Make your changes and run tests: npm run check
  4. Format your code: npm run format
  5. Commit your changes: git commit -am 'Add some feature'
  6. Push to the branch: git push origin feature/your-feature-name
  7. Submit a pull request

Top categories

Loading Svelte Themes