feat: initial release of fct

This commit is contained in:
rzmk 2024-07-07 00:32:06 -04:00
commit eb80cc5ec7
No known key found for this signature in database
96 changed files with 6616 additions and 0 deletions

21
docs/.gitignore vendored Normal file
View file

@ -0,0 +1,21 @@
# build output
dist/
# generated types
.astro/
# dependencies
node_modules/
# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# environment variables
.env
.env.production
# macOS-specific files
.DS_Store

4
docs/.vscode/extensions.json vendored Normal file
View file

@ -0,0 +1,4 @@
{
"recommendations": ["astro-build.astro-vscode"],
"unwantedRecommendations": []
}

11
docs/.vscode/launch.json vendored Normal file
View file

@ -0,0 +1,11 @@
{
"version": "0.2.0",
"configurations": [
{
"command": "./node_modules/.bin/astro dev",
"name": "Development server",
"request": "launch",
"type": "node-terminal"
}
]
}

42
docs/README.md Normal file
View file

@ -0,0 +1,42 @@
# File Converter Tool Website
## Project Structure
You may see the following folders and files:
```
.
├── public/
├── src/
│ ├── assets/
│ ├── content/
│ │ ├── docs/
│ │ └── config.ts
│ └── env.d.ts
├── astro.config.mjs
├── package.json
└── tsconfig.json
```
Starlight looks for `.md` or `.mdx` files in the `src/content/docs/` directory. Each file is exposed as a route based on its file name.
Images can be added to `src/assets/` and embedded in Markdown with a relative link.
Static assets, like favicons, can be placed in the `public/` directory.
## Commands
All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `bun install` | Installs dependencies |
| `bun run dev` | Starts local dev server at `localhost:4321` |
| `bun run build` | Build your production site to `./dist/` |
| `bun run preview` | Preview your build locally, before deploying |
| `bun run astro ...` | Run CLI commands like `astro add`, `astro check` |
| `bun run astro -- --help` | Get help using the Astro CLI |
## External documentation
You may view [Starlights docs](https://starlight.astro.build/) and/or read [the Astro documentation](https://docs.astro.build).

14
docs/astro.config.mjs Normal file
View file

@ -0,0 +1,14 @@
import { defineConfig } from "astro/config";
import starlight from "@astrojs/starlight";
// https://astro.build/config
export default defineConfig({
integrations: [
starlight({
title: "File Converter Tool",
social: {
github: "https://github.com/rzmk/fct",
},
}),
],
});

BIN
docs/bun.lockb Normal file

Binary file not shown.

19
docs/package.json Normal file
View file

@ -0,0 +1,19 @@
{
"name": "fct-docs",
"type": "module",
"version": "0.0.1",
"scripts": {
"dev": "astro dev",
"start": "astro dev",
"build": "astro check && astro build",
"preview": "astro preview",
"astro": "astro"
},
"dependencies": {
"@astrojs/starlight": "^0.25.0",
"astro": "^4.10.2",
"sharp": "^0.32.5",
"@astrojs/check": "^0.7.0",
"typescript": "^5.5.3"
}
}

BIN
docs/public/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

BIN
docs/public/fct-demo.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

View file

@ -0,0 +1,6 @@
import { defineCollection } from 'astro:content';
import { docsSchema } from '@astrojs/starlight/schema';
export const collections = {
docs: defineCollection({ schema: docsSchema() }),
};

View file

@ -0,0 +1,41 @@
---
title: File Converter Tool
description: Generate a file based on a different supported file format.
template: splash
hero:
tagline: Generate a file based on a different supported file format.
Available on the Microsoft Store for Windows devices.
image:
file: ../../assets/fct-logo.png
actions:
- text: Download File Converter Tool
link: https://github.com/rzmk/fct
icon: external
variant: primary
- text: Source Code
link: https://github.com/rzmk/fct
icon: external
---
![File Converter Tool demo](/fct-demo.gif)
import { Card, CardGrid } from "@astrojs/starlight/components";
<CardGrid stagger>
<Card title="Supported conversions" icon="setting">
Supports PNG to JPG and JPG to PNG.
</Card>
<Card title="Generate and save locally" icon="add-document">
Files are generated and saved on your local device.
</Card>
<Card title="Light and dark themes" icon="moon">
Switch between light and dark themes.
</Card>
<Card title="Automatically shows output file" icon="open-book">
The output file is automatically shown in the File Explorer.
</Card>
</CardGrid>
---
[Privacy Policy](/privacy-policy)

2
docs/src/env.d.ts vendored Normal file
View file

@ -0,0 +1,2 @@
/// <reference path="../.astro/types.d.ts" />
/// <reference types="astro/client" />

View file

@ -0,0 +1,30 @@
---
title: Privacy Policy - File Converter Tool
description: Privacy policy for File Converter Tool.
---
This page (https://fct.mueezkhan.com/privacy-policy) includes the File Converter Tool's privacy policy.
---
# Privacy policy
_Last updated: July 7, 2024_
This policy applies to the File Converter Tool desktop app which can be downloaded from the Microsoft Store for supported Windows devices.
We refer to individuals that use File Converter Tool as "you" throughout this policy.
## Data collection, sharing, and storage
File Converter Tool is not intended to collect, share, and/or store data to any third-parties over the Internet. File conversion processing is intended to be run on your local device.
File Converter Tool may use libraries and/or programs for its core features (e.g., file conversion). The libraries/programs used can be found within the File Converter Tool's source code at https://github.com/rzmk/fct. For example a few locations for dependencies/programs include: the [`src/package.json`](https://github.com/rzmk/fct/tree/main/src/package.json), [`src-tauri/Cargo.toml`](https://github.com/rzmk/fct/tree/main/src-tauri/Cargo.toml), and/or [`src-tauri/bin`](https://github.com/rzmk/fct/tree/main/src-tauri/bin) file(s) and folder(s). These libraries/programs have not been independently verified by us to ensure that they do not access the Internet and/or collect, share, and/or store data.
## Changes and questions
We may update this policy as needed to comply with relevant regulations and reflect any new practices. You can view a history of the changes to this privacy policy [on GitHub](https://github.com/rzmk/fct/commits/main). Whenever we make a significant change to our policies, we may refresh the date at the top of this page.
---
Adapted from the [Basecamp open-source policies](https://github.com/basecamp/policies) / [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).

3
docs/tsconfig.json Normal file
View file

@ -0,0 +1,3 @@
{
"extends": "astro/tsconfigs/strict"
}