1.2.1 • Published 1 year ago
rayso v1.2.1
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' })