Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Joblio

Joblio Logo

A modern, self-hosted applicant tracking system (ATS) built for job seekers.

Track applications, interviews, recruiters, follow-ups and documents from a single dashboard.

Astro React TypeScript PostgreSQL License


📖 About

Joblio is an open-source, self-hosted Applicant Tracking System designed to help developers and professionals organize their job search.

Instead of relying on spreadsheets, Joblio provides a clean dashboard to manage:

  • 📄 Applications
  • 🏢 Companies
  • 👤 Recruiter contacts
  • 📅 Interviews
  • 🏷️ Tags
  • 📊 Statistics
  • 📝 Activity timeline

Everything stays under your control.


✨ Features

Dashboard

  • Statistics
  • Follow-up reminders
  • Recent activity timeline
  • Application overview

Applications

  • Create, edit and archive applications
  • Track application status
  • Salary expectations
  • Priority management
  • Favorite applications
  • Notes & tags
  • Activity history

Companies

  • Company directory
  • Sector, size, location tracking
  • Website & LinkedIn
  • Company notes

Contacts

  • Recruiters
  • Hiring managers
  • Technical interviewers
  • Contact history

Interviews

  • Schedule interviews
  • Multiple interview rounds
  • Notes & results
  • Status tracking

Search & Filters

  • Full-text search across all entities
  • Status
  • Company
  • Source
  • Priority
  • Tags
  • Date

🚀 Tech Stack

Category Technology
Framework Astro 5
UI React
Styling Tailwind CSS v4
Components shadcn/ui
Database PostgreSQL
ORM Drizzle ORM
Validation Zod
Tables TanStack Table
Data Fetching TanStack Query
Icons Lucide
Formatter / Linter Biome

📂 Project Structure

src
├── components
│   └── ui
├── db
│   ├── client.ts
│   ├── relations.ts
│   ├── schema
│   └── migrations
├── features
│   ├── applications
│   ├── companies
│   ├── contacts
│   ├── interviews
│   ├── dashboard
│   └── settings
├── hooks
├── layouts
├── lib
├── pages
├── styles
└── types

🗄️ Database

Main entities:

  • Applications
  • Companies
  • Contacts
  • Interviews
  • Tags
  • Activities

🛠️ Development

Install dependencies

npm install

Configure environment

Create a .env file.

DATABASE_URL=postgres://user:password@localhost:5432/joblio

Generate migrations

npm run db:generate

Run migrations

npm run db:migrate

Start development server

npm run dev

🐳 Self-hosting avec Docker

Prérequis

Installation

# 1. Cloner le dépôt
git clone https://github.com/votre-utilisateur/joblio.git
cd joblio

# 2. Lancer l'application
docker compose up -d

L'application est accessible sur http://localhost:4321.

Le premier lancement :

  1. Ouvrir http://localhost:4321
  2. Créer le compte administrateur (formulaire de setup)
  3. Commencer à utiliser Joblio

Configuration

Les variables d'environnement peuvent être modifiées dans docker-compose.yml :

Variable Défaut Description
DATABASE_URL postgres://joblio:joblio@postgres:5432/joblio Connexion PostgreSQL
UPLOADS_DIR /app/dist/client/uploads Répertoire des fichiers uploadés
PORT 4321 Port de l'application

Persistance des données

Les données sont stockées dans des volumes Docker :

  • postgres_data — base de données
  • uploads — fichiers uploadés (CV, lettres, etc.)
# Sauvegarder la base de données
docker compose exec postgres pg_dump -U joblio joblio > backup.sql

# Restaurer
cat backup.sql | docker compose exec -T postgres psql -U joblio joblio

Mise à jour

git pull
docker compose up -d --build

MVP

  • Dashboard
  • Applications CRUD
  • Companies
  • Contacts
  • Interviews
  • Search
  • Filters
  • Documents

Next

  • Authentication
  • Calendar
  • Notifications
  • Email integration
  • Import job offers
  • AI-powered resume analysis
  • Browser extension
  • Mobile support

🤝 Contributing

Contributions are welcome!

If you'd like to improve Joblio:

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Open a Pull Request

Please follow the project's coding conventions and keep pull requests focused.


📜 License

This project will be released under the MIT License.


💙 Acknowledgments

Joblio is inspired by modern developer tools and productivity applications such as:

  • Linear
  • GitHub
  • Notion
  • Vercel

while remaining fully open source and self-hosted.


Made with ❤️ using Astro & PostgreSQL

About

Un ATS (Applicant Tracking System) moderne, auto-hébergé et open-source.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages