Skip to content

The bot is designed to assist with job searching and recruitment in the IT industry. Users can take on one of two roles: Job Seeker (looking for a job) or Employer (looking for candidates). It offers a user-friendly interface for creating profiles, browsing vacancies and resumes, and managing personal or company listings.

License

Notifications You must be signed in to change notification settings

unSoto/DevConnect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– DevConnect - IT Job Search Telegram Bot

DevConnect is a modern Telegram bot designed to help with job searching and employee hiring in the IT field. The platform provides a convenient interface for creating profiles, viewing vacancies and resumes, and managing your career.

Bot Preview

✨ Features

For Job Seekers πŸ”

  • Resume Creation - convenient form for entering personal information
  • Vacancy Viewing - navigation through available job offers
  • Profile Management - editing and deleting resumes
  • User-Friendly Interface - intuitive menu with buttons

For Employers 🏒

  • Vacancy Creation - detailed job description and requirements
  • Resume Viewing - searching for suitable candidates
  • Vacancy Management - editing and deleting job postings
  • Contact Information - direct contacts for communication

πŸš€ Quick Start

βš™οΈ Setup After Upload

  1. Get bot token:

    • Write to @BotFather in Telegram
    • Send /newbot and follow instructions
    • Save the received token
  2. Create config.py file:

    # Main configuration
    import os
    API_TOKEN = os.getenv("API_TOKEN", "YOUR_TOKEN_HERE")
  3. Or use environment variables:

    export API_TOKEN="your_token"
    python src/main.py

Prerequisites

  • Python 3.11+
  • Telegram Bot Token (get from @BotFather)

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd DevConnect
  2. Create virtual environment:

    python -m venv .venv
    source .venv/bin/activate  # Linux/Mac
    # or
    .venv\Scripts\activate     # Windows
  3. Install dependencies:

    pip install -r requirements.txt
  4. Configure the bot:

    • Open src/config.py
    • Replace API_TOKEN with your token from BotFather
  5. Run the bot:

    python src/main.py

πŸ“ Project Structure

DevConnect/
β”œβ”€β”€ assets/                 # Graphic resources
β”‚   β”œβ”€β”€ welcome.png        # Welcome image
β”‚   β”œβ”€β”€ resume.png         # Resume image
β”‚   └── vacancy.png        # Vacancy image
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main.py           # Application entry point
β”‚   β”œβ”€β”€ config.py         # Configuration (API token)
β”‚   β”œβ”€β”€ db.py            # Database operations
β”‚   β”œβ”€β”€ utils.py         # Helper functions
β”‚   └── handlers/        # Command handlers
β”‚       β”œβ”€β”€ welcome.py   # Welcome menu
β”‚       β”œβ”€β”€ seeker.py    # Job seeker functionality
β”‚       └── employer.py  # Employer functionality
β”œβ”€β”€ requirements.txt     # Python dependencies
β”œβ”€β”€ devconnect.db       # SQLite database
└── README.md           # Documentation

🎯 Usage

Getting Started

  1. Start the bot with /start command
  2. Choose role: "πŸ”Ž Find Work" or "πŸ§‘β€πŸ’Ό Find Employee"
  3. Follow the menu instructions

For Job Seekers

Creating Resume:

  • Click "πŸ“ Create Resume"
  • Fill in information:
    • Name
    • Specialization
    • Work experience
    • Skills
    • Contacts

Viewing Vacancies:

  • Click "πŸ“‹ View Vacancies"
  • Use navigation buttons β¬…οΈβž‘οΈ to browse
  • Each vacancy contains:
    • Company name
    • Position
    • Job requirements
    • Work conditions
    • Contacts

For Employers

Creating Vacancy:

  • Click "πŸ“ Create Vacancy"
  • Fill in information:
    • Company name
    • Position
    • Candidate requirements
    • Work conditions
    • Contacts

Viewing Resumes:

  • Click "πŸ‘₯ View Resumes"
  • Browse candidate profiles
  • Each profile contains:
    • Specialist name
    • Specialization
    • Work experience
    • Skills
    • Contacts

βš™οΈ Configuration

Getting API Token

  1. Write to @BotFather in Telegram
  2. Send /newbot command
  3. Choose bot name
  4. Copy the received token
  5. Paste token into src/config.py

Database Setup

SQLite database is created automatically on first launch. It contains:

  • resumes table for job seeker resumes
  • vacancies table for employer vacancies
  • Test data for demonstration

πŸ› οΈ Technologies

  • Python 3.11+ - main programming language
  • aiogram 3.22.0 - framework for Telegram bots
  • SQLite - built-in database
  • magic-filter - for message filtering
  • aiofiles - asynchronous file operations
  • aiohttp - HTTP client
  • pydantic - data validation

πŸ“Š Development Opportunities

  • Matching - automatic job/candidate matching
  • Filters - search by technologies, experience, salary
  • Notifications - alerts about new vacancies/resumes
  • Admin Panel - web interface for bot management
  • Statistics - usage analytics
  • Multilingual - support for multiple languages
  • Integrations - connection with HH.ru, LinkedIn and other platforms

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/new-feature)
  3. Commit changes (git commit -am 'Add new feature')
  4. Push changes (git push origin feature/new-feature)
  5. Create Pull Request

πŸ“„ License

This project is distributed under the DevConnect License with restrictions.

βœ… ALLOWED FOR FREE:

  • Downloading and personal use
  • Studying code for educational purposes
  • Demonstrating in portfolio (with author attribution)
  • Distributing original version

❌ PROHIBITED WITHOUT AUTHOR CONSENT:

  • Commercial use
  • Code modification
  • Creating derivative products
  • Attribution theft

Details in LICENSE file.

πŸ“ž Contacts


DevConnect - your reliable assistant in the world of IT career! πŸš€

About

The bot is designed to assist with job searching and recruitment in the IT industry. Users can take on one of two roles: Job Seeker (looking for a job) or Employer (looking for candidates). It offers a user-friendly interface for creating profiles, browsing vacancies and resumes, and managing personal or company listings.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages