Skip to content

Commit

Permalink
Merge branch 'master' of ssh://github.com/eliandoran/toolkit
Browse files Browse the repository at this point in the history
  • Loading branch information
eliandoran committed Jul 5, 2024
2 parents f347c10 + 6023105 commit 7e20ead
Show file tree
Hide file tree
Showing 36 changed files with 2,724 additions and 3,538 deletions.
18 changes: 18 additions & 0 deletions .github/workflows/develop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Deploy to GitHub pages

on:
push:
branches: [ develop ]

jobs:
deploy:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3

- name: Run the build
run: |
npm install
npm run build
24 changes: 24 additions & 0 deletions .github/workflows/master.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Deploy to GitHub pages

on:
push:
branches: [ master ]

jobs:
deploy:
name: Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3

- name: Run the build
run: |
npm install
npm run build
- name: Deploy to GitHub Pages
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: gh-pages
folder: build
75 changes: 52 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,67 @@
# create-svelte
# Toolkit

Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
[![Deploy to GitHub pages](https://github.com/eliandoran/toolkit/actions/workflows/gh-pages.yml/badge.svg)](https://github.com/eliandoran/toolkit/actions/workflows/gh-pages.yml)`

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!
A purely client-side application that offers various small tools that can be useful in day-to-day use, mostly for development.

```bash
# create a new project in the current directory
npm create svelte@latest
To access the toolkit, visit [eliandoran.github.io/toolkit/](https://eliandoran.github.io/toolkit/).

# create a new project in my-app
npm create svelte@latest my-app
```
One of the more distinct features is that most of the tools are bi-directional. Instead of having two different tools (e.g. one for encode, and one for decode of a particular format), there is a single tool and the user can type in both the input and the output.

## Developing
Feel free to open an issue if you'd like a particular feature. Pull requests are also welcome.

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:
As a general software design decision, the business logic of the application is kept to a minimum which is why it relies on libraries to the work. This makes the development of new tools much easier and easier to maintain.

```bash
npm run dev
## Currently supported tools

# or start the server and open the app in a new browser tab
npm run dev -- --open
```
* Text tools:
* Line operations: sort (ascending, descending), shuffle, reverse, deduplicate
* Whitespace removal: trim lines, remove trailing whitespace, remove blank lines
* Case convert: upper case, lower case.
* Split/join
* Text hash: MD5, SHA1, SHA256, SHA384, SHA512
* ANSI text viewer
* HTML to Markdown converter
* Calculators:
* Base converter
* Percentage (heavily inspired from [percentagecalculator.net](https://percentagecalculator.net/))
* Bitwise operations
* Unix timestamp
* JSON:
* JSON formatter
* JSON to YAML
* JSON schema validator
* Encode/decode:
* Base64
* URL Encode
* HTML Entity
* String escape
* PHP serialization
* Morse code
* JavaScript keycode helper

## Development

## Building
First, install the dependencies:

To create a production version of your app:
```sh
pnpm i
```

Then run a development server:

```bash
npm run build
```
pnpm dev
```

You can preview the production build with `npm run preview`.
## Acknowledgement

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.
* For ANSI preview:
* [ansi-to-html](https://www.npmjs.com/package/ansi-to-html)
* [Perfect DOS VGA 437](https://www.dafont.com/perfect-dos-vga-437.font)
* [he](https://www.npmjs.com/package/he) for HTML entity encode/decode.
* [yaml](https://www.npmjs.com/package/yaml) for JSON to YAML conversion.
* [ajv](https://www.npmjs.com/package/ajv) for JSON schema validation.
* [slashes](https://www.npmjs.com/package/slashes) for string escape.
* [crypto-es](https://github.com/entronad/crypto-es) for hashing.
Loading

0 comments on commit 7e20ead

Please sign in to comment.