https://github.com/aloxaf/silicon
Create beautiful image of your source code.
https://github.com/aloxaf/silicon
carbon presentation rust snippets
Last synced: 6 days ago
JSON representation
Create beautiful image of your source code.
- Host: GitHub
- URL: https://github.com/aloxaf/silicon
- Owner: Aloxaf
- License: mit
- Created: 2019-07-07T14:50:55.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-09-26T01:08:27.000Z (7 months ago)
- Last Synced: 2025-04-27T03:54:59.511Z (6 days ago)
- Topics: carbon, presentation, rust, snippets
- Language: Rust
- Homepage:
- Size: 7.16 MB
- Stars: 3,271
- Watchers: 13
- Forks: 86
- Open Issues: 44
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Silicon
[](https://crates.io/crates/silicon)
[](https://docs.rs/silicon)
[](https://github.com/Aloxaf/silicon/actions?query=workflow%3ACI)
Silicon is an alternative to [Carbon](https://github.com/dawnlabs/carbon) implemented in Rust.
It can render your source code into a beautiful image.
## Why Silicon
Carbon is a wonderful tool to create a beautiful image of your source code.
But it is a web application, which brings the following disadvantages:
- Cannot work without Internet & browser.
- Doesn't work well with shell. (Although there is _carbon-now-cli_, its experience is not very good, especially when the network is not so good.)However, Silicon doesn't have these problems.
It's is implemented in Rust and can work without browser & Internet.Silicon can render your source code on the fly while _carbon-now-cli_ takes several seconds on it.
## Disadvantages
It's not as beautiful as Carbon...
## Install
### Cargo
```bash
cargo install silicon
```NOTE: harfbuzz feature is enabled by default. If you are using Windows, I suggest you disable it to get it build easier.
### AUR
Silicon is available in the official repository:
```bash
pacman -S silicon
```### Homebrew
You can install Silicon using [Homebrew](https://brew.sh):
```bash
brew install silicon
```## Dependencies
### Ubuntu
```bash
sudo apt install expat
sudo apt install libxml2-dev
sudo apt install pkg-config libasound2-dev libssl-dev cmake libfreetype6-dev libexpat1-dev libxcb-composite0-dev libharfbuzz-dev libfontconfig1-dev g++
```### Fedora
```bash
sudo dnf install \
cmake \
expat-devel fontconfig-devel libxcb-devel \
freetype-devel libxml2-devel \
harfbuzz
```### Arch Linux
```bash
sudo pacman -S --needed pkgconf freetype2 fontconfig libxcb xclip harfbuzz
```## Examples
Read code from file
```bash
silicon main.rs -o main.png
```Read code from clipboard, and copy the result image to clipboard
```bash
silicon --from-clipboard -l rs --to-clipboard
```Specify a fallback font list and their size
```bash
silicon -o main.png -l bash -f 'Hack; SimSun=31; code2000' <