Comments (4)
I have decided to stop auto reporting for now, as it reports some links that may be network blocked as opposed to anything else.
I have extended the front end to show page titles more prominently where they can be acquired. Where they can't; there is no UI change. I think this solves your feature request.
from frontend.
Interesting idea, I am investigating this with a proof of concept: https://github.com/tommcclean/functions.cmpct.io
The repo in that link is a new Azure Function Set, the RouteProcessor is triggered by a route JSON file being written to the storage container, on trigger it iterates over each link and queries the link securely to obtain the page title. It then uses that information to rewrite the route file, so that subsequent requests through the website will be able to get the title back.
I decided not to trial this in the API, as I didn't want to do anything long running or blocking in the API that wasn't needed for the core product to work, but as this is isolated from the front end and the API, it can gracefully increase the quality of data over time.
The proof of concept will run for a little while, to see how performant it is, how much it costs to run, and chiefly, how long does it take from a route being created, for it to be updated with associated metadata. If the reaction time is fast, and it is cheap to operate, I will extend it to also scrape for a screenshot of the page, which will start to exist in the data, and can be made visible on the front end website later.
With this prototype, the model is rehydrated as follows.
This solution won't work for links hidden behind authentication however. Places like slack tend to get around this by using the user's auth token with the service, but that is not achievable for this project.
This functionality can also be extended to automatically report dead links.
from frontend.
This Proof of Concept seems to be quite successful. So I have pointed it at the main data store, and it has processed the majority of the content quickly. The API has been updated to extend the response model to include a new title property.
Finally the front end has been updated to apply the title on hover.
When more information is gathered about a link, a modal or some other UI element could be used to display it, but as an early attempt; a title will suffice to see how it works out.
As demonstrated here - https://cmpct.io/mJyxBoI1
The delay in adding this data to the model takes approx a second, so as soon as it is shared; such content is available.
from frontend.
Oh and it automatically reports dead links
from frontend.
Related Issues (17)
- Help page not localised for France or Spain HOT 1
- Ability to email a link to another person
- Ability to share a link on social media (Twitter/Facebook etc) HOT 2
- Ability to create a route with multiple links HOT 2
- Using the paste function to create a route should not allow the user to submit multiple times
- Ability to create passworded routes HOT 3
- It should not be possible to add more than 3 links to a group HOT 1
- Ability to clear your local history
- Ability to opt out (or opt in) to the history mechanic
- Implement an easy way to toggle between dark mode and light mode on the homepage
- Prevent duplicate links from being added to a group HOT 1
- Ability to view site reputation or screenshot of a link when viewing the share page HOT 1
- A limit should be placed on how frequently a user can create a route.
- Ability to copy the current URL to the clipboard from the share panel
- Don't show copy / paste buttons on devices where it is not supported HOT 1
- A page promoting patreon to see if we can recover some running cost HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from frontend.