1 unstable release

0.1.0 May 30, 2023

#29 in #proposal

MIT license

56KB
1.5K SLoC

Rust 1K SLoC // 0.1% comments Shell 96 SLoC SQL 72 SLoC // 0.0% comments TypeScript 25 SLoC // 0.3% comments

Contract Stream - The Job Searching Platform

Save time when you're searching for a new contract. Contract Stream keeps you updated with the most relevant job posts day to day, allowing to you keep track of market trends, and giving you the tools to tailor your job search specifically to you. One platform for every platform.

Usage

We are currently working on a desktop application to enable you to scrape the lastest job posts from any website. Stay updated with the latest information here!

Features

  • User registration and login for a personalized experience.
  • Advanced search capabilities with support for keywords and resume-based filtering.
  • Secure data handling and end-to-end encryption to ensure privacy.
  • Saving and managing multiple resumes to cater to various job applications.
  • Organizing and tracking active job searches.
  • Viewing and managing pending job actions such as rejecting or accepting proposals.

Future features

  • Automated job application processing; automatically fill in basic infomation within job application sites, no more manually uploading your resume to 5 different applications.
  • More data sources for jobs (currently only one platform)
  • Access to a blog section for career advice, industry trends, and other helpful resources.
  • A forum for users to engage in discussions and share experiences with fellow job seekers.

Prerequisites

  • Git
  • Rust 1.55.0 or later
  • A PostgreSQL database

Installation

  1. Clone the repository:
https://github.com/sshmendez/ContractStream.git
cd ContractStream
  1. Set up the PostgreSQL database:
  • Create a new database for the platform.
  • Execute the SQL scripts located in the migrations folder to set up the necessary tables.
./initdb.sh --prod --create

This script runs sqlx, creating a database and initializing every table.

  1. Configure the platform:
  • Create a .env file in the root directory with the following contents:
DATABASE_URL=postgres://username:password@localhost/db_name

Replace username, password, and db_name with the appropriate values for your PostgreSQL database.

  1. Build and run the platform:
cargo run

The platform will be accessible at http://localhost:8080.

License

All rights reserved. Copyright (c) 2023

Acknowledgements

  • Actix Web - A powerful, pragmatic, and extremely fast web framework for Rust.
  • Sqlx - A Sql library boasting compile-time query validation
  • Serde - A framework for serializing and deserializing Rust data structures efficiently and generically.
  • UUID - A library providing support for Universally Unique Identifiers (UUIDs) in Rust.
  • Thiserror - A library for creating custom error types in Rust.

Dependencies

~35–49MB
~1M SLoC