Skip to content

๐ŸŒˆ Prism: a modern HR platform for candidates and HR professionals. ๐Ÿš€

License

Notifications You must be signed in to change notification settings

wtf-keaton/prism

Repository files navigation

Prism - HR Platform ๐ŸŒˆ๐Ÿ‘ฅ

Go Version Fiber Bootstrap PostgreSQL Docker

Prism is a modern HR platform designed to streamline the recruitment process, providing a seamless experience for both candidates and HR professionals. ๐Ÿš€

โœจ Features

  • For Candidates:

    • ๐Ÿ” Browse available job openings
    • ๐Ÿ“ Apply for positions
    • ๐Ÿ“Š Track application status
  • For HR Professionals:

    • ๐Ÿ“ข Create and manage job postings
    • ๐Ÿ‘€ Review candidate applications and resumes
    • ๐Ÿ”„ Manage the hiring pipeline with customizable stages
    • ๐Ÿ—„๏ธ Archive job postings

๐Ÿ› ๏ธ Technology Stack

  • Backend: Go (Golang) ๐Ÿน
  • UI Framework: Bootstrap ๐ŸŽจ
  • Database: PostgreSQL ๐Ÿ˜
  • Message Broker: Kafka ๐Ÿ“ฌ
  • Caching: Redis ๐Ÿ—ƒ๏ธ
  • Monitoring: Prometheus & Grafana ๐Ÿ“ˆ

๐Ÿ—๏ธ Microservices Architecture

Prism is built on a microservices architecture, consisting of the following services:

  1. ๐Ÿ” Auth Service
  2. ๐Ÿ‘ค User Service
  3. ๐Ÿ’ผ Vacancy Service
  4. ๐Ÿ“ฎ Api Gateway
  5. ๐Ÿ”” Notification Service
  6. ๐Ÿ–ฅ๏ธ Frontend Service

๐Ÿš€ Getting Started

Prerequisites

  • Go 1.20+
  • Docker and Docker Compose
  • PostgreSQL 13+
  • Kafka
  • Redis

Installation

  1. Clone the repository:

    git clone https://github.com/wtf-keaton/prism.git
    cd prism
    
  2. Set up environment variables:

    cp .env.example .env
    

    Edit the .env file with your configuration.

  3. Build and run all services (including frontend):

    docker-compose up --build
    
  4. The services should now be running. You can access the frontend at http://localhost:3000 and the API at http://localhost:8080.

๐Ÿ’ป Development

To run the frontend service locally for development:

  1. Navigate to the frontend service directory:

    cd services/frontend
    
  2. Install dependencies:

    go mod tidy
    
  3. Run the service:

    go run cmd/main.go
    

The frontend will be available at http://localhost:3000.

๐Ÿ“š API Documentation

API documentation is available via Swagger UI. After starting the services, you can access it at:

http://localhost:8080/swagger/index.html

๐Ÿค Contributing

We welcome contributions to Prism! Please see our Contributing Guide for more details.

๐Ÿงช Testing

To run the test suite:

go test ./...

๐Ÿ“Š Monitoring

Prometheus metrics are exposed at /metrics endpoint for each service. Grafana dashboards are available to visualize these metrics.

๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ“ž Contact

For any queries or support, please contact our team at support@libretto.store.


Made with โค๏ธ by the Prism team

About

๐ŸŒˆ Prism: a modern HR platform for candidates and HR professionals. ๐Ÿš€

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published