Official website for the Association of Mechanical Engineering Students (AMES), NITK Surathkal
This repository contains the source code for the AMES NITK website, a modern React-based web application showcasing our organization, events, projects, and team. The website serves as the central hub for mechanical engineering students at NITK, providing information about our activities, alumni network, and ways to get involved.
- Frontend: React.js
- Styling: CSS3 with custom animations
- Routing: React Router
- Build Tool: Create React App
- Production Server: Nginx + PM2 on Ubuntu
- SSL: Let's Encrypt (Certbot)
This project was developed and deployed by a collaborative team of three:
- @adarshs14193 - Frontend Development & Design
- @Ashutoshgupta-26 - Frontend Development & Features
- @PrudhviNallagatla - Production Deployment & DevOps
- Node.js (v14 or higher)
- npm or yarn
-
Clone the repository:
git clone https://github.com/ames-nitk/AMES-Website.git cd AMES-Website -
Install dependencies:
npm install
-
Start the development server:
npm start
-
Open http://localhost:3000 in your browser
npm start- Runs the app in development modenpm run build- Builds the app for productionnpm test- Launches the test runnernpm run eject- Ejects from Create React App (one-way operation)
For detailed production deployment instructions (Ubuntu + Nginx + PM2 + HTTPS), see production_guide.md.
- Install dependencies:
sudo bash all_dependencies.sh - Setup server:
sudo bash server_setup.sh - Enable SSL:
sudo bash ssl_certbot.sh - Manual Nginx fix (required after SSL setup - see production guide)
AMES-Website/
├── public/ # Static files
├── src/
│ ├── animation/ # Custom animation hooks
│ ├── assets/ # Images and media
│ ├── components/ # React components
│ │ ├── About/
│ │ ├── Contact/
│ │ ├── Events/
│ │ ├── Footer/
│ │ ├── HomePage/
│ │ ├── Navbar/
│ │ └── ...
│ ├── data/ # Static data (alumni, events, projects)
│ ├── Pages/ # Page components
│ ├── App.js # Main app component
│ ├── routes.js # Route configuration
│ └── index.js # Entry point
├── nginx.conf # Nginx configuration template
├── server_setup.sh # Production setup script
├── ssl_certbot.sh # SSL certificate setup
└── package.json # Dependencies
We welcome contributions from AMES members and the NITK community!
- Fork the repository
- Create a feature branch:
git checkout -b feature-name - Commit your changes:
git commit -am 'Add new feature' - Push to the branch:
git push origin feature-name - Submit a pull request
- Follow the existing code style
- Test your changes locally before submitting
- Update documentation if needed
- Keep commits atomic and descriptive
This project is maintained by AMES, NITK Surathkal.
- Website: ames.nitk.ac.in
- Email: amesnitk@gmail.com
- Organization: Association of Mechanical Engineering Students (AMES), NITK Surathkal
- CCC NITK for hosting and support
- All AMES members who contributed content and feedback
- The open-source community for the tools and libraries used
Maintained with ❤️ by AMES Web Team