Skip to main content

Generic lib to share python code on Everysk.

Project description

Everysk Library

The Everysk Library is a one-stop solution designed to help our teams and partners streamline workflows and maximize productivity.

Many projects at Everysk rely on multiple endpoints, engines, and utilities to automate workflows, handle entities such as portfolios, datastores, reports, and files, and perform complex calculations. Adopting and maintaining each of these components individually can be both time-consuming and expensive.

To address this challenge, Everysk developed the Everysk Library: a unified Python library that bundles these capabilities into a single, convenient package.

By consolidating essential functionalities — ranging from portfolio creation to workflow automation — Everysk Lib greatly simplifies implementation and ongoing maintenance. This all-in-one toolkit ensures you have everything you need to build powerful, scalable solutions across a variety of Everysk projects.


Table of Contents

Directory Structure

Below we have the main directories that you will be working with.

flowchart TB
    EveryskLibrary(["Everysk Library"])
    SDKDir(["sdk"])
    CoreDir(["core"])
    ServerDir(["server"])
    ApiDir(["api"])
    EntitiesDir(["entities"])
    EnginesDir(["engines"])
    DatetimeDir(["datetime"])
    EveryskLibrary --> SDKDir
    EveryskLibrary --> CoreDir
    EveryskLibrary --> ServerDir
    EveryskLibrary --> ApiDir
    SDKDir --> EntitiesDir
    SDKDir --> EnginesDir
    CoreDir --> DatetimeDir

Installation

To install the Everysk library, you will need to use pip's install command:

  pip install everysk-lib

Verifying the Installation

After installing the library, it's a good practice to verify if the installation was successful. Here is how to achieve this:

1. Open a terminal

2. Start the Python interpreter by typing python and pressing Enter

3. In the Python interpreter, type the following command then press Enter:

  import everysk

If the library has been installed correctly, this command should complete without any errors. If the library is not installed or there's a problem with the installation, Python will raise a ModuleNotFoundError


Documentation

The main documentation of the Everysk Library can be founded here: Everysk Library Documentation


Running Tests

This section provides instructions on how to run tests for the project. There are two scenarios, the first one is running tests in a development environment and the second one is running tests after the library has been installed from PyPI.

Running Tests in Development Environment

In a development environment you can use the provided shell script to run the tests. The script sets up the necessary environment and then run the tests. To execute the tests, open a bash terminal and run the following command.

  ./run.sh tests

Running Tests After the Library is Installed

After the library has been installed in your project from PyPI, you can start running tests using Python's built-in unittest module. To run tests use the following command:

  python3 -m unittest everysk.core.tests

The command uses Python's unittest module as mentioned above as a script, which then runs the test in the everysk.core.tests package.


Running Tests with coverage

Code coverage us a way of measuring how many lines of code are executed while the automated tests are running.

To run tests along with a coverage report, you can use the provided shell script. The script will not only run the tests but also generate a coverage report that shows the percentage of code that was executed during the tests.

This is useful to identify sections of your code that are not being tested and may need additional tests.

1. Open a terminal in your Visual Studio Code environment.

2. Run the following command.

  ./run.sh coverage

This command executes the run.sh script with the coverage argument. The report will be displayed in the terminal after the script completed the tests.

Remember: a high coverage percentage is generally good, but 100% coverage does not ensures that your code is free from bugs or any other problem that might occur in your code. The full coverage just means that all the lines in your code were executed during the tests.


Contributing

Contributions are always welcome and greatly appreciated!

Go to the repository link and click on the Fork button to create your own copy of the everysk library.

Then clone the project in your own local machine by running the command below or using the GitHub Desktop.

  git clone https://github.com/<your-username>/everysk-lib.git everysk-yourusername

This section creates a directory called everysk-yourusername to center all your code.

After that you can change the directory by:

  cd everysk-yourusername

Create the upstream repository which will refer to the main repository that you just forked.

  git remote add upstream https://github.com/Everysk/everysk-lib.git

Now run the following commands to make sure that your clone is up-to-date with main everysk repository

  git checkout main
  git pull upstream main

Shortly after, create a new branch to add your code

  git checkout -b brand-new-feature

The command above will automatically switch to this newly created branch. At this moment your are able to make your modifications to the code and commit locally as you progress.

After all the code changes, you can submit your contribution by pushing the changes to your fork on GitHub:

  git push origin brand-new-feature

The command above ensures that all the modifications that you've made are up-to-date with your current branch.

At the end of this process you will need to make a Pull Request to the main branch.

To achieve this, go to the GitHub page of the project and click on the Pull requests tab, then click on New pull request button.

This will open a new section used to compare branches, now choose your branch for merging into the main branch and hit the Create pull request button.


License

(C) Copyright 2025 EVERYSK TECHNOLOGIES

This is an unpublished work containing confidential and proprietary information of EVERYSK TECHNOLOGIES. Disclosure, use, or reproduction without authorization of EVERYSK TECHNOLOGIES is prohibited.

Date: Jan 2025

Contact: contact@everysk.com

URL: https://everysk.com/




Back to the top

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

everysk_lib-1.6.1504.tar.gz (267.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

everysk_lib-1.6.1504-py3-none-any.whl (358.9 kB view details)

Uploaded Python 3

File details

Details for the file everysk_lib-1.6.1504.tar.gz.

File metadata

  • Download URL: everysk_lib-1.6.1504.tar.gz
  • Upload date:
  • Size: 267.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.4

File hashes

Hashes for everysk_lib-1.6.1504.tar.gz
Algorithm Hash digest
SHA256 e4dbb15c4d08f6f9feab46890fad8a3b865ef00a12fd223b239c95244e34f6e3
MD5 88049c962e2707fd78dcecd07db3c3a8
BLAKE2b-256 5057c1b3c1991fa40d0091a9c5e8532477e1273345113946df6070b43a05d7a7

See more details on using hashes here.

File details

Details for the file everysk_lib-1.6.1504-py3-none-any.whl.

File metadata

  • Download URL: everysk_lib-1.6.1504-py3-none-any.whl
  • Upload date:
  • Size: 358.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.4

File hashes

Hashes for everysk_lib-1.6.1504-py3-none-any.whl
Algorithm Hash digest
SHA256 b77f695ad741072116febf98fe081cf1bce0c5f61e8d421ca7917fc6fb96b39c
MD5 ee737a40d8b1dd19579b08c7db443f71
BLAKE2b-256 97136b0a543793f9e9fa2aad88eca3d9df22bf935851110d662335d990980bf6

See more details on using hashes here.

Supported by

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