Changelog #3: Flow overhaul

ยง๐Ÿค– Feature: Flow refactor

#241 Use Zustand as source of truth

When I started prototyping Specfy I did a benchmark on graph library and picked x6 by ant. It's a really nice library that comes with a lot of built-in features and extensibility. However after a few weeks I hit some bugs and performance issues that were critical enough for me to look for altenatives.

My second choice was ReactFlow which is a more mature project but mostly focus on Flow rather than visualisation. I knew I would need to stretch a bit the library to make it work. And since I never used it before I did some mistakes during the implementation, especially regarding state management. Lately there was more and more issues with the way I managed the state and it became clear I needed to refactor the code.

So this week I reworked the state management to use Zustand as the main source of truth for the graph. That allows better performance, more control of the pipeline and finally unlock the possibility to create the much awaited Ctrl+Z feature.


Along the refactor, those features have also been added:

  1. ๐Ÿ™Œ๐Ÿป Automatic edge placement
  2. ๐Ÿ“ˆ Automatically expand parent on drag
  3. ๐Ÿ› ๏ธ Added toolbar for quick actions
  4. Smarter auto layout
  5. Smoother interactions

ยง๐Ÿ› Bug fixes, minor updates

Found an issue? You can reach out on Twitter or Discord.

Bug Fixes

  1. ecc194 - Support for URL dependencies
  2. 17cb4f - Add count for each Technical Stack section

Minor updates

  1. 37f9f0 - Automatically hide items when there is too many tech
  2. 5de54 + 7fa4725 - UI Overhaul

If a technology/saas is missing in Specfy please make a request on GitHub.

  1. c7242b3 New category "Monitoring"
  2. de210bb add AWS Api Gateway
  3. db5c25c add AWS Athena
  4. 9dc9912 add AWS CloudFormation
  5. d39ac8d add AWS CloudFront
  6. dc9009c add AWS Cloudsearch
  7. 31e51f5 add AWS CloudWatch
  8. 0034589 add AWS Document DB
  9. 845d4e5 add AWS EBS
  10. 04b66db add AWS ECR
  11. 2ffcff3 add AWS EFS
  12. b637333 add AWS EKS
  13. 4f4ea7f add AWS Glue
  14. 0529af2 add AWS Kinesis
  15. 2f8158f add AWS Kms
  16. 1ae666e add AWS Lightsail
  17. 61d577c add AWS MemoryDB
  18. 582da18 add AWS MQ
  19. 31efa1d add AWS Neptune
  20. 5ce7f80 add AWS Opensearch
  21. 156d182 add AWS Polly
  22. 4447e5b add AWS Redshift
  23. c6a7697 add AWS Rekognition
  24. 46daee1 add AWS SageMaker
  25. a1c0299 add AWS Secrets Manager
  26. bd1d906 add AWS Step Functions
  27. 171bc11 add AWS TimeStream
  28. 82175ba add AWS Translate
  29. 6f2355a add Azure AKS
  30. aa63515 add Azure Cosmos DB
  31. c00c01a add Azure MariaDB
  32. c58a520 add Azure MySQL
  33. 52bde9d add Azure Postgres
  34. f2d8cf3 add Azure Redis
  35. 2608550 add Azure SQL
  36. 6d07d57 add BetterStack
  37. aeecebe add GCP Container Registry, Artifact Regsitry
  38. cb93e5d add GCP Logging
  39. ba63413 add OnlineOrNot
  40. e2b1271 add Replit
  41. 1be71a5 add Adobe Commerce Cloud
  42. 07e48e6 add ApiPlatform
  43. 6662f39 add Blackfire
  44. 6769283 add GoAcme Lego
  45. 55397d0 add Intuit
  46. 4bdeb0d add Koala analytics
  47. 8698fb4 add Mailgun
  48. 048fb23 add MailHog
  49. 7d384b6 add package for FlySystem php
  50. cc3efe5 add Paypal
  51. 283f050 add Pirsch Analytics
  52. bf0c27f add PostHog
  53. bc17732 add SAP
  54. 048229c add SAS
  55. e1a6d9d add ServiceNow
  56. 0ff0462 add SonarCloud
  57. 18ec33b add SonarLint
  58. 0c090d5 add Tailscale
  59. bcd9e68 add Telegram
  60. ec61927 add Vale
  61. ba71b91 add Veriff
  62. 2a63334 add Sonarqube

With this update, Specfy now supports +300 SaaS and Cloud Provider.

Loved this article?

Check Specfy, an open source platform for all the DevOps and Technical leaders.