5.2.0 Amplify Deployment
2025-04-11
- Duplicate deployment to AWS Amplify as backup
- Restore location filter, add Phuket & Chiang Mai
- Redirect legacy profile pages to new URLs
5.1.4 Agency Support
2025-03-23
- Sitemap update for new profile URLs
- Restore dark mode switch with three way toggle
- Fix visibility status to reflect upon toggle
- Fetch work history conditional on session status
- Disable prefetch on internal links
- Kafka consumer for agency info edit/create
- Agency info edit page
- Allow all users to create multiple sellers
- Display club(agency) creation option when multiple sellers exist
- Retrieve associated club info on profile page using join query
- Sort seller dashboard by status and created time
- Fix seller form grid breakpoints
- Place link to switch user type in settings page
- Update Telegram links to point to discussion group
- Support page to allow retrieval of own user ID
- Fix counter increment bug for new profiles
- Move create new club button to the top of the list
5.0.0 Supplier Service Posting
2025-02-10
- Profile create & edit form rendered with react-hook-form
- Direct image upload to Cloudflare R2 with react-dropzone
- Separation of seller features from buyer dashboard
- Kafka consumer for background moderation & translation of new profiles
- Concatenation of list query results from new and legacy databases
4.5.0 CockroachDB
2025-01-18
4.4.0 Cloudflare R2
2025-01-06
- Replace Amazon S3 with Cloudflare R2
- Remove Amazon DynamoDB
- Setup media subdomain to mask image urls
- Migrate DNS records from Route53 hosted zone to Cloudflare
4.3.1 TanStack Query & Amazon EventBridge
2024-12-28
- Replace SWR with TanStack Query
- Replace Infinite Scroll Hook with Intersection Observer
- Replace Apache Kafka with Amazon EventBridge
- Preparation for transition to DynamoDB & Cloudflare R2
4.2.0 Vietnamese language support
2024-12-10
- Truncate long linkified urls
- Trim whitespaces in LINE IDs
- Replace Google Tag manager snippet with @next/third-parties module
4.1.0 Translate reviews
2024-07-26
- Kafka consumer to translate reviews
- Add Vietnamese to translation target languages
- Refactor translation response restructuring
- Exclude profiles inactive for over a year from list views - MongoDB sort memory error
4.0.0 Seller ratings
2024-07-08
- Ratings & comments input dialogs
- Kafka producer link on ratings submit
- Ratings list render on profile detail view
- Fix duplicate name recognition pattern to omit conjunctions & articles
- User alias configuration in settings page
- GraphQL mutations for seller ratings, user alias
- Fix agency data fetch bug
- Display full date on popover
- RJSF based user configuration form render
- Expand Kafka follow consumer to take additional parameters
3.14.0 Agencies list
2024-04-30
- Enhance emoji filter
- Identify & prevent duplicate names display
- Agency list fetch & translation, persist in database
- Real milk info available to public
- Fix Line link for personal accounts
- Detach agency names from supplier names before translation
- Sidebar UI implementation
- Sort list by created date when status is set to new
- Sort list by return date when status is set to resume
- Upload agency banner images
3.13.0 Jest coverage
2024-03-27
- Unit tests for React components & Next pages
- GraphQL refactor for improved error handling, reusability
- Remove Sentry client monitoring & Lambda wrapper
- Delegate image download job to Kafka consumer
3.12.0 React refactor
2024-02-05
- Adjust spacings in card list view
- Share list component between pages
- Remove Meticulous recorder script
- Combine GraphQL list & favorites queries
- Consolidate GraphQL mutation client code
- Fix image copy source & destination URLs resolution
3.11.0 Lambda refactor
2024-01-22
- Unit test coverage for Lambda functions
- Dashboard favorites list view refinement
- Romanized name capitalization
- Unify MongoDB operations to aggregate pipeline
- Sort list by hours since last active
- Setup jsdom for Jest unit tests for React components
- Hide viewcount for inactive profiles
- Restore login button on navigation bar
3.10.0 GraphQL refactor
2024-01-08
- Unit test coverage for GraphQL code
- Mongo pipeline consolidation
- Fix bug new users unable to favorite
- Move MongoDB dev server to a separate account
3.9.0 Google Translate
2024-01-02
- Use Google Cloud API to refine translations
- Kafka refetch event to handle selective actions
- Capitalize first character of the name on list view
- Filter emojis on list view
- Fix scroll up trigger floating buttons spannig full width
- Display names of inactive profiles in gray
- Pause Sentry client monitoring
3.8.0 Neo4J graph database
2023-12-28
- Persist folow relationship in Neo4J & Redis
- Display follow status, view & day counts
- Real milk text detection in description
- Sort list by total view count
- Login preview page
- Regroup location filters by district combinations
- Adjust clockin time range criteria
- Kafka object value type support
- Fix git tag version failure
3.7.0 Authentication reimplementation
2023-12-11
- Replace Auth0 with next-auth
- Tooltip on calendar heatmap
- Status filter for returnees resuming work today
- Persist favorites in MongoDB
- Kafka refetch consumer
3.6.0 Localization library migration
2023-11-28
- Replace next-i18next with next-intl
- Infinite scroll view as default list view
- Add active period attribute to profile
3.5.0 Infinite scroll
2023-11-18
- Infinite scroll
- Incremental data fetching with SWR Infinite
- Fix calendar heatmap date offset
- Cypress E2E test run on local instance
- Fix unmatched district name lookup error
3.4.0 Datadog integration
2023-09-07
- Datadog monitoring for AWS Lambda, Jest, Cypress, Auth0, GitHub actions, CircleCI
- Block Google analytics tracking during Cypress tests
- Remove Sentry tracing from Lambda cronjobs
- Toggle button to follow favorites
- Admin feature to manually refetch from UI via Kafka consumer
- Prevent page reload on same page click in pagination
- Calendar heatmap to display work history
- Fix Line link with percent encoding
- Replace American flag with the Union Jack
- RSJF based consumer settings form
- User metadata retrieval via Auth0 management API
3.3.0 Logger config consolidation
2023-07-25
- New image detection in hourly cron
- Datadog monitoring for Lambda functions
- Winston logging library setup
- Multiple Winston transports for Logtail
3.2.0 Media storage in AWS S3
2023-07-17
- Serverless flow to upload image buffers to AWS S3
- Kafka consumer to copy image for new profiles
- Migrate production Lambda functions to AP-Southwest
- Mask image urls with alternative domains
3.1.0 Apache Kafka integration
2023-07-13
- Record return to work date
- Kafka consumers deployment as AWS Lambda for events: debut, resume
- Dashboard design
- Login flow localization support
3.0.0 Full text search
2023-05-31 Text search enabled for all languages, lookup by name, area, agency or description
- Search box alongside other filters
- Redis installation for upcoming features
- Jest code coverage configuration
- Mongo aggregate pipeline code refactor
- Filter size heights alignment
2.7.0 Scroll position retention
2023-05-14 Scroll improvements
- Retain scroll to previous position when navigating back
- Floating button for instant scroll back to top
- Disable data revalidation if stale
- List view displays dimensional information instead of click counts
2.6.0 Dark mode
2023-05-11 Support toggle between light and dark mode
- Logo & favicon update
- Display reset filter button when none matching criteria
- Retrieve dark mode preference from system settings
- Margin reduction on mobile view
- Refactor common components & functions
- Tidy up the locale selectors
- Performance optimization by minimizing data retrieval from MongoDB
- Track in-site view counts and link clicks
2.5.0 Log & Monitor integration
2023-05-01 Integrate with Log & Monitor for error tracking
2.4.0 Project consolidation
2023-04-29 Combine Lambda & Next.js projects with shared dependencies
2.3.0 Resilience & performance
2023-04-26 Refactor hourly Lambda cronjob
2.2.0 CircleCI
2023-04-20 Replicate partial pipelines in CircleCI
2.1.0 Cypress test automation
2023-04-16 E2E tests on location/status filter selection scenarios
2.0.0 List view filters
2023-04-02 Filter profiles by location and status
- Multiple select filter by 10 popular locations
- Toggle button group filter according to status conditions (active/inactive, newly created, recently updated)
- Fix navigation styles on mobile view
- View by agency pages
- GraphQL integration
- Jest unit tests
1.8.0 Hotfix
2023-03-24 Workaround for 429 error from 3rd party API
1.4.0 Backend maintenance
2023-03-21 Resolve multiple connections to Mongo Atlas issue in Lambda functions
1.3.2 Backend maintenance
2023-03-20 Separate dev and prod environment, clone database for dev
1.2.0 Hotfix
2023-03-19 Province and district name lookup failure for locations outside Bangkok
1.1.0
2023-03-18 Add sitemap for Google crawlers
1.0.0 Initial release
2023-03-17 For soft launch with a minimally viable product. Proof of concept with just listings, detailed view, along with translation features.
- Next.js setup with Material UI
- i18n localization support
- Domain configuration
- Pipelining with GitHub actions
- Automated deployment to Vercel and AWS Lambda
- Backend translation tasks using Microsoft Translator to English, Chinese (simplified), Japanese and Korean
- Persistence in Mongo Atlas
- Hourly cronjob to synchronize with external data