Skip to content

mokira3d48/PyOrigin

ORIGIN PROJECT

Cloneable referential to initialize a Python project based on this template with the best practice. This is a pre-configured and read-to-used project to create deployable python libraries or application much more easily.

Table of Contents

  • Description: contents the project description.
  • Features: contents the descriptions of each features implemented and available on this software.
  • Installation: contents the process of the installation for two plateforms.
    • For Linux: here is the process of installation of this software on linux.
    • For Windows: here is the process of installation of this software on Windows.
  • Usage: all details of the use cases usefull to get starting this software.
  • Tests: all details to run unittest.
  • To contribute: usefull information for the person who want to contribute to this project.
  • Licence: description of the license of this software.
  • Contact: developers contacts.

Description

My Python project is a simple application that allows users to create, read, update and delete the tasks. It is designed to be easy to use and expand.

Features

  • Add tasks.
  • Mark tasks as complete.
  • Delete tasks.
  • Show all the tasks.

Installation

To install the project, make sure you have Python 3.8 or later version and pip installed on your machine. And then run the following command lines.

For Linux

git clone https://github.com/mokira3d48/PyOrigin my_project;
cd my_project;
sudo rm -r .git;
git init;  # To create a new instance of git repository

OS dependences

Ubuntu

Open your terminal and run following command lines to add the deadsnakes PPA to your system:

sudo apt update;
sudo apt install software-properties-common -y;
sudo add-apt-repository ppa:deadsnakes/ppa -y

Refresh your package list to include the deadsnakes PPA and then install Python 3.10:

sudo apt update;
sudo apt install python3.10;
python3.10 --version

NOTE: Do not change the default Python version of Ubuntu, as it may break system tools that depend on it.

Debian or Kali

In first, install the following dependences on your computer.

sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev

And then, we can run the following command to install pyenv directly via APT on your computer.

sudo apt install pyenv

Or run the following command lines, to clone and install pyenv from its souce code.

git clone https://github.com/pyenv/pyenv.git ~/.pyenv;
 
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc;
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc;
echo 'eval "$(pyenv init --path)"' >> ~/.bashrc;
echo 'eval "$(pyenv init -)"' >> ~/.bashrc;
source ~/.bashrc;

Now, runing the following command line, we can use pyenv to install the version of Python what we want to install.

pyenv install 3.10.18;  # Here, we install Python 3.10.18.
sudo ln -s $HOME/.pyenv/versions/3.10.18/bin/python3 /usr/local/bin/python3.10

Project dependences

  1. sudo apt install cmake python3-venv Install Cmake and Virtual env;
  2. python3 -m venv .venv create a virtual env into directory named env;
  3. source .venv/bin/activate activate the virtual environment named .venv;
  4. make install install the requirements of this package;
  5. make dev_install or pip install -e . install the package in dev mode in virtual environment;
  6. Run make test or pytest to execute the unit test scripts located at tests directory.

For Windows

git clone https://github.com/mokira3d48/PyOrigin my_project
cd my_project

And then, delete the hidden directory named .git located at the root of the directory project.

And then,

  1. Install python for windows;
  2. Open your command prompt;
  3. Run python -m venv .venv to create a virtual env into directory named .venv;
  4. Run .venv\Scripts\activate to activate the virtual environment;
  5. Run pip install -r requirements.txt to install the requirements of this package or project;
  6. Run pip install -e . install the package in dev mode in virtual environment;
  7. pytest run the unit test scripts located at tests directory.

Usage

Here is an example how to add a new task:

from package_name.utils import get_file_paths_list


def main():
    """Main function
    """
    file_paths = get_file_paths_list('./')
    file_paths = sorted(file_paths)
    print("List of file paths:", file_paths)


if __name__ == '__main__':
    main()

Tests

To execute the unittest, make sure you have pytest package installed, and then run the following command line:

make test 

or

pytest

To contribute

Contributions are welcome! Please follow these steps:

  1. Create a new branch for your feature (git checkout -b feature/my-feature);
  2. Commit your changes (git commit -m 'Adding a new feature');
  3. Push toward the branch (git push origin feature/my-feature);
  4. Create a new Pull Request or Merge Request.

Licence

This project is licensed under the MIT License. See the file LICENSE for more details, contact me please.

Contact

For your question or suggestion, contact me please:

About

Cloneable referential to initialize a Python project with the best practice.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published