Skip to content

dwprz/prasorganic-user-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

Prasorganic User Service

Prasorganic User Service is one of the components in the Prasorganic Microservice architecture Built with Go (Golang). This service supports user data management operations via RESTful API and gRPC.

Tech Stack

My Skills

Features

  • User Management: Supports operations for creating, retrieving, and updating user data.

  • RESTful API: Provides a RESTful API using Fiber with various middleware for managing requests and responses.

  • gRPC: Utilizes gRPC for inter-service communication, equipped with interceptors for handling requests and responses.

  • Image Storage: Integrates with ImageKit for storing and managing user profile photos.

  • Database: Uses PostgreSQL for data storage with database migration support.

  • Caching: Redis is used for data caching.

  • Logging: Logs are recorded using Logrus.

  • Error Handling: Implements error handling to ensure proper detection and handling of errors, minimizing the impact on both the client and server.

  • System Resilience: Uses a Circuit Breaker to enhance application resilience and fault tolerance, protecting the system from cascading failures.

  • Configuration and Security: Employs Viper and HashiCorp Vault for integrated configuration and security management.

  • Testing: Implements unit testing using Testify.

License

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

This project makes use of third-party packages and tools. The licenses for these dependencies can be found in the LICENSES directory.

Dependencies and Their Licenses

  • Docker: Licensed under the Apache License 2.0. For more information, see the Docker License.

  • Docker Compose: Licensed under the Apache License 2.0. For more information, see the Docker Compose License.

  • PostgreSQL: Licensed under PostgreSQL License. For more information,see the PostgreSQL License.

  • Redis: Follows a dual-licensing model with RSALv2 and SSPLv1. For more information, see the Redis License.

  • RedisInsight: Licensed under the RedisInsight License. For more information, see the RedisInsight License.

  • GNU Make: Licensed under the GNU General Public License v3.0. For more information, see the GNU Make License.

  • GNU Bash: Licensed under the GNU General Public License v3.0. For more information, see the Bash License.

  • Git: Licensed under the GNU General Public License version 2.0. For more information, see the Git License.

Thanks 👍

Thank you for viewing my project.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages