Glossary
- Build tools (C compiler)
- Software that turns source code into a runnable program.
- A ‘C compiler’ and its companions (such as make) build parts of Ruby and some gems from source. On macOS these come from Apple's Command Line Tools; on Linux, from your distribution's build package, such as build-essential.
- Bundler
- The tool that installs and manages Ruby gems.
- It reads a project's list of required gems and installs the exact versions it needs. Roe uses Bundler to install its gems automatically during setup.
- CMS
- computer software used to manage the creation and modification of digital content
- A CMS (Content Management System) typically has two major components: a front-end user interface that allows a user, even with limited expertise, to add, modify, and remove content from a website without the intervention of a webmaster; and a content delivery application, which compiles the content and updates the website.
- FTPS (File Transfer Protocol SSL)
- A protocol for sending and receiving data of SSL (Secure Socket Layer)
- If you're familiar with HTTPS, the 'S' also stands for SSL and uses similar technology to encrypt data as it is sent and received.
- Git
- A version control system that tracks changes to files.
- It records the history of a project and lets you move between saved versions. Roe's built-in updater uses Git to fetch new releases.
- Homebrew
- A package manager for macOS and Linux.
- It installs command-line software with a single command. If you already have Homebrew, Roe's installer uses it to set up mise and Git; Roe never installs Homebrew for you.
- ImageMagick
- A widely used toolkit for reading and editing images.
- When it's installed, Roe uses it to read image dimensions for social and SEO tags. It's optional — Roe runs fine without it.
- libvips
- A fast, low-memory image processing library.
- When it's installed, Roe uses it to resize and compress your images as you upload them. It's optional — Roe runs fine without it.
- Linux
- Linux is one of the most widely used open-source operating systems.
- Built on top of UNIX, it is very popular amoung developers and is beginning to gain more mainstream use.
- Markdown
- Markdown is a text-to-HTML conversion tool for web writers.
- Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid HTML.
- Master key
- A secret key that encrypts your site's sensitive settings.
- Rails uses a master key to lock and unlock encrypted credentials. Roe generates one during setup and stores it at site/system/secrets/master.key — keep it private and back it up.
- Node.js
- A tool for running JavaScript outside the browser.
- Many web projects rely on it to build and bundle their front-end code. Roe deliberately avoids it — it runs JavaScript with importmaps instead, so there is nothing extra to install.
- Open Graph (OG)
- The Open Graph protocol
- This is what allows you to share a link to your site and it has an image, preview, etc. It enables any web page to become a rich object in a social graph. For instance, this is used on Facebook to allow any web page to have the same functionality as any other object on Facebook.
- Puma
- The web server that runs your Roe site.
- It receives requests from the browser and sends your pages back. Puma is a common choice for Rails applications, and it starts whenever you run Roe.
- Redis
- An in-memory data store used for caching and background jobs.
- Many web apps run it as a separate service. Roe doesn't need it — it uses SQLite-backed tools for the same work, which keeps your setup simpler.
- Roe-anji
- A set of Markdown extensions for Roe
- Collections, Cards, Galleries, Forms, Buttons, and more. Better than learning a templating language
- Ruby
- The programming language Roe is written in.
- A language known for readable, friendly code and designed to make programmers productive. Rails — and Roe — are built on top of it.
- Ruby on Rails (Rails)
- Rails is a full-stack framework written in Ruby.
- It ships with all the tools needed to build amazing web apps on both the front and back end with strong conventions.
- SFTP (SSH File Transfer Protocol)
- A network protocol that provides file access, file transfer, and file management over any reliable data stream.
- It allows you to send and recieve data securely and is supported by most web hosting platforms. It is seen as a replacement for FTP due to superior security.
- SQLite
- A small database that stores its data in a single file.
- It needs no separate server to run, which is why a Roe site can live entirely on your own computer. Roe keeps your content, members, and settings in SQLite files inside your site folder.
- SSG
- Static site generators (SSGs) are software engines that use text input files (such as Markdown) to generate static web pages.
- Unlike dynamic websites, these static pages do not change based on the request. This simplifies the requirements for the backend and allows the site to be distributed via content delivery networks (CDNs)
- SSH (Secure Shell Protocol)
- A protocol that allows you to connect to a remote computer securely over an unsecured network.
- SSH is widely used by system administrators, developers, and network engineers to manage servers, transfer files, and run commands remotely, all while ensuring that sensitive information is kept private.
- TLS/SSL (Transport Security Layer/Secure Socket Layers)
- Transport Layer Security, or TLS, is a widely adopted security protocol designed to facilitate privacy and data security for communications over the Internet.
- TLS evolved from a previous encryption protocol called Secure Sockets Layer (SSL), which was developed by Netscape. TLS version 1.0 actually began development as SSL version 3.1, but the name of the protocol was changed before publication in order to indicate that it was no longer associated with Netscape. Because of this history, the terms TLS and SSL are sometimes used interchangeably.
- YAML
- A human-readable data serialization language.
- It is commonly used for configuration files and in applications where data is being stored or transmitted in plain text.