GraphTulipYaadmaanReports

Project Updates

Stay informed about the latest changes, improvements, and technical updates to the Daadaar platform.

Feb8

Sunday, February 8th, 2026

2 Changes
  • Parameterize media proxy worker origin tag via env var

  • Replace hardcoded S3 URLs with CDN-aware getS3PublicUrl()

Feb7

Saturday, February 7th, 2026

11 Changes
  • Resolve TypeScript errors and lint issues for CI pipeline

  • Fix print profiles listing, AI art style samples, and expand E2E suite

  • Resolve Functions 503, graph.ts s3Key migration, and add E2E test suite

  • Use groupadd/useradd for non-root user in bun-based images

  • Comprehensive security hardening from audit

  • Harden storage security and eliminate shared key auth

  • Enable Private Link for Azure Functions

  • Handle full URLs in generatePresignedGetUrl and memorial controllers

  • Remove hardcoded URL defaults, fix SSR API_URL

  • Add custom domain TF resource, fix Terraform drift, deploy media Worker

  • Complete stgx E2E testing and sync Terraform with Azure state

Feb6

Friday, February 6th, 2026

4 Changes
  • Resolve TS errors in backend tests, handle string mediaId, and improve a11y in translation step

  • Fix Daadbaan media linking, timeline atomicity, and translation step i18n/a11y

  • Fix daadbaan legacy transferred status translation crash

  • Resolve lint errors and improve type safety

Feb5

Thursday, February 5th, 2026

2 Changes
  • Complete staging deployment and production foundation setup

  • Daadbaan backend integration with frontend

Feb4

Wednesday, February 4th, 2026

6 Changes
  • Replace deprecated metric with enabled_metric in diagnostic settings

  • Localize submit form and critical cases banner

  • Resolve linting errors in Daadbaan controllers

  • Complete backend infrastructure for detainee registry

  • Implement keyboard navigation in search bar

  • Complete localization and refactoring

Feb3

Tuesday, February 3rd, 2026

2 Changes
  • Resolve exhaustive-deps warning

  • UI polish and localization

Feb2

Monday, February 2nd, 2026

4 Changes
  • Daadbaan ui refinements, animations, and bug fixes

  • Prevent SSRF in SEO generator by adding strict host validation and fetch timeouts, and update DB pool size parsing to `Number.parseInt`.

  • Extend SEO image generation payload with additional victim details, standardize output dimensions, refine error handling, and update Biome configuration.

  • Deploy seo-generator lambda and integrate into backend

Jan30

Friday, January 30th, 2026

19 Changes
  • Improve locale detection for print profiles

  • Show memorial duplicates by name in wizard

  • Restore scroll during list state hydrate

  • Restore list state on return

  • Scale infrastructure for 20K user rally

  • Replace apply-time validation with plan-time precondition

  • Remove misleading allowed_subnet_ids variable

  • Add e2e health check script and checklist

  • Fix terraform formatting

  • Enable Azure Functions integration and fix Redis connectivity

  • Add firewall rules for Redis Standard tier security

  • Add Shamsi/Jalali to Gregorian date conversion in translator

  • Correct Azure deployment workflow issues

  • Complete go-live infrastructure and documentation

  • Enable Docker container deployment for native modules

  • Reuse existing CSRF tokens to prevent frontend cache invalidation

  • Add media processing scripts for portrait images

  • Add legacy memorial support and detailed logging for ownership checks

  • Add memorial ownership permissions and fix deployment race condition

Jan29

Thursday, January 29th, 2026

16 Changes
  • Deploy health and translator functions

  • Add Azure Functions client and update services

  • Deploy Azure Functions with private endpoint

  • Deploy Front Door Premium with WAF and create Azure Functions

  • Configure ACR private endpoint and ACR Tasks CI/CD

  • Add privacy notice to memorial form and fix hydration warnings

  • Make memorial batch downloads display dynamically from S3

  • Improve reliability and security across multiple components

  • Add bulk downloads section and portrait image management scripts

  • Add deployment scripts for Cloudflare Worker reverse proxy

  • Improve print generator image fetch reliability

  • Add search functionality to memorial list page

  • Add API proxying and CORS support to reverse proxy worker

  • Integrate yaadmaan branding in memorial section

  • Add flipped yaadmaan logo to memorial pages

  • Add domain-specific default locales and www subdomain support

Jan28

Wednesday, January 28th, 2026

6 Changes
  • Resolve linting and type-check errors

  • Add infinite scrolling to memorials listing page and fix Redis shutdown errors

  • Disable ACR pull role assignment (SP lacks permissions)

  • Use placeholder image for initial Container App deployment

  • Allow manual terraform apply via workflow dispatch

  • Add Cloudflare reverse proxy for memorial domains

Jan27

Tuesday, January 27th, 2026

