A central hub for discovering and engaging with technology communities and events across Tamil Nadu. Our aim is to foster collaboration, knowledge sharing, and growth within the regional tech and dev ecosystem.
tamilNadu.tech serves as a bridge connecting various tech communities, events, and enthusiasts throughout Tamil Nadu. Whether you're a student, professional, or tech enthusiast, this platform helps you:
- Discover upcoming tech events, meetups, and workshops
- Connect with local tech communities
- Stay updated with the latest happenings in Tamil Nadu's tech scene
- Contribute to the growing tech ecosystem
Have an upcoming tech event in Tamil Nadu? Adding it is simple! Check out our event submission guide in the Contributing Guide. It's a straightforward process using a JSON template - no complex coding required!
- Support Local Tech Growth: Help build a stronger tech community in Tamil Nadu
- Easy to Contribute: Simple JSON-based event submission process
- Open Source: Your contributions help make the platform better for everyone
- Network: Connect with other contributors and community leaders
- Learn: Great opportunity to practice with modern web technologies
-
Fork the repository
-
Clone the repository:
git clone https://github.com/your-username/communities cd Communities -
Install dependencies:
pnpm install
-
Set up environment variables:
cp .env.example .env
(Optional) Generate VAPID keys for push notifications:
Note: Push notifications are disabled in non-production environments. VAPID keys are only required when
NODE_ENV=production.pnpx web-push generate-vapid-keys
Update
.envwith generated keys and other values:NEXT_PUBLIC_VAPID_PUBLIC_KEY- (Optional) Public key (used in browser)VAPID_PUBLIC_KEY- (Optional) Public key (server-side)VAPID_PRIVATE_KEY- (Optional) Private key (server-side)GITHUB_TOKEN- (Optional) For push notification subscription managementUMAMI_ANALYTICS_ID- (Optional) Analytics tracking
-
Start the development server:
pnpm dev
Visit http://localhost:3000 to see the application.
- Next.js 15 - React framework with App Router
- React 19 - UI library
- TypeScript - Type safety
- Tailwind CSS - Styling
- Phosphor Icons - Icons
- Web Push - Push notifications
- Umami Analytics - Privacy-friendly analytics
src/
├── app/
│ ├── Communities/ # Communities page
│ ├── api/ # API routes (subscriptions)
│ ├── archive/ # Past events
│ └── rss/ # RSS feed
├── components/ # React components
├── data/ # Events & communities JSON
├── lib/ # Utilities & web push
└── types/ # TypeScript types
We welcome contributions from everyone! Check out our Contributing Guide to get started. Keep an eye on the issues tab for a mix of beginner friendly issues aswell as game changing issues that you can help the community by contributing.
Pointers to keep in mind is:
- if its an UI change, please include Output image
- if its a bug fix or a minor code change, please describe what your change does.
- if its a feature request, please provide a detailed description and if UI feature, please do provide a mockup.
- if updating events.json, please make sure you add the hostname for the image to next.config.ts file in the root directory.
This platform supports web push notifications for event updates:
- Users can subscribe to notifications
- Subscriptions are stored in GitHub Secrets via repository dispatch
- Requires VAPID keys configuration
- See PUSH_NOTIFICATIONS_SETUP.md for detailed setup
Go put a star 😤
This project is licensed under the terms of the GPL 3.0 license.