Enigma WebApp is the official portfolio and interactive platform for the AI/ML Club at IIIT Kottayam. The application highlights the club's vision, team, events, and patrons while providing a seamless interface for admins, members, and users to interact with dynamic content.
- Home: Overview of the club's activities and mission.
- Team: Meet the brilliant minds behind the club.
- Patrons: Showcase of the club's supporters and contributors.
- Events: A section dedicated to past and upcoming events.
- Contact: Reach out to us with ease.
-
Admin Dashboard:
- Add and manage members.
- Organize and track events.
- Issue certificates to participants.
-
Member Dashboard:
- Edit profile and details.
- Manage events and schedules.
- Contribute blogs to the webapp.
-
User Dashboard:
- Personal profile management.
- Manage and publish personal blogs.
- Certificate Verifier: Verify event certificates using unique IDs.
- Newsletter System: Subscribe to AI/ML research updates and findings.
- Dynamic Blog System: Members and users can add blogs by topic.
- Framework: Built with Next.JS.
- Styling: Responsive design powered by CSS.
- Storage: Cloud storage integrated with Firebase.
- Hosting: Deployed on the local hosting solution provided by IIIT Kottayam.
Located in the Scripts/ folder, this Python-based project:
- Scrapes the web for AI/ML research and new findings.
- Automates the creation of newsletters for club members.
- Detailed documentation for this module is provided in its README.
├───app
│ ├───blog # Blog system
│ ├───certificate_verifier # Certificate verification by ID
│ ├───components/ui # Reusable UI components
│ ├───contact # Contact page logic
│ ├───dashboard # Admin dashboard
│ ├───data # Data-related utilities
│ ├───editor # Rich-text editor components
│ ├───events # Events management logic
│ ├───firebase # Firebase configurations
│ ├───home # Home page
│ ├───login # Login functionality
│ ├───members # Member-specific components
│ ├───newsletter # Newsletter subscription system
│ ├───people # Additional content for team or patrons
│ ├───rspv # RSVP functionality for events
│ ├───signup # Signup logic
│ ├───subscribe # Subscription flow
│ ├───teams # Teams showcase
│ ├───unsubscribe # Unsubscribe functionality
│ ├───users # User components
│ ├───user_dashboard # User dashboard logic
│ └───utils # General utilities
├───public
│ ├───events # Event assets
│ ├───img # Images for the site
│ ├───patrons # Patron images and resources
│ └───random # Miscellaneous public assets
└───Scripts
└───__pycache__ # Python script cache
- Clone the repository.
- Install dependencies:
npm install
- Start the development server:
npm run dev
- Build the optimized application:
npm run build
- Start the server:
By default, the app runs on port 8080.
npm start
Access the webapp at: https://enigma.iiitkottayam.ac.in/
We welcome contributions from club members and the wider community. Follow these steps:
- Fork the repository.
- Create a branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add your message here" - Push to the branch:
git push origin feature-name
- Open a Pull Request.
This project is licensed under the MIT License.
Enjoy exploring Enigma WebApp! 🚀