Skip to content

The next generation of a AI-based toolbox designed for programmers. (Unfinished Project, to be continue)

License

Notifications You must be signed in to change notification settings

work7z/LafTools


LafTools - The next generation of a versatile toolbox designed for programmers

Unfinished Project, to be continue

Note: This page is generated from LafTools internally.
English | 简体中文 | 繁體中文 | Deutsch | Español | Français | 日本語 | 한국어 | More

🔮 Vision

LafTools is a privacy-first, self-hosted, fully open source toolbox designed for programmers, you can find plentful toolsets on this website.

💌 Features

  • FOSS Forever
  • Lightweight Runtime
  • Full platform support(including ARMv8)
  • Full GPT-alike support
  • Highly integrated with productive UI
  • Available Docker Images and Portable Edition
  • Desktop edition support(Planning)
  • ...

🚀 Run it on Docker

For GLOBAL users:

docker run -e LAFREGION=US -e APPLANG=en_US --name mylaftools -v ~/.laftools-docker:/root/.laftools  -d -p 0.0.0.0:39899:39899 codegentoolbox/laftools-linux-x64:latest

For CHINESE users(国内用户):

docker run -e LAFREGION=CN -e APPLANG=zh_CN --name mylaftools -v ~/.laftools-docker:/root/.laftools -d -p 0.0.0.0:39899:39899 codegentoolbox/laftools-linux-x64:latest

NOTE:

  1. Default port is set to 39899, you can adjust it if needed.
  2. LafTools will always be upgraded to latest version automatically so that you can enjoy latest functions and bugfixs.

Docker Images:

🔗 Online Websites

To quickly use these functions, we've deployed stable online website in US and CN region for you to use. Most tools are available in our online websites except for some tools that rely on specific OS capablities.

🌠 Preview

📡 About LAF

  • L -> Linked
  • A -> Asynchronous
  • F -> Functional

In short, LafTools is a suite that offers a series of linked, asynchronous, and functional toolsets.

Rest assured, this project will evolve in remarkable and fantastic ways over time. This project needs more time, just like wine, gets better with time.

🌠 Contribution

1. Setup System Environment

For the sake of simplicity, let's say that you've cloned this repository to either C:\Usersjerry\project\laftools-repo on Windows or /Users/jerry/projects/laftools-repo on Linux/MacOS, then you should declare env and set config below in your file ~/.bashrc, or simply execute them before running any command.

If you're using Windows OS, please ensure that all commands are executed in git-bash, learn more please refer to CONTRIBUTION. Apart from this, it is recommended to avoid using any whitespace or non-English characters in the file path where this project is located.

Env for Windows:

git config core.ignorecase false
export LAFTOOLS_ROOT="C:\users\jerry\project\laftools-repo"
export PATH=$PATH:$LAFTOOLS_ROOT\dev\source\windows-bin

Env for Linux/MacOS:

export LAFTOOLS_ROOT=/users/jerry/projects/laftools-repo

2. Compile and Run

# install required global library
npm i -g pnpm ts-node typescript

# install project deps
cd $LAFTOOLS_ROOT && npm install -S -D --force
cd $LAFTOOLS_ROOT/modules/web2 && npm install -S -D --force
cd $LAFTOOLS_ROOT/devtools/scripts/scan && npm install -S -D --force

# run core service
npm run fe-web

3. Build

cd pipeline
./build-all.sh

📑 Other Materials

Below are further materials that you can have a look if you'd like to learn more detail about this project:

💐 Icons

We would appreciate talent artists who provided below beautiful icons: Ide icons created by umartvurdu - Flaticon Ide icons created by heisenberg_jr - Flaticon Fund icons created by Freepik - Flaticon Translate icons created by Freepik - Flaticon To do icons created by Freepik - Flaticon Timer icons created by Freepik - Flaticon Dictionary icons created by Freepik - Flaticon

🙏 Acknowledgements

This project would not have been possible without awesome open source projects which I would like to personally express my deepest gratitude to:

  1. Blueprint UI - a React-based UI toolkit.
  2. CyberChef - a web app for encryption, encoding, compression and data analysis.
  3. Lodash - a modern JavaScript utility library delivering modularity, performance, & extras.
  4. one-api - an OpenAI key management & redistribution system.

For sure, there are other open source projects that have benefited and facilitated this project, which I couldn't detail in this part; Without these projects and these talent developers' efforts, LafTools would not have been possible.

🪪 License

This project is protected under the GNU Affero General Public License, please see the LICENSE file for more details.