mwmbl / front-end Goto Github PK
View Code? Open in Web Editor NEWA front-end for the mwmbl search engine written in vanilla javascript
Home Page: https://mwmbl.github.io/front-end/
License: GNU Affero General Public License v3.0
A front-end for the mwmbl search engine written in vanilla javascript
Home Page: https://mwmbl.github.io/front-end/
License: GNU Affero General Public License v3.0
Currently, this project has a poor performance rating on https://pagespeed.web.dev/.
This is largely due to the fact that we load our icons from a distant source that lead to a lot of unused CSS (we currently load the entirety of Phosphor Icons). By making this file local, we can reduce it at build time.
The second factor would be font loading through Google Fonts (though we may not want to change that as of now).
Hello.
This 'Mwmbl' search engine loads all results in once, and there is no button or any arrow to load the next. And isn't it will effect the performance of the website? It is very important to implement this feature. And a arrow to go back to previous result, there is no-need to create a new html page for the next results, just modify html elements.
Thanks.
Given that this project is in its beginnings yet, it would be ideal to have into account side web browsers such as UXP-based ones like Pale Moon or Basilisk from the start while adding support to certain web features.
By now, the support is none and the website doesn't even load with a maximum of this being thrown in the console:
SyntaxError: expected expression, got keyword 'import'[Learn More]
index.166e7ea2.js:1:1328
This is mostly about removing Google Fonts as it seems that it does not respect GDPR standards for privacy.
Here is a reddit post linking to an article (in German) talking about Google exploiting IPs from their CDN's users.
This is an occasion to not use any Google dependencies anymore as our primary concern is privacy.
Currently there are not a lot of components, but as the project grows we'll need to tidy things a bit more for maintainability.
Organizing our components using Atomic Design could be a great first step in that direction.
My proposal is to create 3 directories in the current components
directory, one for each component type (atoms, molecules, organisms).
We don't have pages currently as we rely on a main index.html
to display our components, the pages
directory should only be added once/if we implement routing and multiple pages.
I think we should cancel existing requests before we fire a new one
Adding a more visible focus state for the search bar will make the component more accessible.
While the minimalist homepage is quite pleasant, the movement on it can be jarring for some folks. For these cases there is the prefers-reduced-motion
media query that can be used to develop alternative (usually much more minimal to no) animations.
Originally I had overcomplicated the potential solution (you can see it in the revisions of this issue). There is a simple fix though: wait until the user submits the query, just like other forms. At this point, move the search bar. With reduced motion enabled, pop the search bar up to the top without a transition. This will solve the movement and will also remove the possibility that the movement happens while you are typing, as in the video below.
Anyway, love the project! I will be following it closely. If you ever want to pop over to Openverse we're also doing a non-profit search engine thing, though admittedly with a specific niche and goal in mind.
Also, if you're happy to accept a PR and any have suggestions for which solution you'd like to see implemented, I'd be glad to take a go at it ๐
The actual build that is made in the deployment workflow generates useless source maps.
We need to use the --no-source-maps
to disable this behavior in the build step.
This would be an appreciable feature to have to increase developer experience.
We could use this action to get the website running on Github Pages for free.
Having links to the different social pages of the project could be a huge improvement for the project's visibility.
It would also give incentive to contribute to the project.
The first link that could be added are the wiki and the GitHub repository.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.