Skip to content

Repository files navigation

Project Vyoma Website

A modern, interactive website showcasing Project Vyoma - an aerospace engineering student project from RV College of Engineering, founded in 2007. The website features stunning animations, scroll-based interactions, and a comprehensive showcase of the team's achievements, projects, and history.

Project Vyoma Next.js React TypeScript

πŸš€ About Project Vyoma

Project Vyoma is the aero-design team of RV College of Engineering, established in 2007. We are one of the leading student projects in India, having won numerous national and international competitions and awards, including the prestigious NASA Systems Engineering Award in 2013.

Key Achievements

  • πŸ† NASA Systems Engineering Award (2013) - Best among 75 teams worldwide
  • 🎯 18+ Years of aerospace excellence
  • ✈️ 25+ Aircraft built and flown
  • πŸ… 20+ Awards won in competitions
  • 🌍 First Indian team to fly at AIAA DBF (2015)
  • πŸ“Š Top 20 at Boeing IIT National Aeromodelling Competition (2023)

✨ Features

  • Interactive Homepage: Scroll-based parallax animation with frame-by-frame aircraft visualization
  • Modern UI/UX: Beautiful, responsive design with smooth animations and transitions
  • Project Showcase: Detailed pages for RC Airplanes, VTOL systems, and RC Launcher projects
  • Team & Achievements: Comprehensive timeline and history of the project
  • Gallery: Visual showcase of aircraft, competitions, and events
  • Contact Form: Simple integrated form for inquiries
  • Sponsors & Sponsorship: Information about sponsors and sponsorship opportunities
  • Performance Optimized: Built with Next.js 15 for optimal performance and SEO

πŸ› οΈ Tech Stack

Core Framework

  • Next.js 15.5.10 - React framework with App Router
  • React 19.2.1 - UI library
  • TypeScript 5 - Type safety

Styling & UI

  • Tailwind CSS - Utility-first CSS framework
  • Radix UI - Accessible component primitives
  • Lucide React - Icon library
  • Tabler Icons - Additional icon set

Animations & Interactions

  • GSAP - Animation library
  • Motion - Motion library for React
  • Lenis - Smooth scrolling
  • Embla Carousel - Carousel component

Backend & Services

  • Cloudflare Workers (via @opennextjs/cloudflare) - Deployment platform

Development Tools

  • Genkit - AI development tools
  • Wrangler - Cloudflare Workers CLI
  • ESLint - Code linting

πŸ“‹ Prerequisites

Before you begin, ensure you have the following installed:

  • Node.js 18.x or higher
  • npm or yarn package manager
  • Git for version control

πŸš€ Getting Started

1. Clone the Repository

git clone <repository-url>
cd vyoma-website

2. Install Dependencies

npm install
# or
yarn install

3. Environment Variables

Create a .env.local file in the root directory if you need to add any custom environment variables.

4. Run Development Server

npm run dev
# or
yarn dev

The website will be available at http://localhost:9002

πŸ“œ Available Scripts

  • npm run dev - Start development server with Turbopack on port 9002
  • npm run build - Standard Next.js production build
  • npm run build:cloudflare - Build the app using the @opennextjs/cloudflare adapter
  • npm run preview - Build and preview locally on the Cloudflare Workers runtime
  • npm run deploy - Build and deploy to Cloudflare Workers using OpenNext
  • npm run upload - Build and upload a new version to Cloudflare (for gradual deployments)
  • npm run cf-typegen - Generate cloudflare-env.d.ts types for Wrangler bindings
  • npm run start - Start the Next.js production server (Node)
  • npm run lint - Run ESLint
  • npm run typecheck - Run TypeScript type checking
  • npm run genkit:dev - Start Genkit development server
  • npm run genkit:watch - Start Genkit with watch mode

πŸ“ Project Structure

vyoma-website/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/                    # Next.js App Router pages
β”‚   β”‚   β”œβ”€β”€ about/             # About page
β”‚   β”‚   β”œβ”€β”€ achievements/      # Achievements page
β”‚   β”‚   β”œβ”€β”€ contact/           # Contact page
β”‚   β”‚   β”œβ”€β”€ gallery/           # Gallery page
β”‚   β”‚   β”œβ”€β”€ projects/          # Projects pages
β”‚   β”‚   β”‚   β”œβ”€β”€ rc-airplanes/  # RC Airplanes project
β”‚   β”‚   β”‚   β”œβ”€β”€ vtol/          # VTOL project
β”‚   β”‚   β”‚   └── launcher/      # Launcher project
β”‚   β”‚   β”œβ”€β”€ sponsors/          # Sponsors page
β”‚   β”‚   β”œβ”€β”€ sponsorship/       # Sponsorship page
β”‚   β”‚   β”œβ”€β”€ team/              # Team page
β”‚   β”‚   β”œβ”€β”€ api/               # API routes
β”‚   β”‚   β”œβ”€β”€ config.ts          # App configuration
β”‚   β”‚   β”œβ”€β”€ globals.css        # Global styles
β”‚   β”‚   β”œβ”€β”€ layout.tsx         # Root layout
β”‚   β”‚   └── page.tsx           # Homepage
β”‚   β”œβ”€β”€ components/            # React components
β”‚   β”‚   β”œβ”€β”€ core/              # Core components
β”‚   β”‚   β”œβ”€β”€ sections/          # Page sections
β”‚   β”‚   └── ui/                # UI components
β”‚   β”œβ”€β”€ hooks/                 # Custom React hooks
β”‚   └── lib/                   # Utility libraries
β”‚       └── utils.ts           # Utility functions
β”œβ”€β”€ public/                    # Static assets
β”‚   └── images/                # Image assets
β”œβ”€β”€ components.json            # shadcn/ui configuration
β”œβ”€β”€ next.config.ts             # Next.js configuration
β”œβ”€β”€ tailwind.config.ts         # Tailwind CSS configuration
└── package.json               # Dependencies

🎨 Key Features Explained

Interactive Homepage

The homepage features a scroll-based parallax animation that displays aircraft frames based on scroll position, creating an immersive experience.

Project Pages

  • RC Airplanes: Showcase of radio-controlled model airplanes
  • VTOL: Fixed-wing vertical takeoff and landing aircraft
  • Launcher: RC airplane launching system

Animations

The website uses multiple animation libraries to create smooth, engaging interactions:

  • Scroll-triggered animations
  • Particle effects
  • Custom cursor
  • Loading screens
  • Smooth scrolling

🚒 Deployment

Cloudflare Workers (via OpenNext)

The project is configured to deploy using the official @opennextjs/cloudflare adapter:

npm run deploy

This will:

  1. Run the standard next build
  2. Transform the build using opennextjs-cloudflare build
  3. Deploy the Worker and static assets to Cloudflare via Wrangler

Requirements

  • A Cloudflare account and Workers project
  • Wrangler CLI authenticated (npx wrangler login)

Local preview on the Workers runtime

npm run preview

This builds the app and serves it locally using the same runtime as production (Cloudflare Workers).

Other Platforms

The application can also be deployed to:

  • Vercel (recommended for Next.js)
  • Netlify
  • Any Node.js hosting platform

🀝 Contributing

Contributions are welcome! Please follow these steps:

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

πŸ“ License

This project is private and proprietary to Project Vyoma, RV College of Engineering.

πŸ“ž Contact

For inquiries, sponsorship opportunities, or collaboration, please visit the Contact page on the website.

πŸ™ Acknowledgments

  • RV College of Engineering for continuous support
  • All sponsors and supporters
  • Team members past and present
  • Competition organizers (SAE, AIAA, Boeing, etc.)

Project Vyoma - Pioneering excellence in aerospace engineering since 2007 ✈️

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages