I'm Rihan! I love architecting systems that scale and working with the latest technologies.
Test in production
Web version of BeReal - WIP
Home Page: https://bereal.pages.dev
Support opening BeReal profiles URLs like https://bere.al/exampleuser
in the PWA and shows their profile with an add friend button.
The url_handlers
part of web manifest allows PWAs to register as URL handlers. https://web.dev/pwa-url-handler/
The only requirement to getting this to work is that BeReal would need to add a web-app-origin-association
file to .well-known to permit the PWA to handle their URLs.
Use settings endpoint's polling.friendsFeed
on friends feed query's stale time
Allow dragging secondary images to the opposite side
Refresh feeds with pull to refresh
Prompt to install the PWA. PWA would have access to certain APIs like background syncing.
Use useHead from @unhead/vue to set the title on different pages.
Could also use useTitle from vueuse for something simpler
Being rewritten into Nuxt 3, and with a responsive desktop layout.
Populate queries with placeholders as they load.
Loading a user's profile can be sped up as it's likely partially in the cache from another request, such as friends feed.
https://vue-query-next.vercel.app/#/guides/placeholder-query-data
Shows account owner's BeReal without lazy loading and with option to set caption
Posting while on the desktop might be an issue because there isn't generally two cameras. Possible workarounds include using the webcam + screenshotting the page.
On mobile it should be straightforward to capture both cameras.
Add additional skeletons for loading states
If on mobile, use scroll snapping and size one post per screen
Make into PWA with install button and offline support
Research feasibility of reverse geocoding without depending on 3rd party APIs
Use view transitions between pages. https://developer.mozilla.org/en-US/docs/Web/API/View_Transitions_API
Consider switching to Nuxt 3 just make the project easier to maintain.
Functions can be replaced with server routes. Only concern is that the app should run fully client side, so need to see if with { ssr: false }
and server routes whether everything counts as a function use or if output only will put server routes in functions directory.
Create page for logging in
This would be a nice time to try and experiment with passkey, essentially rolling my own auth on top of BeReal's possibly making cross device easier.
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.