Commands copied to your clipboard

New projects set up lightning fast

Oya with its ecosystem of powerful, reusable packs lets you bootstrap deployable projects without a hassle.

Open Github repo
Open documentation

How to install

Quick start

curl
https://oya.sh/get
| bash
CLICK TO COPY

Features

How Oya helps you

Reuse boilerplate
Kick off new project setup using packaged boilerplate & scripts
Write code that matters
Cut through repetitive steps, save time and focus on essential parts of your app
Become a hero
Easily develop and share your own scripts & boilerplate with others

Example usage

How to use Oya

You can create Oyafile by hand or with init command, let’s do this:
CLICK TO COPY
Setup Oya project
oya
init OyaExample
cat
Oyafile
Project:
OyaExample
CLICK TO COPY
Oya task is a bash script defined as a Oyafile key.
Tasks in Oyafile are defined as a yaml keys, with pipe at the beginning line and bash code in following.
Our server is golang app so before starting it needs to be compiled.
Build tasks
cat
Oyafile
Project:
OyaExample
build: |
   go build app.go
start: |
   ./server
CLICK TO COPY
List available tasks
oya
tasks
# in ./Oyafile
oya
run
build
oya
run
start
CLICK TO COPY
Execute task
oya
run
build
oya
run
start
CLICK TO COPY
Inside a project you can have many files with named *.oya they will be read as a Value files, expected syntax is a pair of key: value.
Let’s say we want to store our port as a value. We can create file server.oya with:
Create file server.oya
cat
server.oya
port: 3000
CLICK TO COPY
Using values
cat
Oyafile
Project:
OyaExample
build: |
   go build server.go
start: |
   export PORT=
${Oya[port]}
   ./server
CLICK TO COPY
If you want to learn more about Values - click here
Find packs you need
The biggest power of Oya is lies within in reusable packs dedicated to the most popular development environments and tools.

Our team

Who we are

Marcin
Ruby Developer
Konrad
Product Designer
Piotr
SRE Engineer
Bartosz
Ruby Developer

Oya’s growing ecosystem of installable “packs” for common tasks lets developers focus on code that matters not on boilerplate.