Giter Site home page Giter Site logo

irohanrajput / linkliberate Goto Github PK

View Code? Open in Web Editor NEW

This project forked from foss-community/linkliberate

0.0 0.0 0.0 2.33 MB

LinkLiberate : A libre url shortner

Home Page: https://ll.fosscu.org

License: MIT License

Python 46.36% HTML 50.23% Dockerfile 3.41%

linkliberate's Introduction

🔗LinkLiberate🪽

LinkLiberate is a URL shortener that is free and open source. It is built with Python, powered by FastAPI.

Version Code Coverage License GitHub Issues GitHub Pull Requests Release Date Commits Last Commit Contributors Repo Size Code Size Code Style: Black

Material Bread logo


🤔 Pre-requisites

  • python3
  • pdm

🐍 Python Version Support

This project is designed to be compatible with specific versions of Python for optimal performance and stability.

Supported Python Version

  • Python 3.11.6

❗️ 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

🐍 Installing Python 3.11.3 with 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.

📦 Setup

Local setup 🛠️ with Docker 🐳

  • Using docker-compose: You can also use docker-compose to run the project locally by running the following command:

    • 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
    • Run the project using docker-compose:
    docker-compose up

Local setup 🛠️ without Docker 🐳

Setting Up the Project with PDM

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

Setting Up and Testing the Project

To ensure the code quality and functionality of the project, follow the steps below:

Installing Git Hooks with 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

Running Tests

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.

🗒️ How to contribute

❗️Important: Please read the Code of Conduct and go through Contributing Guideline before contributing to paste.py

  • Feel free to open an issue for any clarifications or suggestions.

linkliberate's People

Contributors

mr-sunglasses avatar samad101 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.