26 Changes
  • Azure migration to Sweden Central with orphaned resource cleanup (#6)

  • Correct metric block syntax in database module

  • Change region to Sweden Central and improve workflow structure

  • Change primary region to northeurope due to PostgreSQL restrictions

  • Add infrastructure cost estimation to CI/CD workflow

  • Remove zone requirements and disable functions module

  • Resolve PostgreSQL availability zone and storage public access issues

  • Resolve terraform deploy issues for initial deployment

  • Fix Redis RDB config and improve provider registration

  • Simplify initial deployment configuration

  • Enable public access for initial deployment

  • Add concurrency control to prevent state lock conflicts

  • Disable saved searches temporarily and remove cleanup step

  • Resolve lint and type check errors

  • Add CacheControl headers for regenerated images

  • Resolve stale closure in MediaList loadMore callback

  • Delete orphaned resource groups before terraform apply

  • Replace delete with import for existing resource groups

  • Fix security module and add cleanup for orphaned resources

  • Add container_image_tag variable and defaults for optional vars

  • Reorder workflow - terraform before container build

  • Prevent TOCTOU race condition in memorial bulk generation

  • Azure migration foundation - CI testing and Terraform IaC (#2)

  • Resolve memorial list visibility and api response mismatch

  • Resolve localization, ui, and automation issues

  • Implement bulk print media generation UI with real-time feedback

Jan26

Monday, January 26th, 2026

3 Changes
  • Fix memorial date display and wizard UI issues

  • Fix memorial wizard UI overflow and update memorial assets

  • Add instagram post (4:5) format support

Jan25

Sunday, January 25th, 2026

5 Changes
  • Add CSRF protection, refactor utils imports, and update deploy script envs

  • Support shortId in suggestions and admin endpoints

  • Resolve ai art permission issue and missing share button

  • Refactor creation wizard and update docs

  • Add search, pagination, and image optimizations to admin panel

Jan24

Saturday, January 24th, 2026

1 Change
  • Add Instagram Reels Generator with Admin Panel integration

Jan23

Friday, January 23rd, 2026

11 Changes
  • Add PNG support for memorial art and backfill existing images

  • Refine reels generator gitignore for build artifacts

  • Ignore sensitive and build artifacts in reels generator

  • Implement instagram reels image generation via lambda and takumi

  • Fix accessibility and localization issues in Admin and UI components

  • Implement policy based access control and editor role

  • Fail fast in production if critical S3 buckets are missing

  • Align frontend password validation with backend and fix linting

  • Fix OrgNameStep initialization, linting/formatting issues, and safe lambda deploy script

  • Optimize WebGL, fix aspect ratios, and improve S3/CDN URL handling

  • Implement Memorial Card noise transition and update organization management

Jan22

Thursday, January 22nd, 2026

9 Changes
  • Media upload ux and missing translations

  • Implement comprehensive visibility control, admin UI improvements, and localization

  • Optimize wizard header layout on mobile

  • Fix linting errors and resolve type check issues

  • Implement batch translation for wizard steps

  • Grant app runner permission to invoke translator lambda

  • Implement lambda-based translation service to bypass app runner network restrictions

  • Remove explicit font-sans to allow locale font inheritance

  • Improve deployment script robustness

Jan21

Wednesday, January 21st, 2026

24 Changes
  • Close menu and search on route change

  • Clear report content error on input change

  • Restore keyboard activation for dropzone uploader

  • Revoke blob url for duplicate media entries to prevent memory leak

  • Validate parsed wizard url ids to prevent NaN

  • Allow entity type selection in wizard startup

  • Use public bucket for all memorial art and media

  • Update wizard image upload contexts to use public bucket

  • Correct import paths in migration script

  • Add S3 media migration via CodeBuild

  • Localize wizard steps and improve org details handling

  • Organize imports in date-picker

  • Improve verification refresh logic

  • Resolve date-picker timezone issues and search race conditions

  • Improve code quality and SSR compatibility

  • Resolve all linting and type errors

  • Sync translation keys between en and fa

  • Resolve remaining lint and type errors

  • Fix lint and formatting errors

  • Update mobile navigation layout

  • Make modal title single-line with whitespace-nowrap

  • Text clipping in modal header for RTL languages

  • Integrate wizard with graph context menu

  • Add missing 'available' translation key in Farsi

Jan20

Tuesday, January 20th, 2026

6 Changes
  • Wizard close button with URL deep-linking

  • Migrate IndAffiliationStep to CustomDatePicker

  • Add URL query parameter support for wizard deep-linking

  • Remove duplicate type attributes in examples

  • Lint errors in deep-linking examples

  • Add deep-linking support to wizard

Jan19

Monday, January 19th, 2026

9 Changes
  • Apply formatting fixes

  • Refine desktop navigation layout and minimal components

  • Resolve report save bug, localize panel, fix stale closure and secure media delete

  • Add missing view_details translation

  • Localize visibility controls and add accessibility labels in individual management panel

  • Secure searchAllIndividuals with auth and input sanitization

  • Combine visibility and search conditions in single where clause

  • Fix graph URL sync

  • Global duplicate detection and visibility controls implementation - Update duplicate detection to search globally across all organizations - Add detailed comments to AddPersonModal.tsx - Update API documentation - Implement visibility controls references

Jan18

Sunday, January 18th, 2026

2 Changes
  • Guard media updates and a11y

  • Format drizzle snapshots

Jan17

Saturday, January 17th, 2026

3 Changes
  • Add community suggestions and media review

  • Condense date validation condition to a single line.

  • Correct `formatDateToYear` to parse `YYYY-MM-DD` dates as UTC with validation and use UTC year for output.

Jan16

Friday, January 16th, 2026

7 Changes
  • Dark status bar and build fixes

  • Add share button to mobile menu and fix PWA dark mode colors

  • Enable PWA fullscreen and fix status bar color

  • Sync memorial updates and lambda build

  • Memorial SEO images use seo bucket and embed art

  • Generate memorial art variants in lambda

  • Memorial media pipeline, AI art status, docs

Jan14

Wednesday, January 14th, 2026

15 Changes
  • Fix linting and formatting issues

  • Enhance landing page AEO and add global OG image fallbacks

  • Use static social banners for homepage OG images

  • Grant AI art lambda access to source media bucket

  • Fix formatting in lambda policy and memorial panel

  • Address security, stability and deployment issues

  • Corrupted bun.lock with merge markers

  • Linting errors and formatting

  • Automate OG regeneration and refine memorial i18n

  • Use semantic button for list items

  • Refine memorial management modal UI and unify typography

  • Refactor memorial OG image generation for accurate Farsi RTL

  • Migrate memorial OG image generation to backend using SVG template

  • Add automatic SEO image regeneration for memorials

  • Calculate age from dates on memorial card listing page

Jan13

Tuesday, January 13th, 2026

17 Changes
  • Replace div elements with role='button' with semantic button elements

  • Enhance memorial section with media uploader, gallery, and CSRF protection

  • - Implemented 'Creative Age Display' with large outline typography and dynamic layout (Left aligned number, top aligned label). - Added 'Mobile Age Overlay' positioned on the hero image for mobile reports. - Fixed Flex alignment for Metadata Header to ensure consistent Right-side positioning in both LTR and RTL locales. - Removed 'dir=ltr' from date spans to fix Persian date rendering (RTL flow restoration). - Integrated 'calculateAge' frontend fallback for existing records with 0 age. - Updated Media Gallery to correctly handle and zoom all media types.

  • Use tulip icon for memorial links

  • Add mobile navbar support and submission form

  • Use respectful term 'Javidnaman' instead of 'Victims'

  • Make memorial victim count red and visible

  • Use vazir font for persian labels in memorial detail

  • Fix readability of memorial detail labels

  • Improve readability of detail page metadata

  • Tone down navbar brightness on memorial page

  • Force dark navbar usage in memorial pages

  • Redesign memorial section with unique aesthetics and local images

  • Add memorial section with dummy data

  • Enable RTL text direction for SEO images

  • Copy logo and install fonts in Docker image

  • Add local fonts and deployment script for production

Jan12

Monday, January 12th, 2026

1 Change
  • Implement moderator role foundation and documentation

Jan11

Sunday, January 11th, 2026

6 Changes
  • Apply biome formatting fixes

  • Update changelog & CodeBuild config for migration fixes

  • Robust database migration paths & troubleshooting guide

  • Implement pagination validation, enhance AI verification robustness, and update documentation

  • Bilingual AI verification flags, report security sanitization, and admin report management

  • Add action buttons to detail pages

Jan10

Saturday, January 10th, 2026

15 Changes
  • Remove extra newline and apply lint fixes

  • Enforce password complexity and improve type safety

  • Add user profile, password change, and fix search bar UI

  • Guard media lightbox against missing URLs and improve accessibility

  • Update person graph link and report share accessibility

  • Add missing translation and resolve SQL alias error

  • Improve AWS cost check accuracy using unique AZs

  • Resolve linting issues and formatting

  • Secure share functionality and refine UI links

  • Enhance Person Details UI with cover images, voting counts, and timeline; add PillButton

  • Add Share and Graph buttons to Person Detail header

  • Correctly map media properties in public share API

  • Update changelog generation to include ui/ux chores

  • Enhance security, ui, and accessibility

  • Refine mobile ux, cleanup components, and update translations

Jan9

Friday, January 9th, 2026

5 Changes
  • Commit remaining file updates for docs and typescript interface fixes

  • Address PR review comments (linting, git parsing, node version)

  • Add 'bun run deploy:prod' script to automate updates and deployment

  • Move build script to frontend scope and add resilience for vercel cli builds

  • Automated, localized changelog with AI translation