I will be posting bi-weekly updates on my projects to keep myself accountable.
This one is about ScreenBud which is a tool to facilitate capturing, annotating and sharing your screen.
- Added backend support for bulk delete, archive and restore of shots
- Implemented selection mechanism on the frontend
- Improved “take screenshot” workflow
- https://screenbud.com/shot/228303bd-5ba5-46ca-a389-22b1bedddd4a
- Shade out area that is not selected
- Selected area can be modified (dragging corners)
- Shortcut to save (Ctrl+S or Cmd+S on Mac)
- Inline help
- Should the save button appear right under the cursor once the area is selected?
- Should I automatically copy the url to clipboard after save? Could be annoying if it overrides something in your clipboard
- Refactored proxy set-up
- Originally used Envoy only, switched to Envoy + Nginx
- Currently Envoy is required for GRPC-web, but at the same time I find it quite cumbersome compared to Nginx
- In the future I plan to no longer depend on Envoy
- Simplified development set-up using docker-compose to start all necessary services also locally
- Implemented persistent sessions
- Now when I restart the backend, people don’t get logged out
- Previously was in memory, now I use sled
- Implemented action buttons (“share”, “copy to clipboard”, “download”, “report”)
- Implemented “view only” mode for users who can't edit the post. More useful than just sharing the direct link to the image, because it has the action buttons, source url, etc.
- Implemented “resource limits”, currently hardcoded values
- Maximum number of shots
- Maximum cumulative size of shots
- Maximum individual shot size
- Implemented third-party sign-up / sign-in
- This was the biggest time sink (Rust does not have high level frameworks like Ruby / Python)
- Uses the openidconnect crate
- Currently only Google
- Needs UI work
- Needs approval from Google (you need to send your website for review when you use Google sign-in sign-up) which requires Terms and Conditions and Privacy Policy pages
Congratulations @palmik 👏.
Btw, no landing page for screenbud yet?
Thanks Lorenzo! Not yet sadly, it's on the MVP list, so I am aiming to have it ready in 3 weekends or so.
Keep it up!