Hey r/selfhosted, get ready to craft your story like never before!

I’m thrilled to announce that Reactive Resume has just launched its latest version, and it’s a game-changer in the resume-building space (at least, I’d like to think so).

Here’s a glimpse of some of the new features:

  • A sleek, polished user interface that makes navigation a breeze.
  • Faster PDF generation to get your resume out there quicker.
  • Integration with OpenAI for smarter assistance.
  • Brand new, highly customisable templates to fit your unique style.
  • Comprehensive documentation with user-friendly guides.
  • Enhanced security with two-factor authentication.
  • Available in multiple languages, contributed by the community.
  • Quality of life features such as locking resumes, adding personal notes to resumes, tracking views and downloads on your public resume etc.

The best part? It’s 100% free, forever! No ads, no user tracking, just pure resume-building bliss. Plus, for the tech-savvy, it’s also open-source on GitHub and self-hostable through Docker, something special just for this community.

Ready to give it a spin?
You can visit the website on https://rxresu.me, sure. But you’re on r/selfhosted, so you’re probably more interested in the “how to host it myself” part of the launch. The link to the repository is right here: https://github.com/AmruthPillai/Reactive-Resume/

Self-hosting Reactive Resume is super simple, compared to the nightmare it was in earlier versions having to ensure multiple services are communicating alright. You can check the GitHub repo (under tools/compose for many docker compose examples of how the project could be set up).

I’m excited to see how you make the most of it!

  • AmruthPillai@alien.topOPB
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Interesting. It should be possible to do this without having to break the app or modify any of the code. You just need to ensure STORAGE URL and CHROME URL and not public addresses, but URLs that are accessible within your network (without basic auth).

    Then it’s just a matter of implementing basic auth on the proxy layer (using nginx/Traefik/caddy). Or instead of basic auth, another strategy would be to block all requests from External IPs and only allow your home IP and the IP of the server itself.

    • soyasoya5@alien.top
      cake
      B
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago
      # -- URLs --
      PUBLIC_URL: http://localhost:3001
      STORAGE_URL: http://localhost:3002
      
      # -- Printer (Chrome) --
      CHROME_TOKEN: chrome_token
      CHROME_URL: ws://headless_chrome:3000
      

      You mean like that? It returns HTTP 500 once I add basic auth to the nginx reverse proxy