rayso
v1.2.1
Published
Unofficial API for ray.so that turns your code into beautiful images.
Downloads
51
Maintainers
Readme
Ray.so API
This is unofficial NodeJs (JavaScript) API for ray.so that turns your code into beautiful images. Choose from a range of syntax colors, hide or show the background, and toggle between a dark and light window.
[!NOTE] This is a fork of the project rayso-api developed by s0ftik3, which is no longer maintained. I have updated the project to work with the latest version of the ray.so.
Navigation
Installing
$ npm i rayso
Usage
import RaySo from 'rayso'
const raySo = new RaySo({
// parameters, if you want to customize the output
// you'll find detailed info about parameters below
})
raySo
.cook(`console.log('Hello, World!');`)
.then(response => {
// response is image buffer
})
.catch(err => {
console.error(err)
})
import RaySo from 'rayso'
const raySo = new RaySo()
Parameters
| Parameter | Default value | Type | Description |
|--------------------|--------------------|------------------|------------------------------------------------------------------------------------------------------------------------------------------------|
| title
| "Untitled-1"
| String | The title will be displayed on top of the code box. |
| theme
| "breeze"
| String | There are several options of how your box will look like. Available themes: breeze, candy, crimson, falcon, meadow, midnight, raindrop, sunset |
| background
| true
| Boolean | If disabled, it will create an image of code box only, without background. |
| darkMode
| true
| Boolean | If disabled, it will change your theme to its light version. |
| padding
| 32
| String or Number | Distance between borders and code box. Available values: 16, 32, 64 and 128. |
| language
| "auto"
| String | You better leave it auto :/ However, you can try to pass some language name and if it worked, good for you! |
| localPreview
| false
| Boolean | If enabled, it will create example.png image file of the output in the current directory. |
| localPreviewPath
| current directory
| String | Path to create example files. MacOS, Linux and Windows paths supported. |
| debug
| false
| Boolean | If enabled, it will show messages in the console during code execution. |
Examples
Default output
import RaySo from 'rayso'
const raySo = new RaySo()
Custom parameters
import RaySo, {
CardTheme,
CardPadding,
CardProgrammingLanguage,
} from 'rayso'
const raySo = new RaySo({
title: 'Custom Title',
theme: CardTheme.CANDY,
padding: CardPadding.md,
language: CardProgrammingLanguage.JS,
debug: true,
localPreview: true,
localPreviewPath: '/Users/akashrchandran/rayso_screenshots',
})
Output without background
import RaySo from 'rayso'
const raySo = new RaySo({ background: false })
Themes
These are all the available themes, so far. As soon Ray.So has a new theme, it will appear here. Default theme breeze
is not listed here, you saw it in the first picture of this README.
Breeze
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'breeze' })
Mono
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'mono' })
Candy
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'candy' })
Crimson
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'crimson' })
Falcon
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'falcon' })
Meadow
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'meadow' })
Midnight
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'midnight' })
Raindrop
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'raindrop' })
Sunset
import RaySo from 'rayso'
const raySo = new RaySo({ theme: 'sunset' })