this post was submitted on 24 Nov 2023
13 points (100.0% liked)

Self-Hosted Main

582 readers
19 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

For Example

We welcome posts that include suggestions for good self-hosted alternatives to popular online services, how they are better, or how they give back control of your data. Also include hints and tips for less technical readers.

Useful Lists

founded 2 years ago
MODERATORS
 

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!

top 50 comments
sorted by: hot top controversial new old
[–] hash004@alien.top 2 points 2 years ago (2 children)

This looks really nice. A really good feature to have would be able to have version history of the resume so I can revert or just see how the resume has changed over time.

[–] RedditSlayer2020@alien.top 2 points 2 years ago

GIT is literally build for that.

load more comments (1 replies)
[–] DisastrousMagician16@alien.top 2 points 2 years ago (1 children)

Totally what I was looking for will try imbed into my website.

[–] AmruthPillai@alien.top 1 points 2 years ago (1 children)

Please do let me know how it goes, and if there's anything I can do to make the process more simpler :)

load more comments (1 replies)
[–] bakterja@alien.top 1 points 2 years ago

Hey, I was planing to refresh my resume. I will definitely use this, looks great. Thanks !

[–] ImprovedJesus@alien.top 1 points 2 years ago (1 children)

Holy shit, it looks slick! Will for sure give it a spin!

[–] AmruthPillai@alien.top 1 points 2 years ago

Thank you so much! :)

[–] Theon@alien.top 1 points 2 years ago (1 children)

Whoa, this looks awesome. I've been using https://read.cv but it's got way less features, and it also seems they've started to pivot more and more into being a kind of a social network which I'm not particularly interested in.

The only thing I'm kind of worried about is that this looks somewhat heavy for a single-user instance? Like, I don't probably need 2FA or Sentry or even SMTP for password resets. Still though, will try!

[–] AmruthPillai@alien.top 1 points 2 years ago

SMTP is optional, so is Sentry. If you don't include the env variable, the module isn't loaded in the app itself.

As for 2FA, it was just a few bits of code, so it adds almost zero weight to the instance. The project is very much catered to being self-hosted and meant for a single person to use. The rest are just nice features to have on a cloud instance, but they don't add any overhead to the server.

[–] Ruuddie@alien.top 1 points 2 years ago

Looks really great, thanks!

I can't find a way to reorder items within Work Experience, Educations, etc. So if I get some new certification, it seems I have to fill in everything again since I can only add new ones at the bottom and I want to put the latest one on top. Or am I doing something wrong?

Also, it would be great if you could add a date to the certifications. That way you can show how long you've been certified for the specific skill.

[–] AnotherMiggy@alien.top 1 points 2 years ago (1 children)

I'll be setting this up for sure as I was looking for something like this. Thanks for making this!

[–] AmruthPillai@alien.top 1 points 2 years ago (1 children)

No, thank you! And please do let me know how your self-hosting experience was. If there's anything I can do to simplify the process, happy to!

[–] AnotherMiggy@alien.top 1 points 2 years ago
[–] Joyfulsinner@alien.top 1 points 2 years ago (1 children)
[–] AmruthPillai@alien.top 1 points 2 years ago

Thank you :)

[–] uekiamir@alien.top 1 points 2 years ago (1 children)

Why does it need authentication? In fact, why need a backend at all and not just fully client-side?

load more comments (1 replies)
[–] ScoobieRex208@alien.top 1 points 2 years ago

This looks great! Looking forward to setting it up, thanks for sharing!

[–] ajnerd@alien.top 1 points 2 years ago (1 children)

This is so cool. I'm excited to set this up on Docker, but I couldn't find the Docker Compose or installation instructions on your page. Any chance you could point me in the right direction? Thanks a bunch!

[–] JackDostoevsky@alien.top 1 points 2 years ago

perfect timing, i just got laid off a couple weeks ago lol

[–] wonderful-secret1519@alien.top 1 points 2 years ago (1 children)

Is there an upgrade breaking changes from v3.x to 4.0 if upgrading a self-hosted instance using docker?

[–] AmruthPillai@alien.top 1 points 2 years ago

Yes, unfortunately it's not a straightforward upgrade as there are a lot of things changed since V3 to V4. What I'd suggest is to extract or export your resume json from your running V3 instance and store it locally. Once you have v4 running, simply import the JSON back into the app.

Also it should be pointed out that the name of the image tag has changed. There is no client and server anymore, but just latest.

[–] ThaFresh@alien.top 1 points 2 years ago

this is awesome! well done

[–] pinkSh4d0w@alien.top 1 points 2 years ago

Hi, could you include a docker-compose file to the repository?

[–] Marcosaurios@alien.top 1 points 2 years ago

Damn it that's awesome! A few weeks ago I was thinking to build something similar, glad you take the lead! Will give it a go and share my experience!

[–] ovizii@alien.top 1 points 2 years ago (1 children)

Do you have upgrade instructions for users who were running it with this image?

​

image: amruthpillai/reactive-resume:server-latest

​

Will it break if I just do a docker compose pull?

[–] AmruthPillai@alien.top 1 points 2 years ago (2 children)

Yes, unfortunately it's not a straightforward upgrade as there are a lot of things changed since V3 to V4. What I'd suggest is to extract or export your resume json from your running V3 instance and store it locally. Once you have v4 running, simply import the JSON back into the app.

Also it should be pointed out that the name of the image tag has changed. There is no client and server anymore, but just latest.

load more comments (2 replies)
[–] stefaniststefan@alien.top 1 points 2 years ago

The delaying of making my resume becouse i was to lazy actually paid off

[–] feythfx@alien.top 1 points 2 years ago (1 children)

Is there a way to get the old v1 onyx layout back?

load more comments (1 replies)
[–] privacyplsreddit@alien.top 1 points 2 years ago (1 children)

this looks great!

Question / Potential feature request if it doesn't exist

there used to be a free resume service called rhubarb that'd let you write a bunch of bullet points and swap them in and out of your resume depending on the job you're applying to, so you'd essentially have one base resume that you could make variants of quickly and easily. their implementation let you click the "skills" section or the "work experience" section and a side bar would open up with your "bank" of all the skills or experience snippets you'd written and you'd simply click the plus or minus button to add or remove them for a specific "variant" of a resume you were working on.

this was insanely useful in tech jobs where you'd have experience with like 20 different pieces of tech but a specific job you'd apply to would only use 10 and you could only fit like 15ish on your resume so you'd swap them around depending on the specific job you're applying to. do you guys have any feature like this where you support quickly making variations of a base resume to more custom tailor it to a singular position?

It'd also let you track the jobs you've applied to by uploading the Job description (just simple copy and pasting of the page into a rich text editor, no link scraping or formatting or anything) and it'd give you basically an "match" score on how good the specific variant of your resume aligns with the skill sets posted for that particular position's job description. This part was probably just a simple python off-the-shelf machine learning script that does NTM or LDA or something, it wasn't amazing, and with chatgpt integration already in your app, you could probably do something a lot better for a lot lower effort.

if these features don't exist in your app, adding them i think would make your app the resume app, because in the current job market, it's becoming more and more of the norm to shoot out dozens of resumes to land a single bite, and more and more, those resumes need to be custom tailored to the position especially in the age of chatgpt mass produced resumes. Even in tech, if you aren't custom tailoring your resume for each application your prospects of getting a call back are greatly diminished.

So really this creates two problems your app could solve, easily customizing a "base" resume and keeping track of which job postings you've sent which resume to, both of these could be super overengineered, or just simple solutions, and both of these would make your app amazing if it doesn't have either!

[–] AmruthPillai@alien.top 1 points 2 years ago

The features you're asking for already exist in the app. You should be able to create a resume with all section items, and duplicate the resume for a specific job. Now, you have the option to hide certain items from each section or hide a section altogether.

