Remove README
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
Isaac Mills 2024-07-11 16:49:17 -04:00
parent 6fcd38e6e1
commit 1d95e12815
Signed by: fnmain
GPG key ID: B67D7410F33A0F61
17 changed files with 29 additions and 76 deletions

View file

@ -1,76 +0,0 @@
# eframe template
[![dependency status](https://deps.rs/repo/github/emilk/eframe_template/status.svg)](https://deps.rs/repo/github/emilk/eframe_template)
[![Build Status](https://github.com/emilk/eframe_template/workflows/CI/badge.svg)](https://github.com/emilk/eframe_template/actions?workflow=CI)
This is a template repo for [eframe](https://github.com/emilk/egui/tree/master/crates/eframe), a framework for writing apps using [egui](https://github.com/emilk/egui/).
The goal is for this to be the simplest way to get started writing a GUI app in Rust.
You can compile your app natively or for the web, and share it using Github Pages.
## Getting started
Start by clicking "Use this template" at https://github.com/emilk/eframe_template/ or follow [these instructions](https://docs.github.com/en/free-pro-team@latest/github/creating-cloning-and-archiving-repositories/creating-a-repository-from-a-template).
Change the name of the crate: Chose a good name for your project, and change the name to it in:
* `Cargo.toml`
* Change the `package.name` from `eframe_template` to `your_crate`.
* Change the `package.authors`
* `main.rs`
* Change `eframe_template::TemplateApp` to `your_crate::TemplateApp`
* `index.html`
* Change the `<title>eframe template</title>` to `<title>your_crate</title>`. optional.
* `assets/sw.js`
* Change the `'./eframe_template.js'` to `./your_crate.js` (in `filesToCache` array)
* Change the `'./eframe_template_bg.wasm'` to `./your_crate_bg.wasm` (in `filesToCache` array)
### Learning about egui
`src/app.rs` contains a simple example app. This is just to give some inspiration - most of it can be removed if you like.
The official egui docs are at <https://docs.rs/egui>. If you prefer watching a video introduction, check out <https://www.youtube.com/watch?v=NtUkr_z7l84>. For inspiration, check out the [the egui web demo](https://emilk.github.io/egui/index.html) and follow the links in it to its source code.
### Testing locally
Make sure you are using the latest version of stable rust by running `rustup update`.
`cargo run --release`
On Linux you need to first run:
`sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev`
On Fedora Rawhide you need to run:
`dnf install clang clang-devel clang-tools-extra libxkbcommon-devel pkg-config openssl-devel libxcb-devel gtk3-devel atk fontconfig-devel`
### Web Locally
You can compile your app to [WASM](https://en.wikipedia.org/wiki/WebAssembly) and publish it as a web page.
We use [Trunk](https://trunkrs.dev/) to build for web target.
1. Install the required target with `rustup target add wasm32-unknown-unknown`.
2. Install Trunk with `cargo install --locked trunk`.
3. Run `trunk serve` to build and serve on `http://127.0.0.1:8080`. Trunk will rebuild automatically if you edit the project.
4. Open `http://127.0.0.1:8080/index.html#dev` in a browser. See the warning below.
> `assets/sw.js` script will try to cache our app, and loads the cached version when it cannot connect to server allowing your app to work offline (like PWA).
> appending `#dev` to `index.html` will skip this caching, allowing us to load the latest builds during development.
### Web Deploy
1. Just run `trunk build --release`.
2. It will generate a `dist` directory as a "static html" website
3. Upload the `dist` directory to any of the numerous free hosting websites including [GitHub Pages](https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site).
4. we already provide a workflow that auto-deploys our app to GitHub pages if you enable it.
> To enable Github Pages, you need to go to Repository -> Settings -> Pages -> Source -> set to `gh-pages` branch and `/` (root).
>
> If `gh-pages` is not available in `Source`, just create and push a branch called `gh-pages` and it should be available.
You can test the template app at <https://emilk.github.io/eframe_template/>.
## Updating egui
As of 2023, egui is in active development with frequent releases with breaking changes. [eframe_template](https://github.com/emilk/eframe_template/) will be updated in lock-step to always use the latest version of egui.
When updating `egui` and `eframe` it is recommended you do so one version at the time, and read about the changes in [the egui changelog](https://github.com/emilk/egui/blob/master/CHANGELOG.md) and [eframe changelog](https://github.com/emilk/egui/blob/master/crates/eframe/CHANGELOG.md).

BIN
assets/images/cshs1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
assets/images/cshs1_hi.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 KiB

BIN
assets/images/cshs2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
assets/images/cshs2_hi.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 KiB

BIN
assets/images/cshs3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
assets/images/cshs3_hi.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 382 KiB

BIN
assets/images/grezi1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

BIN
assets/images/grezi1_hi.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

BIN
assets/images/grezi2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

BIN
assets/images/grezi2_hi.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

BIN
assets/images/grezi3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
assets/images/grezi3_hi.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 339 KiB

View file

@ -274,7 +274,10 @@ impl ContextWindow {
CONTEXT_METRICS, CONTEXT_METRICS,
None, None,
1.0, 1.0,
#[cfg(target_arch = "wasm32")]
env!("PHOST"), env!("PHOST"),
#[cfg(not(target_arch = "wasm32"))]
"file://assets",
); );
self.text = text self.text = text

View file

@ -1 +1,11 @@
# Kdenlive Experience # Kdenlive Experience
I've used Kdenlive extensively to edit a variety of different videos.
- This was a project I did for my school to advertise their Computer Science courses. You can watch it [here](https://nations.lol/s/EjgsfR6wjLfwHMX)
![My CSHS Ad Image 1](images/cshs1.jpg#256x144)
![My CSHS Ad Image 2](images/cshs2.jpg#256x144)
![My CSHS Ad Image 3](images/cshs3.jpg#256x144)
- I've made other things in Kdenlive, but I haven't been able to find them at this time. For instance, I edited a video for my mother's [Upcycled Book Making Business](https://scrappapercircus.com)

View file

@ -1,3 +1,7 @@
# Python Experience # Python Experience
Most of my Computer Science courses in primary school were in Python. Most of the stuff I made in those classes aren't anything special. Other than that, I haven't made much in Python, see my [Rust](#rust) experience
- I got this from my Advanced Programming DE class in high school.
![Microsoft Technology Associate certificate](images/mta.jpg#512x377) ![Microsoft Technology Associate certificate](images/mta.jpg#512x377)

View file

@ -16,3 +16,15 @@ This portfolio uses these Rust crates including but not limited to:
You can view the code for this portfolio [here](https://git.nations.lol/fnmain/portfolio) You can view the code for this portfolio [here](https://git.nations.lol/fnmain/portfolio)
![A screenshot of my GitHub projects I've worked on in Rust](images/rust_contribs.jpg#256x256) ![A screenshot of my GitHub projects I've worked on in Rust](images/rust_contribs.jpg#256x256)
- This is a slideshow program I made that uses a custom plain-text language to make animated and engaging presentations.
![A grezi slide](images/grezi1.jpg#256x144)
![A grezi slide](images/grezi2.jpg#256x144)
![A grezi slide](images/grezi3.jpg#256x144)
Grezi has a native, as well as a WebAssembly runtime; and can export to any `cairo` supported format. Including PDF, PostScript, SVG/JPG/PNG per slide, etc. You can view the full presentations above in the web runtime
- [Hashing: Sets & Maps](https://git.nations.lol/grezi/#Hashing%20Sets%20Maps.slideshow)
- [Linked Lists](https://git.nations.lol/grezi/#Linked%20Lists.slideshow)
- [Recursion](https://git.nations.lol/grezi/#recursion.slideshow)