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 wget for the docker-compose.yaml is 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.

Merge request reports

Loading