Production Check
How to confirm the latest changes are live
- Open the footer on the live site and confirm the version number matches the latest note here.
- Refresh the page once to ensure the newest frontend bundle is loaded.
- Check that data requests resolve through /api on the same domain.
- Added an in-app Release Notes page and linked it from the global footer together with a visible deployed version and Kanithan site link.
- Split local and production API behavior so localhost uses the local backend directly while production continues to use domain-based /api routing.
- Cleaned up local developer startup scripts so app-only, API-only, and full-stack startup are easier to use.
- Hardened admin security by removing hardcoded bootstrap credentials, requiring a production admin secret, upgrading password hashing to salted scrypt, and adding login throttling with temporary lockout.
- Added route-aware SEO metadata, canonical tags, Open Graph tags, Twitter cards, sitemap, and robots configuration for Tamil Nadu election discovery.
- Wired Google Analytics 4 with measurement ID G-MRMKKZKHJ9 and client-side page view tracking for Angular route navigation.
- Fixed the Kanithan header logo clipping in the navbar by widening the logo asset and improving layout sizing.
- Hardened admin auth and app shell behavior for SSR and prerender safety by guarding browser-only localStorage and document access.
- Enabled HTTPS for tnelection.kanithan.in with Let's Encrypt and automatic renewal on the AWS server.
- Updated the production domain configuration and confirmed HTTP to HTTPS redirect plus live /api proxy access.
- Refreshed the Kanithan-branded favicon, browser icon assets, and manifest metadata so the new identity shows correctly in tabs and installed app contexts.
- Added the initial AWS deployment documentation and server setup scripts to support one-command release rollout.
- Added Kanithan-branded TN Election Lens logo and favicon assets and wired them into the Angular app shell.
- Added AWS deployment tooling for first-time server setup, release packaging, Nginx static hosting, and PM2-managed API activation.
- Deployed the app to the EC2 server with Nginx serving the frontend and proxying /api to Node.
- Prepared the server for Let's Encrypt by installing certbot and enabling the renewal timer.
- Improved production route handling so dynamic Angular routes deploy cleanly.
- Added the 2026 Tamil Nadu Assembly candidate importer and persisted finalized alliance seat-sharing details in SQLite.
- Expanded alliance partner coverage for DMK+ and AIADMK+ so rollout data is stored and ready for release.
- Added clickable seat-count drilldowns that open constituency-wise contest reports for each party.
- Refined the alliance overview UI for cleaner alignment, clearer party rows, and symbol-first visual badges.
- Added local party symbol assets and improved the dashboard presentation so the party name remains prominent beside each symbol.
- Updated the API development script to use nodemon -L for more reliable local startup.