v1.9.0
What's New in v1.9.0
Single Sign-On (SSO)
To streamline access across services, Snip now supports seamless integration with SSO servers:
- Revamped Login/Signup System: The internal logic has been completely overhauled, along with database schema updates to support multiple credentials per user.
- Credential Management: Users can now manage their login credentials directly in the frontend.
- Account Merging: Accounts with the same email address are automatically flagged for optional merging, simplifying user account management.
Overhauled Configuration System
The configuration system has been redesigned for greater flexibility and security:
- YAML-Based Configuration: Environment variables have been replaced with auto-generated YAML configuration files, allowing updates without requiring a server restart.
- Improved Security: The new system minimizes the risk of credential leaks while simplifying setup.
-
Modular Schema: The YAML-based schema is more scalable and easier to adapt for future configuration needs.
Example:
# render.yaml
num_processes: 4
cache_dir: "/tmp/snip/render"
formats:
- format: "jpeg"
widths: [150, 720]
- format: "pdf"
widths: [720]
Dockerfile Rewrite
Deployments are now faster and more efficient:
-
Nginx Container: A new Nginx container is included, eliminating manual setup. Running
wgetfor thedocker-compose.yamlis now sufficient to deploy Snip. - Frontend Optimization: The database migration script has been rewritten in Node.js, reducing the frontend container size from 350 MB to approximately 100 MB.
- Smaller Containers: All containers have been optimized, with sizes reduced by about 20%, leading to shorter build and load times.
Progressive Web App (PWA)
Snip has taken its first steps toward offering a true Progressive Web App experience:
- PWA Installation: Users can now install the web app on mobile devices and desktops, enabling full-screen usage and a native-like experience.
- Initial PWA Features: Basic PWA functionality is implemented, with plans to further enhance caching and offline support.
Other
- Flexible Email Service: Optional email service for temporary deployments, improving external testing workflows.