Skip to main content

Feature flags server

Project description

FeatureFlags service

Overview

Server requires Python >= 3.11. Server consists of actual web application and API handlers (HTTP, gRPC):

  • Web application:

    • fastapi_ + hiku_ + aiopg_ on backend
    • react.js_ + Apollo_ on frontend
  • gRPC API handler:

    • grpclib_ + hiku_
  • HTTP API handler:

    • fastapi_ + hiku_

ADR

Check important architecture decisions in adr/ directory.

Installation

On PyPi: https://pypi.org/project/evo-featureflags-server

To install client library follow instructions here: evo-featureflags-client

Development

Run all this commands:

  • lets postgres
  • lets apply-migrations-dev
  • lets apply-seeds-dev # if you have data in seeds/ directory
  • lets web # in separate terminal
  • lets ui # in separate terminal

To start API handlers (not required for web application):

  • lets http # in separate terminal
  • lets rpc # in separate terminal

To build UI and copy it to web/static directory:

  • lets build-copy-ui-bundle

To release package:

  • lets release 1.0.0 --message="Added feature"

Pre-commit

./scripts/enable-hooks.sh

./scripts/disable-hooks.sh

TODO:

  • add docs, automate docs build
  • add more tests

.. _fastapi: https://github.com/tiangolo/fastapi .. _hiku: https://github.com/vmagamedov/hiku .. _aiopg: https://github.com/aio-libs/aiopg .. _grpclib: https://github.com/vmagamedov/grpclib

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

evo_featureflags_server-1.0.4.tar.gz (391.3 kB view details)

Uploaded Source

Built Distribution

evo_featureflags_server-1.0.4-py3-none-any.whl (412.6 kB view details)

Uploaded Python 3

File details

Details for the file evo_featureflags_server-1.0.4.tar.gz.

File metadata

File hashes

Hashes for evo_featureflags_server-1.0.4.tar.gz
Algorithm Hash digest
SHA256 fcbb4e7a877fd322415979eda102e3d33b10d72ff40440e65fa5b0f4870f39e9
MD5 6fb65655c6ca8cd93ac8bb3b061223a4
BLAKE2b-256 e4fbe75cb47a2c3d7104ea8ce85b21e78ab65a4657abe7574d8ad0183f1685c7

See more details on using hashes here.

File details

Details for the file evo_featureflags_server-1.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for evo_featureflags_server-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 dd3aff46f57f9d13042ff301dcd71f44d61bbb7db6837658c2e90bca4f255024
MD5 d95fe7c0a335e7f17b0199ffa4bc9533
BLAKE2b-256 e5cb23b857655730bf818018ccd5832aec19e90c4aeae984ccd5b6bdb90e8141

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page