Skip to content

A modern employee management system built with Go and Fiber. Features employee profiles, skill tracking, and search capabilities. Docker and Kubernetes ready.

License

Notifications You must be signed in to change notification settings

patricksferraz/whoare

Repository files navigation

WhoAre - Employee Management System

Go Fiber Docker Kubernetes

License: MIT Go Report Card

📝 Description

WhoAre is a modern employee management system built with Go, designed to help organizations manage their workforce effectively. It provides a robust platform for employee registration, profile management, and skill tracking.

✨ Features

  • 🔍 Employee Search and Discovery
  • 👤 Employee Profile Management
  • 🎯 Skill Tracking and Management
  • 🔐 Secure Authentication
  • 📱 Responsive Web Interface
  • 🚀 High Performance with Fiber Framework
  • 🐳 Docker and Kubernetes Support

🚀 Getting Started

Prerequisites

  • Go 1.17 or higher
  • Docker and Docker Compose
  • Make (optional, for using Makefile commands)

Installation

  1. Clone the repository:
git clone https://github.com/patricksferraz/whoare.git
cd whoare
  1. Copy the environment file and configure it:
cp .env.example .env
  1. Run with Docker Compose:
docker-compose up -d

Or run locally:

make run

🛠️ Development

Project Structure

.
├── app/            # Application layer
│   └── front/      # Frontend handlers and views
├── config/         # Configuration files
├── domain/         # Domain models and services
├── infra/          # Infrastructure layer
├── k8s/            # Kubernetes manifests
└── utils/          # Utility functions

Available Make Commands

make run        # Run the application
make build      # Build the application
make test       # Run tests
make lint       # Run linters

🐳 Docker Support

The application is containerized and can be run using Docker Compose:

docker-compose up -d

☸️ Kubernetes Deployment

Kubernetes manifests are available in the k8s/ directory. Deploy using:

kubectl apply -f k8s/

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

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

👥 Authors

🙏 Acknowledgments

  • Fiber - Fast and efficient web framework
  • GORM - The fantastic ORM library for Go
  • Air - Live reload for Go applications

Releases

No releases published

Packages

No packages published

Languages