LinkLiberate is a URL shortener that is free and open source. It is built with Python, powered by FastAPI.
![Version](https://img.shields.io/badge/Version-1.0-brightgreen.svg) ![Code Coverage](https://img.shields.io/codecov/c/github/FOSS-Community/LinkLiberate) ![License](https://img.shields.io/badge/License-MIT-blue.svg) ![GitHub Issues](https://img.shields.io/github/issues/FOSS-Community/LinkLiberate) ![GitHub Pull Requests](https://img.shields.io/github/issues-pr/FOSS-Community/LinkLiberate) ![Release Date](https://img.shields.io/github/release-date/FOSS-Community/LinkLiberate) ![Commits](https://img.shields.io/github/commit-activity/m/FOSS-Community/LinkLiberate) ![Last Commit](https://img.shields.io/github/last-commit/FOSS-Community/LinkLiberate) ![Contributors](https://img.shields.io/github/contributors/FOSS-Community/LinkLiberate) ![Repo Size](https://img.shields.io/github/repo-size/FOSS-Community/LinkLiberate) ![Code Size](https://img.shields.io/github/languages/code-size/FOSS-Community/LinkLiberate) ![Code Style: Black](https://img.shields.io/badge/code%20style-black-000000.svg)
python3
pdm
This project is designed to be compatible with specific versions of Python for optimal performance and stability.
❗️ For the best experience and performance, it is recommended to use the version mentioned above.
Before diving into the project, ensure that you have the correct Python version installed. To check the version of Python you currently have, execute the following command in your terminal:
python --version
pyenv
Protip: Managing multiple Python versions is a breeze with pyenv. It allows you to seamlessly switch between different Python versions without the need to reinstall them.
If you haven't installed pyenv
yet, follow their official guide to set it up.
Once you have pyenv
ready, install the recommended Python version by running:
pyenv install 3.11.6
When you navigate to this project's directory in the future,
pyenv
will automatically select the recommended Python version, thanks to the.python-version
file in the project root.
Using docker-compose:
You can also use docker-compose to run the project locally by running the following command:
git clone https://github.com/FOSS-Community/LinkLiberate.git
cd LinkLiberate
docker-compose up
PDM (Python Development Master) is utilized for dependency management in this project. To set up and run the project:
Installing PDM: Before you begin, ensure you have PDM installed. If not, refer to the official documentation to install PDM.
Clone the Repository: Get the project source code from GitHub:
git clone https://github.com/FOSS-Community/LinkLiberate.git
Navigate to the Project Directory:
cd LinkLiberate
Install Dependencies: Use PDM to install the project's dependencies:
pdm install
Start the Project: Use PDM to run the project:
pdm run start
To ensure the code quality and functionality of the project, follow the steps below:
pre-commit
Before making any commits, it's essential to ensure that your code meets the quality standards. This project utilizes pre-commit
hooks to automatically check your changes before any commit.
Install the pre-commit hooks with the following command:
pre-commit install
To ensure the project's functionality, you should run all the provided tests. Execute the following command to run the tests:
pdm run test
These endpoints typically return the health status or readiness of the server, helping in diagnostics and monitoring.
❗️Important: Please read the Code of Conduct and go through Contributing Guideline before contributing to paste.py