Skip to content

Commit

Permalink
Release 1.0.0
Browse files Browse the repository at this point in the history
Release 1.0.0
  • Loading branch information
Segilmez06 authored Sep 23, 2023
2 parents 6be6cae + e685d5a commit 1bcb2d1
Show file tree
Hide file tree
Showing 22 changed files with 742 additions and 3 deletions.
33 changes: 33 additions & 0 deletions .github/workflows/debug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: Debug

on:
push:
branches:
- dev

jobs:
debug-build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]

steps:
- uses: actions/checkout@v3

- name: Setup .NET Core
uses: actions/setup-dotnet@v3
with:
dotnet-version: '7.0.x'

- name: Build
run: dotnet build src/TYM.csproj

- name: Publish
run: dotnet publish src/TYM.csproj /p:PublishProfile=src/Properties/PublishProfiles/${{ matrix.os }}.pubxml

- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.os }}
path: src/pub/
97 changes: 97 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
name: Build and draft release

on:
push:
branches:
- main

jobs:

draft-release:
name: Draft new release
runs-on: ubuntu-latest

outputs:
upload_url: ${{ steps.draft_release.outputs.upload_url }}

steps:
- name: Fetch source code
uses: actions/checkout@v3

- name: Install XML tools
run: sudo apt install xmlstarlet

- name: Fetch version string
run: echo "TAG=$(xmlstarlet select --template --value-of /Project/PropertyGroup/AssemblyVersion ./src/TYM.csproj)" >> $GITHUB_OUTPUT
id: version

- name: Draft release
uses: actions/create-release@v1
id: draft_release
env:
GITHUB_TOKEN: ${{ secrets.G_TOKEN }}
with:
tag_name: ${{ steps.version.outputs.TAG }}
release_name: TYM v${{ steps.version.outputs.TAG }}
draft: true
prerelease: false


release-assets:
name: Build and upload release assets
runs-on: ${{ matrix.os }}

strategy:
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]

steps:
- name: Fetch source code
uses: actions/checkout@v3

- name: Setup .NET Core
uses: actions/setup-dotnet@v3
with:
dotnet-version: '7.0.x'

- name: Fetch version string (win)
run: echo "TAG=$(./src/pub/TYM.exe --version | cut -c5- )" >> $GITHUB_OUTPUT
id: version
shell: bash
if: matrix.os == 'windows-latest'

- name: Fetch version string (*nix)
run: echo "TAG=$(./src/pub/TYM --version | cut -c5- )" >> $GITHUB_OUTPUT
id: version
shell: bash
if:
matrix.os == 'macos-latest'
matrix.os == 'ubuntu-latest'

- name: Build
run: dotnet build src/TYM.csproj

- name: Publish
run: dotnet publish src/TYM.csproj /p:PublishProfile=src/Properties/PublishProfiles/${{ matrix.os }}.pubxml

- name: Upload release assets (win)
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.G_TOKEN }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_name: TYM-${{ steps.version.outputs.TAG }}-${{ matrix.os }}
asset_path: ./src/pub/TYM.exe
asset_content_type: application/octet-stream
if: matrix.os == 'windows-latest'

- name: Upload release assets (*nix)
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.G_TOKEN }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_name: TYM-${{ steps.version.outputs.TAG }}-${{ matrix.os }}
asset_path: ./src/pub/TYM
asset_content_type: application/octet-stream
if: matrix.os == 'windows-latest'
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ publish/
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
# *.pubxml
*.publishproj

# Microsoft Azure Web App publish settings. Comment the next line if you want to
Expand Down Expand Up @@ -396,3 +396,8 @@ FodyWeavers.xsd

# JetBrains Rider
*.sln.iml

# Manually added
*.editorconfig
/src/Properties/launchSettings.json
/src/pub/
15 changes: 15 additions & 0 deletions Changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Changelog

## General

- [x] Codebase
- [x] Create release workflow (submit release on merge to main branch)
- [x] Support for downloading and rendering files directly from network

## CLI Args

- [x] Resampler list and selection
- [x] Size option
- [x] Starting point on screen
- [x] Resize method (fit, stretch, crop)
- [x] Full screen option
32 changes: 30 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,30 @@
# tym
View your images in the terminal with true color
# 🍉 TYM
[![Debug build](https://github.com/Segilmez06/tym/actions/workflows/debug.yml/badge.svg)](https://github.com/Segilmez06/EFI-Runner/actions/workflows/debug.yml)
[![Release build](https://github.com/Segilmez06/tym/actions/workflows/release.yml/badge.svg)](https://github.com/Segilmez06/EFI-Runner/actions/workflows/release.yml)

TYM is a cross-platform tool that renders image files in your terminal. It uses VT100 escape codes to display 24-bit true color images.

## Requirements
- Unicode supported monospace font
- VT100 compatible terminal emulator with true color support

## Download
Get the lastest version from [Releases](https://github.com/Segilmez06/tym/releases) page. You can also get a debug build from [Actions](https://github.com/Segilmez06/tym/actions/workflows/debug.yml) tab.

## Installation
Extract the zip file to a folder. Then add folder to your `PATH` variable.

## Usage
To be updated after a stable release, use `tym --help` instead.

## Screenshots
![Screenshot](screenshots/screenshot-1.png)

## Building
This tool is built on .Net 7 so it requires .Net SDK version >= 7 while building.

### Optional
For AOT binary compilation, check [official documentation](https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot#prerequisites) for dependencies. This packages are only required while publishing. Skip this step if you're going to use JIT compiled binary.

## Contributing
You can create pull requests and issues to help development. Also starring the repo will give me motivation.
8 changes: 8 additions & 0 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# TODO

## General

- [ ] Optimize code and fragment info methods

## CLI Args

Binary file added misc/Cover.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added misc/Cover.psd
Binary file not shown.
Binary file added screenshots/screenshot-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 1bcb2d1

Please sign in to comment.