GophKeeper

module
v0.0.0-...-d67b91f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 23, 2022 License: MIT

README

Менеджер паролей GophKeeper

Диплом на курсе "Продвинутый Go-разработчик"

Общие требования

GophKeeper представляет собой клиент-серверную систему, позволяющую пользователю надёжно и безопасно хранить логины, пароли, бинарные данные и прочую приватную информацию.

Полное описание технического задания на Яндекс.Практикуме

Реализация

Проект представляет собой сервеное и клиентское приложение

Серверная часть

Архитектура

Серверная часть состоит из самого приложения и хранилища Postgres, кэширование запросов аутентификации происходит в памяти.

Запуск

Для бепасной работы необходима генерация публичных и приватных ключей для шифрования токенов пользователей.

cp .env.sample .env
make compose-up

Описание API серверной части в формате swagger - http://localhost:8080/swagger/index.html

Клиентская часть

Для клиента разработано cli-приложение, которое локально сохраняет данные пользователя в зашифрованном по паролю виде.

Для работы клиента необходимо наличие конфигурационного ./config/client/config.yml файла

Перечень доступных пользователю команд:

Usage:
  gophkeeper-client [flags]
  gophkeeper-client [command]

Available Commands:
  addcard     Add card
  addlogin    Add login
  addnote     Add note
  completion  Generate the autocompletion script for the specified shell
  delcard     Delete user card by id
  dellogin    Delete user login by id
  delnote     Delete user note by id
  getcard     Show user card by id
  getlogin    Show user login by id
  getnote     Show user note by id
  help        Help about any command
  init        Init local storage
  login       Login user to the service
  logout      Logout user
  register    Register user to the service
  showvault   Show user vault
  sync        Sync user`s data

Flags:
  -h, --help   help for gophkeeper-client
Выполнил

Directories

Path Synopsis
cmd
config
docs
server
Package server GENERATED BY SWAG; DO NOT EDIT This file was generated by swaggo/swag
Package server GENERATED BY SWAG; DO NOT EDIT This file was generated by swaggo/swag
internal
server/app
Package app configures and runs application.
Package app configures and runs application.
server/controller/http/v1
Package v1 implements routing paths.
Package v1 implements routing paths.
server/usecase
Package usecase implements application business logic.
Package usecase implements application business logic.
pkg
httpserver
Package httpserver implements HTTP server.
Package httpserver implements HTTP server.
postgres
Package postgres implements postgres connection.
Package postgres implements postgres connection.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL