Repository navigation
Releases: AienTech/dossier
Release list
Dossier 1.4.2
Dossier 1.4.2
A small release: the usage ping comes with a way to have its records removed, and the demo data in the README is plainly made up.
What's new
- Usage ping, removal on request: to have the rows kept for your install removed, send its ID (Settings → About shows it) to dossier.app@pm.me, with
DOSSIER_TELEMETRY=offset first so nothing new arrives. You get a confirmation once they're gone. The README's Privacy section and Settings → About say so too. - Demo data: the sample profile, its reference and every example in the README are now Jane Doe and John Doe at example.com, so nothing in Dossier's screenshots, recording or seed data can be mistaken for a real person or domain. The screenshots and the recording show this version.
Upgrading
Take a backup, then deploy ghcr.io/aientech/dossier:v1.4.2 (see Upgrading in the README). Nothing changes in the database or in your configuration. If you loaded the demo data with prisma db seed -- --demo, it keeps the old sample until you load it again with --demo --reset.
Dossier 1.4.1
Dossier 1.4.1
Dossier has its own icon now, and the README walks you through running it on your own server, step by step.
What's new
- App icon: a "D" in the serif of Dossier's name, in place of the default icon, in the browser tab, in bookmarks and on a phone's home screen.
- Self-hosting guide: the README takes a fresh VPS to Dossier on your own domain with HTTPS in four steps: the server, Docker, the database and the app. It also has a short recording of the app in use, and its screenshots show this version.
- Job search from
.env:compose.production.ymlnow passesDOSSIER_JOBS_SOURCE,DOSSIER_JSEARCH_KEY,DOSSIER_JSEARCH_HOST,DOSSIER_ADZUNA_APP_IDandDOSSIER_ADZUNA_KEYon to Dossier. Before, the job search could only be set up in Settings → Job search with Compose. - CapRover: the README now only covers Docker Compose. Dossier still runs on CapRover as before; upgrade there by deploying the new image by name.
Upgrading
Take a backup, then deploy ghcr.io/aientech/dossier:v1.4.1 (see Upgrading in the README). Nothing changes in the database or in your configuration. With Compose, fetch the new compose file only if you want to set the job search in .env (see step 3 in the README).
Dossier 1.4.0
Dossier 1.4.0
Dossier now sends a usage ping, so the project can tell how many installs are in use and how often. It sends a random ID and the version number, once a day, and nothing else. You can switch it off.
What's new
- Usage ping: on each day you use Dossier, your server sends
telemetry.dossier.aien.mea random install ID and the version number, once. Nothing else is sent: no profile, documents, applications, settings, server address or time of day.- The ID: made at random and kept in your database. It isn't derived from anything about you or your server, and exports leave it out.
- What's kept: the receiver keeps the ID, the day and the version for a year, and not the address the ping came from.
- Where to see it: Settings → About shows whether the ping is on and the ID it sends. While it's on, the server says so in its log at startup.
- Switching it off: set
DOSSIER_TELEMETRY=off.
Upgrading
If you'd rather not send the usage ping, set DOSSIER_TELEMETRY=off first (CapRover: App Configs → Environment Variables; Compose: your .env, which compose.production.yml now passes on).
Then take a backup and deploy ghcr.io/aientech/dossier:v1.4.0 (see Upgrading in the README). Nothing changes in the database.
Dossier 1.3.0
Dossier 1.3.0
Your funnel on the dashboard is now a Sankey diagram, so besides how far your applications got, you can see where the ones that stopped at each stage ended up.
What's new
- Funnel as a Sankey diagram: each stage, from Sent to Accepted, is as tall as the applications that reached it, and they flow on to the next stage. The ones that went no further branch off at the stage they stopped at, into how they stand now: still open (waiting to hear back, in screening, interviewing or deciding on an offer), rejected, declined, or archived while still open.
- More on hover: point at a stage or a branch to see how many it holds and what share of the stage that is. "Show the numbers" under the diagram has every count as a table.
- The funnel still follows the time filter, and closed and archived applications still count at the furthest stage they reached.
Upgrading
Take a backup, then deploy ghcr.io/aientech/dossier:v1.3.0 (see Upgrading in the README). Nothing changes in the database or in your configuration.
Dossier 1.2.0
Dossier 1.2.0
Each application now has an email to send it with, written for you and ready to paste into your mail app, and the board keeps to your window however many applications it holds.
What's new
- Email tab: every application has a new Email tab, between Cover letter and Job posting. "Write the email" writes a short note to go with your resume and cover letter, addressed to whoever the posting says to send applications to, in the application's tone and language. Copy the recipient, the subject and the message one by one, or open the whole email in your mail app. The tailored resume and cover letter are listed right below it to download and attach (a mail link can't attach them for you).
- Only real addresses: the recipient's address is only ever one the posting itself contains. When the posting doesn't give one, the tab says so and you type it in; writing the email again keeps it.
- Change it like the documents: edit or regenerate the subject or the message, ask the chat for changes ("shorter", "more formal"), rewrite the whole email with Undo, or go back to an earlier version from its history.
- Board: the board fits the window. Each column's cards scroll on their own under its heading, so a long column no longer stretches the page.
Upgrading
Take a backup, then deploy ghcr.io/aientech/dossier:v1.2.0 (see Upgrading in the README). The database is updated on start; nothing needs to change in your configuration.
Dossier 1.1.0
Dossier 1.1.0
Your sign-in password is no longer kept in plain text. DOSSIER_PASSWORD now holds a hash of it, so reading the server's environment doesn't reveal it. This release needs one change to your configuration before it starts: see Upgrading below.
What's new
- Password hash:
DOSSIER_PASSWORDtakes an argon2id hash of your password instead of the password itself. Make one withdocker run --rm -it ghcr.io/aientech/dossier hash-password: it asks for the password twice without showing it and prints the line to paste. The server doesn't start whileDOSSIER_PASSWORDis the password itself, and its log says how to make the hash. - Forgot your password? The sign-in page now says what to do: make a hash of a new one with
hash-password, set it and restart.
Upgrading
Take a backup first (see Upgrading in the README). Then:
- Make the hash with the new image:
docker run --rm -it ghcr.io/aientech/dossier:v1.1.0 hash-password. Type your current password to keep it. - CapRover: set
DOSSIER_PASSWORDto the hash in App Configs, save, and deployghcr.io/aientech/dossier:v1.1.0straight away: until then, 1.0 takes the hash itself as the password. Compose: put the hash in.env, thendocker compose -f compose.production.yml pull && docker compose -f compose.production.yml up -d.
Every browser is signed out once and signs in again with the same password. If the new version doesn't start and its log says "DOSSIER_PASSWORD must be a hash of your password", the variable still holds the password itself.
Dossier 1.0.1
Dossier 1.0.1
The README now shows the app: screenshots of the dashboard, an application with its tailored resume, the match against a posting, the board, Find jobs, the base resume and the profile.
The app itself is unchanged since 1.0.0, apart from its version number.
Upgrading
Nothing to do. If you like the version number to match, deploy ghcr.io/aientech/dossier:v1.0.1 (see Upgrading in the README).
Dossier 1.0.0
Dossier 1.0.0
The first release of Dossier: your job search, on your own server. It keeps your career history in one profile, turns it into a clean resume, and, for every job you apply to, reads the posting, shows how you match and drafts a tailored resume and cover letter that only use facts from your profile.
What's in it
- Profile: basics, skills and languages, experience, education and references, with a strength meter. Start it from an existing resume (PDF, Word or Markdown).
- Base resume: six themes and a theme builder, previewed on the pages they print on and rendered to PDF on the server.
- Find jobs: search postings through JSearch, Adzuna or Germany's Bundesagentur für Arbeit, save or dismiss them, and start an application from one.
- New application: paste a posting; Dossier reads it, matches it against your profile and writes a tailored resume and cover letter in the tone you pick.
- Refine: change them in a chat, edit or regenerate any part, undo AI changes or go back to an earlier version, and keep private notes.
- Track: a board, a table and a dashboard with your funnel, a week-by-week chart and upcoming interviews.
- Your data: export and import everything as one file, nightly backups, and Delete everything.
- The model you choose: a local model through Ollama, so nothing leaves your server, any OpenAI-compatible API, or Anthropic.
Install
The image is ghcr.io/aientech/dossier:v1.0.0 (also latest). The README explains how to run it on CapRover or with Docker Compose.
Known limitations
- Desktop only: made for a laptop or desktop browser, not for phones.
- Single user: one password and one profile.
- English interface: documents can be written in other languages, but the app itself is in English.
- One instance: run a single copy of the app per database.
Dossier is free software under the GNU Affero General Public License v3.0.