[!IMPORTANT] ā This is not finished. This is in early development. This currently does not work - at all.
Tooloxide is an open-source website serving as a collection of online tools that are designed to be free to use with no ads thanks to only needing a serverless environment, meaning you can host your own fork on platforms such as Vercel or Netlify (you will have to modify the serverless functions in that case), et cetera.
The main motive for the creation of this project is to solve the lack of competent* online tool websites that are easily found within a reasonable timeframe.
By competent I mean the posession of the following simple characteristics:
Some might say that this cannot be expected from most online tool sites and that there are already sites that do a good job at what they do (like CloudConvert, but even they offer their stuff as a SaaS), and you are not wrong.
I just want to offer a FOSS solution that is self-hostable, free, doesn't look like it was made with Bootstrap v2.3.2 from 2013 (I love the style though), and doesn't litter you with ads.
Tooloxide is currently built with
wasm-bindgen
and Vercel's serverless functions running the Rust runtime to get that juicy š¦ā”ļø blazingly fast performanceTooloxide aims to be a decentralized project allowing anyone to host their own version with a centralized (yet private and secure) deployment at https://tooloxide.vercel.app.
Here's how you can host your own version if you wish to:
The dependencies are as follows
After you've installed the dependencies and have confirmed they work as expected.
Feel free to fork the repository and clone your own repo so that you can get updates while making your own.
If you want to clone this repo
$ git clone https://github.com/hozhai/tooloxide.git
$ cd tooloxide
# feel free to remove .git so you can init it as your own repo
$ rm -rf .git/
$ git init # and so on...
# for bun
$ bun i
# for npm and pnpm
$ npm i
# or
$ pnpm i
# for yarn
$ yarn install
[!NOTE] Every time the
dev
script is run, all the Rust code will be compiled, both for WebAssembly and Vercel's serverless. The first time will take longer as the Cargo dependencies wll have to be downloaded and compiled.
[!NOTE] You will need a Vercel account when you run the
dev
script, as it will ask for you to sign in and link this project with an existing/new one for the serverless functions to work properly.
# replace the command depending on your pkg manager
$ bun dev
After having cloned and initialized the repository, if you've followed the instructions step by step you should be able to head to the Vercel dashboard and click on the link under your project's name.
If you are working with Netlify, then good luck, I don't know how to use it.
Contributions are always welcome. If you don't know how to fix a problem, create an issue and wait. If you do know how to fix a problem, create an issue and mention that you'll be working on a fix, fork the repo, then create a PR.
Your commits should have a verb in simple present tense (add, modify, remove) and the subject you have done a change on. Or just use AI, I can't stop you anyway.
You can add new tools, create a wiki, do anything, as long as it LGTM you're chilling.