There's also another interesting feature specific for this use case. You can create a base resume and then lock it, ensuring no further changes are made to it by mistake. Another feature is that you can add personal notes to each resume, for example a link to the job description you applied to.

[–] FUCKUSERNAME2@alien.top 1 points 2 years ago (2 children)

This looks awesome. Is there any extra setup required for saving to PDF? I just spun it up with the simple.yml compose file and PDF save does not work.

Haven't looked into error logs at all yet because I'm busy, just wanted to check out the app quickly.

[–] AmruthPillai@alien.top 1 points 2 years ago

There's absolutely no extra setup necessary, if all of the services are running correctly. The error might just be related to networking. You can check out the hosted instance and take it for a spin to validate the product, and then when you have the time debug those errors with self-hosting it. I personally use the docker swarm compose template to deploy the production application and it works right out of the box.

[–] BreadfruitThen4500@alien.top 1 points 2 years ago

You need put the bucket name in the storage url

example: STORAGE_URL: http://localhost:9000/default

[–] likely-high@alien.top 1 points 2 years ago (1 children)

What's the difference between a rΓ©sumΓ© and a CV and can this do both?

[–] AmruthPillai@alien.top 1 points 2 years ago

I have always assumed that the two words mean the same but as specific to a region. There's no reason why you can't make your resume look like the way you want it to, especially because you can create custom sections that pertain to your industry.

[–] JustDalek_@alien.top 1 points 2 years ago (2 children)

I cheeked out the homepage and saw a photo on the header. Shouldn't you discourage use of an image on a resume?

doesn't that put some people at risk to racial bias?

[–] p0op@alien.top 1 points 2 years ago

Depending on the country, adding an image to your resume is still pretty standard.

[–] AmruthPillai@alien.top 1 points 2 years ago

Entirely up to the user. All of the templates adapt depending on whether there's a picture or not, so no one's experience is hindered. But it's true, it is discouraged in some regions, for good reason, but also expected in many other regions or industries.

[–] soyasoya5@alien.top 1 points 2 years ago (1 children)

This is great! I have a feature request if you don't mind

Can the app be password protected? E.g: Require password upon entering $PUBLIC_URL but not for public resumes. I don't want the app to be public but still want it available over the internet.

I tried adding basic auth to my reverse proxy and it seems to break the app.

[–] AmruthPillai@alien.top 1 points 2 years ago (1 children)

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.

load more comments (1 replies)
[–] Moehrenstein@alien.top 1 points 2 years ago

Is the github/google part at the end necessary or can it get commented out for testing? (Tried to spin up simple.yml with them commented out and had no luck.)

[–] Ruuddie@alien.top 1 points 2 years ago

Really great tool, thanks! I accidentally started of with a wrong old docker container, that wasn't v4. It did have some issues, that are fixed in v4 now, so that's great!

I really love the old 'Onyx' layout though. The ovals that contain 'skills' and 'hobbies' make it look so clean. I can't find the same layout in the new v4.

[–] gentoorax@alien.top 1 points 2 years ago (1 children)

Looks great but needs a dark theme πŸ˜‰

[–] AmruthPillai@alien.top 1 points 2 years ago

You can switch themes in the settings page, under "Profile".

[–] brando56894@alien.top 1 points 2 years ago

After 5 years I got laid off and had to rebuild mine, using a template from a "professional" that I hired like 7-9 years ago. I'll definitely use this to update mine!

[–] sexyshingle@alien.top 1 points 2 years ago

curios to see how well a PDF resume from this fares thru the various ATS's that are out there

[–] ektorasdj@alien.top 1 points 2 years ago (2 children)

Hello! Thank you for this great app. Just a quick question, how do so i disable new sign ups? (I have disabled github and google env variables but when trying to use the old variables PUBLIC_FLAG_DISABLE_SIGNUPS it doesn't work for email_auths).

load more comments (2 replies)
load more comments
view more: next β€Ί