My new contributions to the Hive Condenser
## Context
I have been involved (voluntarily) with the development of the Condenser & Wallet apps (that are powering https://hive.blog and https://wallet.hive.blog) for quite a while now. There are other great frontends to Hive out there such as https://peakd.com and https://ecency.com but I have always been more or less faithful with the Condenser.
This is a regular report on my new contributions. Some of the new work below might still be in test and not yet deployed.
## Fix links sometimes broken due to @
Issue raised by @rishi556: https://gitlab.syncad.com/hive/condenser/-/issues/113
> Links with an @ followed by a slash fail to properly get highlighted. Ex: http://personal.community/?post=@sn0n.dev/name-test fails to get highlighted. Along with that, any link that has an @ in it breaks the link with anything after the @ attempting to go to a user's profile and everything before it being highlighted.
See example in: https://hive.blog/testing/@sn0n.dev/name-test
This is tiny fix of the regular expression that is responsible for detecting user mentions in the body of a post.
Merge request: https://gitlab.syncad.com/hive/condenser/-/merge_requests/196
## Pre-select cover image when editing an existing post
I've previously added a cover image selector in the post editor, however, I forgot to preselect the current cover image when you are editing an existing post. It's also a small fix but I've also took the opportunity to cleanup the code to unify the coding standard and best practices where I can in the files I work on.
Merge request: https://gitlab.syncad.com/hive/condenser/-/merge_requests/198
## Handle posts without image in the post list
@jackmiller was found that posts without images on the list of posts don't look great and I have to say that I kind of agree. Although it's minor, it's still does not look great:
![Posts without image](https://images.hive.blog/DQmRe3obSLVSGaV7BuDwjJMRUYHQh8kJwu8R64UY5k6dK8J/Screen%20Shot%202021-01-28%20at%209.45.48%20pm.png)
As you can see above, two posts are missing a thumbnail which is not that bad but not that great either. So the suggested idea was to use the user's own avatar instead as shown below:
![Using avatar as default post summary image](https://images.hive.blog/DQma9mJh2EAqdjYE7FYPu1RaWHVustmfRw2zEGtMJ7vm8zH/Screen%20Shot%202021-01-28%20at%209.52.39%20pm.png)
Merge request: https://gitlab.syncad.com/hive/condenser/-/merge_requests/199
## Fix Youtube video preview image ratio.
@martibis's friend, @clarafrancken, noticed that her Youtube video preview image is not looking quite right:
![Youtube preview image with wrong ratio](https://images.hive.blog/DQmNhxTHznXGuczSLnCmwMwPZpAqW42peQ5GKoq7ZpVVjTM/Screen%20Shot%202021-01-28%20at%209.55.41%20pm.png)
The issue was due to the CSS code trying to extend the video player to 100% width while having a fixed height in pixel. So instead of having the video 100% I just let it the size it should be which was 640 x 360 px and centered the player:
![Centred video player](https://images.hive.blog/DQmNT6sMxNT3mDSHDtrntgc3Vr42AnVepo3frQoHtkm6Arb/Screen%20Shot%202021-01-28%20at%209.59.41%20pm.png)
Merge request: https://gitlab.syncad.com/hive/condenser/-/merge_requests/200
## Fix image URL proxifier
@themarkymark raised an issue where old images from the Steemit era were sometimes not showing. I discovered that some of the code were still using the steemitimage.com domain name for transforming image URL into an image proxy URL. The code has now been fixed along with unit tests.
Merge request: https://gitlab.syncad.com/hive/condenser/-/merge_requests/201
## Code clean up
What bothered me for a while was that code linting were not taken advantage of in the CI/CD pipelines. This is due to the fact that the code we inherited were not always following the specified coding standard and some libraries were conflicting one another. Ideally, new codes should not be allowed to be deployed until they pass unit tests and ESlint.
So I've decided to try going through all the code and clean that up, I knew it was a big job but I didn't know it was going to be that big... After a first attempt, I managed to fix something like 500+ issues and was excited when I completed it but it was only to realise that the current linting config was only checking for `.js` files not `.jsx` ones which we have more of and those are also more complicated to fix. After re-configuring the linting, I discovered there were 3 or 4 times more issues to be fixed. So this is going to be an on going task.
WIP Merge request: https://gitlab.syncad.com/hive/condenser/-/merge_requests/197
---
**Vote for my witness**
[![Support @quochuy Witness.jpg](https://images.hive.blog/DQmecYTZemY8SwU6rrg7awhpNRBsehUp7ivk9RGyZsUUpVw/quochuy-hive-witness.jpg)](https://hivesigner.com/sign/account-witness-vote?witness=quochuy&approve=1)
On Hive, Witnesses are playing the important role of providing a performant and safe network for all of us. You have the power to choose 30 trusty witnesses to package transactions and sign the blocks that will go in the Hive blockchain. [Vote for me via HiveSigner](https://hivesigner.com/sign/account-witness-vote?witness=quochuy&approve=1) to support my work for the community.