From 636ec2770d8e0edea6367ba22bce58a83cd0e8e1 Mon Sep 17 00:00:00 2001 From: samheckle Date: Thu, 4 Jun 2026 03:52:07 -0400 Subject: [PATCH 1/4] first pass at rearranging --- docs/contributing.md | 25 ++-- docs/download/index.md | 219 ++++++++++++++++++++++++++++---- docs/getting-started.md | 84 ------------ docs/index.md | 37 +++--- docs/stylesheets/extra.css | 132 ++++++++++--------- docs/tutorials/first-steps.md | 2 +- docs/tutorials/index.md | 39 +++--- mkdocs.yml | 41 +++--- overrides/partials/content.html | 11 ++ overrides/partials/nav.html | 11 ++ 10 files changed, 364 insertions(+), 237 deletions(-) create mode 100644 overrides/partials/content.html create mode 100644 overrides/partials/nav.html diff --git a/docs/contributing.md b/docs/contributing.md index e6d72572..d8a8cf15 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -1,18 +1,25 @@ -# Contributing to L5 ❤️ + + +## Contributing to L5 ❤️ Thanks for your interest in contributing to **L5**! Contributions of all kinds are welcome — from code and documentation to tutorials, examples, and teaching. -We are inspired by the *[all contributors](https://github.com/all-contributors/all-contributors.github.io)* approach to contribution to open source projects: +We are inspired by the _[all contributors](https://github.com/all-contributors/all-contributors.github.io)_ approach to contribution to open source projects: -> Our community values contributions of all forms and seeks to expand the meaning of the word contributor as far and wide as possible. It includes documentation, teaching, writing code, making art, writing, design, activism, organizing, curating, or anything else you might imagine. --*from [p5.js Contributor Guidelines](https://p5js.org/contribute/contributor_guidelines/)* +> Our community values contributions of all forms and seeks to expand the meaning of the word contributor as far and wide as possible. It includes documentation, teaching, writing code, making art, writing, design, activism, organizing, curating, or anything else you might imagine. --_from [p5.js Contributor Guidelines](https://p5js.org/contribute/contributor_guidelines/)_ If you’re new to open source, don’t worry. This guide explains **which repository to use**, **when to fork**, and **how to get started** step by step. ## Step 1: Decide what you want to contribute -L5 has **two main repositories**. Which one you use depends on *what you’re working on*. +L5 has **two main repositories**. Which one you use depends on _what you’re working on_. -### L5 - The library itself +### L5 - The library itself Use this repository if you want to: @@ -34,7 +41,6 @@ Use this repository if you want to: **Repository:** - ## Step 2: Start with an issue Before writing code or documentation, we recommend **opening an issue** to describe: @@ -52,7 +58,6 @@ This helps avoid duplicated work and gives you a place to ask questions. **Website issues:** - ## Step 3: Fork the repository If you want to make changes: @@ -69,7 +74,7 @@ Most contributors work directly on the `main` branch of **their fork**. ### Example (command line) -After forking the repo on GitHub, clone *your fork*: +After forking the repo on GitHub, clone _your fork_: ```bash git clone https://github.com/YOUR-USERNAME/L5-website.git @@ -97,13 +102,13 @@ Finally, open a Pull Request on GitHub from your fork to the main repository. - **Create educational content** like zines or video tutorials - **Develop add-on libraries** or document Lua ecosystem integration -We follow the *All Contributors* philosophy: +We follow the _All Contributors_ philosophy: > Our community values contributions of all forms and seeks to expand the meaning of the word contributor. ## Contributors meetings -We regularly host in-person contributor meetings in NYC. All are welcome! Feel free to [reach out directly](https://leetusman.com/info/) if you'd like to learn more. +We regularly host in-person contributor meetings in NYC. All are welcome! Feel free to [reach out directly](https://leetusman.com/info/) if you'd like to learn more. ## Winter 2026 L5 Survey diff --git a/docs/download/index.md b/docs/download/index.md index 09e1b609..0f6537ed 100644 --- a/docs/download/index.md +++ b/docs/download/index.md @@ -1,52 +1,217 @@ +## Downloads + L5 is free open source software available for Linux, Mac, Windows, Android and iOS. -L5 programs run using LÖVE (also called Love2d), a free, open-source framework. You'll need to download both L5 and LÖVE to get started. +L5 programs run using LÖVE (also called Love2d), a free, open-source framework. Love2D is a game framework, just like Gadot, Unity, or Unreal. You will use Love2D to run your L5 scripts. This is similar to using a browser to run HTML code. -## Install overview +Covered by this download tutorial: + +- Download and Install Love2D +- Download and Open L5 Starter Folder **Step-by-step install guides:** -* [macOS](install-mac.md) -* [Windows](install-windows.md) -* [Linux](install-linux.md) +??? "Install Windows" -**Quick start:** + ## Install Windows -1. Download [Love2d](https://www.love2d.org/) -2. Download the [L5 Starter project](/L5-starter.zip) and extract it -3. Open *main.lua* in any text editor and start coding (a starter program is already there) -4. To run: drag the L5-starter folder onto the Love application, or run from command line/IDE. See [Getting Started](/getting-started) for details. + This tutorial walks you through installing L5 with the Love (Love2d) framework on your Windows computer. -## Downloads + 1. Go to the [Love website](https://love2d.org) and click to download the 64-bit zipped Windows program. + 2. Your browser may show a warning. Click **"Keep"** or **"Save anyway"** to proceed with the download. It will download to your _Downloads_ folder by default. + 3. From the L5lua.org Download page, [download the L5 Starter project](/L5-starter.zip). + 4. Click **"Save"** when it asks you to save the L5-starter.zip file. + 5. Return to your _Downloads_ folder on your computer. **Right click** on the Love zip file and choose **"Extract All"**. Click **"Extract"** to extract it to your Downloads folder. + 6. Open the extracted Love folder and **double-click** the **love.exe** application to run it. Windows may show a security warning saying "Windows protected your PC". Click **"More info"** and then click **"Run anyway"**. + 7. You should see a window open with a flying bird-shaped balloon and clouds, verifying that Love is now properly installed on your computer. **At this point you can close the window.** + 8. Back in your downloads folder, **extract the L5-starter.zip file** the same way you extracted the Love zip file. Then **drag the L5-starter folder onto the love.exe application**. It should now launch and you should see a new window open with your code sketch. + +??? "Install macOS" + + ## Install macOS + + This tutorial walks you through installing L5 with the Love (Love2d) framework on your Macintosh computer. + + **Video Tutorial** + + + + **Text and Screenshot Tutorial** + + 1. Love is the underlying Framework that will allow L5 code to run on your computer. So we start by installing Love. Go to the [Love website](https://love2d.org) and click to download the 64-bit zipped Mac program. + ![Love2d website with downloads](/assets/tutorials/install/mac1.webp 'Love2d website with downloads') + 2. Click **"Allow"** if it asks 'Do you want to allow downloads on "love2d.org"?' It should download to your _Downloads_ folder by default. + ![Alert box asking permission to download Love2d](/assets/tutorials/install/mac2test.webp 'Alert box asking permission to install Love2d') + 3. Now on your desktop (called "Finder" on macOS) open up your _Downloads_ folder. You can right click and choose Open (see screenshot) or double click on Love to launch it. + ![Folder with love application and L5 Starter folder](/assets/tutorials/install/mac3.webp 'Folder with love application and L5 Starter folder') + 4. A warning popup box opens to say the program and code is not verified by Apple since you will be writing your own custom code. If you can choose Open because you turned off restrictions, then choose Open! Otherwise, **DO NOT** move to the trash. + ![Alert box stating macOS cannot verify the developer of love. The correct option is Open.](/assets/tutorials/install/mac4.webp 'Alert box stating macOS cannot verify the developer of love. The correct option is Open') + 5. If you weren't allowed to open it, go to your System Setting > Privacy & Security. Scroll down to the Security section and next to **"love" was blocked to protect your Mac.** choose **Open Anyway**. + ![System settings showing the Privacy and Security settings. Scroll down to Security and next to "love" was blocked to protect your mac, click to "Open Anyway".](/assets/tutorials/install/mac5.webp 'Alert box stating macOS cannot verify the developer of love. The correct option is Open') + 6. Now go back to your Downloads folder and **Double click** on Love. We only need to do this once! It's to verify Love works on your computer, which will allow L5 to run your custom code. You should see a window open with a flying bird-shaped balloon and clouds, verifying that Love is now properly installed on your computer. **At this point you can close the window.** + ![A flying bird-shaped balloon and cartoon clouds](/assets/tutorials/install/mac6.webp 'A flying bird-shaped balloon and cartoon clouds') + 7. From the L5lua.org Download page, [download the L5 Starter project](/L5-starter.zip). + ![L5 website download page with L5 Starter](/assets/tutorials/install/mac7.webp 'L5 website download page with L5 Starter') + 8. Click **"Allow"** if it asks 'Do you want to allow downloads on "l5lua.org"?' + ![Alert box asking permission to download L5-Starter](/assets/tutorials/install/mac8test.webp 'Alert box asking permission to download L5 Starter') + 9. Back in your downloads folder, **drag the L5-starter folder onto the Love application in the folder**. It should now launch and you should see a new window open with your code sketch. + ![A yellow background window appearing on top of folder holding L5 Starter and love application](/assets/tutorials/install/mac9.webp 'A yellow background window appearing on top of folder holding L5 Starter and love application') + +??? "Install with Linux" + + ## Install Linux + + This tutorial walks you through installing L5 with the Love (Love2d) framework on your Linux computer. + + On Linux, installation through the command line is common. Since Linux is an open source family of operating systems the exact process may need to be altered for your particular Linux distribution. + + **Install Love** + + Installing Love differs based on which Linux distribution you have. + + **Install Love on Debian/Ubuntu-based distributions** + + ```sh + sudo add-apt-repository ppa:bartbes/love-stable + sudo apt update + sudo apt install love + ``` + + **Install Love on Arch Linux** + + ```sh + sudo pacman -S love + ``` + + **Install Love on Red Hat/Fedora/CentOS** + + ```sh + sudo dnf install love + ``` + + **Install Love on Void Linux** + + ```sh + sudo xbps-install -S love + ``` + + **Additional options to install Love** + + Love can also be found in the package manager for [most other distributions](https://repology.org/project/love/versions), including BSD and Haiku OS, or installed via [FlatPak](https://flathub.org/en/apps/org.love2d.love2d), or as a portable AppImage or built from source. See the [Love2d](https://love2d.org) website or check your package manager for more information. + + **Download the L5 Starter project** + + Navigate to the directory where you'd like to save the L5-Starter folder and download the L5-Starter + + ```sh + cd path/to/folder + wget https://l5lua.org/L5-starter.zip + ``` + + Uncompress it + + ``` + unzip L5-starter.zip + ``` + + **To run your program** + + Navigate to your L5-Starter directory + + ```sh + cd /path/to/L5-starter + ``` + + And run your program + + ```sh + love . + ``` + + It should now launch and you should see a new window open with your code sketch running. + A yellow background window appearing on top of folder holding L5 Starter and love application + +Congratulations! You've now installed Love and have L5 on your computer and verified you can run your own programs. + +## Running Your Programs + +There are two ways to run a L5 program -- one method is using the desktop and the other uses the command line interface (CLI). If you are new to computing or are unsure about the CLI, then run from the desktop! + +IDEs such as ZeroBrane Studio, Sublime Text, VS Code, Notepad++, and SciTE all support launching LÖVE programs (the engine to run our L5 scripts), though require additional setup configuration not covered here. + +??? "Running L5 from the desktop" + + The easiest way to run your L5 program is to drag the **folder** containing your main.lua onto the Love2d application. Remember to drag the **folder** containing `main.lua`, and not `main.lua` itself. + + It should launch and open a new window with your sketch running in it, or print an error message. If you're running the L5 Starter program, you should see a square window with a yellow background. Congratulations. + + **By default, `print()` output only appears if you run your program from the command line. To display print output directly in your sketch window add `printToScreen()` to your `setup()` function.** + + *Once you have a sucessfully running program, you're ready for your next steps writing programs with L5. Check out [L5 for Processing-p5.js programmers](/L5-for-processingp5), [tutorials](/tutorials) or the [reference](/reference).* + +??? "Running L5 from the command line" + + === "Windows Command line" + You can launch your programs from the command line and add the `--console` flag to be able to see print() and error() output as well: + ``` + "C:\Program Files\LOVE\love.exe" --console "C:\Users\\Desktop\L5-starter" + ``` + Replace `` and `Desktop\L5-starter` with your actual username and the location of your program folder. + + === "macOS Command Line" + + There are a few extra steps to smoothly set up command line usage for L5 in the command line on Mac. + + If Love is installed in your applications folder you can run: + + ```sh + open -n -a love "~/path/to/my-program" + ``` + + This will not send debugging and print information to the Terminal nor any `describe()` text. To see printed text in the command line you need to run the Love program from Applications, like this: -### L5 Starter Project (Recommended) + ```sh + /Applications/love.app/Contents/MacOS/love ~/path/to/my-program + ``` -This compressed folder contains the *L5.lua* library, a starter *main.lua* file (with `require('L5')` already included), and a *README*. + You can set up an alias in your Terminal session to call the binary when you use love by adding an alias to your `~/.zshrc` file (Z shell configuration file). -[Download L5 Starter project](/L5-starter.zip) + Open the file with: -### Individual Downloads + ```sh + open -a TextEdit ~/.zshrc + ``` -**Latest version:** [Download L5.lua](https://raw.githubusercontent.com/L5lua/L5/main/L5.lua) + You may have to create the file first if it does not yet exist. -**Stable release (v0.1.6):** [Download L5.lua v0.1.6](https://raw.githubusercontent.com/L5lua/L5/v0.1.6/L5.lua) + ```sh + touch ~/.zshrc + ``` -### Source code + Then paste in the following code and save the file: -The [L5 repository](https://github.com/L5lua/L5) is accessible for anyone interested in viewing or modifying the L5 source code. See [contributing](/contributing.md) for ways to contribute to the library or this site. + ```sh + # alias to love + alias love="/Applications/love.app/Contents/MacOS/love" + ``` -## Offline Documentation + Now you can call love from the command line like Linux and Windows: -This L5 documentation site is available for download to run offline, with or without images. + ```sh + love ~/path/to/my-program + ``` -* [Download L5lua.org with images (8MB ZIP)](https://github.com/L5lua/L5-website/archive/refs/heads/gh-pages.zip) -* [Download L5lua.org without images (2MB ZIP)](https://github.com/L5lua/L5-website/archive/refs/heads/gh-pages-lite.zip) + If this doesn't works you should reload the .zshrc file and then try running the program again. -After downloading, extract the ZIP and serve the folder with a local web server. + ```sh + source ~/.zshrc + love ~/path/to/my-program + ``` -* For a quick local server, navigate to the extracted folder in your command line and run `python -m http.server` (Python 3) or `python -m SimpleHTTPServer` (Python 2). + === "Linux Command line" -## Running your programs + In the Terminal, you can run `love path/to/L5-starter`. Or if you are in the folder with your program, run `love .` to launch your project from the current directory. -To get started running L5 check out [Getting Started](/getting-started) or the [tutorials](/tutorials/) to learn more. +*Instructions adapted from [Love2d wiki: Getting Started](https://www.love2d.org/wiki/Getting_Started), GNU Free Documentation License 1.3.* +Amazing! Now you are ready to start learning with [First Steps](/getting-started.md). If you are familiar with Lua, p5.js, or Processing already, you should take a look at [L5 for Processing-p5.js Programmers](). diff --git a/docs/getting-started.md b/docs/getting-started.md index c52abcc8..e69de29b 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -1,84 +0,0 @@ -You can run L5 programs from your downloaded folder or via the command line or an Integrated Development Environment (IDE). - -IDEs such as ZeroBrane Studio, Sublime Text, VS Code, Notepad++, and SciTE all support launching LÖVE programs (the underlying framework used by L5), though require additional setup configuration not covered here. - -## Running L5 from the desktop - -The easiest way to run your L5 program is to drag the **folder** containing your main.lua onto the Love2d application. Remember to drag the **folder** containing `main.lua`, and not `main.lua` itself. - -It should launch and open a new window with your sketch running in it, or print an error message. If you're running the L5 Starter program, you should see a square window with a yellow background. Congratulations. - -**By default, `print()` output only appears if you run your program from the command line. To display print output directly in your sketch window add `printToScreen()` to your `setup()` function.** - -*Once you have a sucessfully running program, you're ready for your next steps writing programs with L5. Check out [L5 for Processing-p5.js programmers](/L5-for-processingp5), [tutorials](/tutorials) or the [reference](/reference).* - -## Running L5 from the command line - -Running L5 from the command line allows you to see the output of `describe()`, `print()` and any error messages in the console. - -### Linux command line - -In the Terminal, you can run `love path/to/L5-starter`. Or if you are in the folder with your program, run `love .` to launch your project from the current directory. - -### Windows command line - -You can launch your programs from the command line and add the `--console` flag to be able to see print() and error() output as well: -``` -"C:\Program Files\LOVE\love.exe" --console "C:\Users\\Desktop\L5-starter" -``` - -Replace `` and `Desktop\L5-starter` with your actual username and the location of your program folder. - -### macOS command line - -There are a few extra steps to smoothly set up command line usage for L5 in the command line on Mac. - -If Love is installed in your applications folder you can run: - -```sh -open -n -a love "~/path/to/my-program" -``` - -This will not send debugging and print information to the Terminal nor any `describe()` text. To see printed text in the command line you need to run the Love program from Applications, like this: - -```sh -/Applications/love.app/Contents/MacOS/love ~/path/to/my-program -``` - -You can set up an alias in your Terminal session to call the binary when you use love by adding an alias to your `~/.zshrc` file (Z shell configuration file). - -Open the file with: - -```sh -open -a TextEdit ~/.zshrc -``` - -You may have to create the file first if it does not yet exist. - -```sh -touch ~/.zshrc -``` - -Then paste in the following code and save the file: - -```sh -# alias to love -alias love="/Applications/love.app/Contents/MacOS/love" -``` - -Now you can call love from the command line like Linux and Windows: - -```sh -love ~/path/to/my-program -``` - -If this doesn't works you should reload the .zshrc file and then try running the program again. - -```sh -source ~/.zshrc -love ~/path/to/my-program -``` - ---- - -*Instructions adapted from [Love2d wiki: Getting Started](https://www.love2d.org/wiki/Getting_Started), GNU Free Documentation License 1.3.* diff --git a/docs/index.md b/docs/index.md index 0f79cae6..edd02de7 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,11 +1,20 @@ -# Welcome to L5 +## Welcome to L5 -![L5 logo](assets/L5-logo-blob.png) + -L5 is a fun, fast, cross-platform, and lightweight implementation of the Processing API in Lua. It is a free and open source coding library to make interactive artwork on the computer, aimed at artists, designers, and anyone that wants a flexible way to prototype art, games, toys, and other software experiments in code. +L5 is a fun, fast, cross-platform, and lightweight implementation of the **[Processing API](https://processing.org/)** in **[Lua](https://www.lua.org/)**. It is a free and open source coding library to make interactive artwork on the computer, aimed at artists, designers, and anyone that wants a flexible way to prototype art, games, toys, and other software experiments in code. -L5 is designed to work cross-platform, including on desktop, phone, and tablet. Beyond running fast on modern machines, L5 is optimized for older and lower-powered devices, minimizing resource usage to keep creative coding accessible to everyone. This helps with our goal of building resilient, long-lasting software projects. L5 is built in Lua, a robust but lightweight, long-running, lightning-fast, extensible language. +> Processing is not a single programming language, but an arts-centric system for learning, teaching, and making visual form with code. _-[Processing.py reference](https://py.processing.org/reference/)_ +L5 brings the familiar Processing creative coding environment to Lua, offering some of the best aspects of both Processing and p5.js with some twists of its own. But you don't need to know Processing already to get started with L5. L5 is built on top of the Love2D framework, and offers near-instant loading times and excellent performance. _L5 is not an official implementation of Processing or the Processing Foundation. It is a community-created project._ + +Beyond running fast on modern machines, L5 is optimized for older and lower-powered devices, minimizing resource usage to keep creative coding accessible to everyone. This helps with our goal of building resilient, long-lasting software projects. L5 is built in Lua, a robust but lightweight, long-running, lightning-fast, extensible language, that works on desktop, phone, and tablet. + +_L5 aims to make creative coding accessible, fast, and fun while leveraging the power and simplicity of Lua and a commitment to making resilient, long-lasting tools._ + +## How L5 Works + +L5 is a Lua library. Your L5 code runs inside **[Love2D](https://www.love2d.org/)**, a free open-source game framework. Think of Love2D as the engine and L5 as the creative coding toolkit on top. You download both: Love2D to run programs, and L5 to write them using a Processing-style API. ## Example sketch @@ -32,16 +41,6 @@ function mousePressed() end ``` -## How L5 Works - -L5 is a Lua library. Your L5 code runs inside **[Love2D](https://www.love2d.org/)**, a free open-source game framework. Think of Love2D as the engine and L5 as the creative coding toolkit on top. You download both: Love2D to run programs, and L5 to write them using a Processing-style API. - -## Overview - -L5 brings the familiar Processing creative coding environment to Lua, offering some of the best aspects of both Processing and p5.js with some twists of its own. But you don't need to know Processing already to get started with L5. L5 is built on top of the Love2D framework, and offers near-instant loading times and excellent performance while maintaining the intuitive API that makes [Processing](https://processing.org/) accessible to artists and designers. *L5 is not an official implementation of Processing or the Processing Foundation. It is a community-created project.* - -> Processing is not a single programming language, but an arts-centric system for learning, teaching, and making visual form with code. *-[Processing.py reference](https://py.processing.org/reference/)* - ## Why Lua? Lua is a versatile programming language known for its simplicity and efficiency. It has a straightforward easy-to-learn syntax, accessible for beginners, and it's efficient for experienced programmers as well. @@ -68,12 +67,12 @@ Where Java undergoes regular major updates and JavaScript is a fast-evolving and - **Tables everywhere**: Lua uses tables for arrays, objects, and data structures - **OOP patterns**: Check Lua documentation for object-oriented programming approaches -## Getting Started - -Ready to try L5? Check out the [download](download/index.md) page for an installation guide and the [tutorials](tutorials/index.md) for easy ways to get started. +## Get Involved -## Community and Support +**_Ready to try L5?_** +Continue to the **[download](download/index.md)** page for an installation guide and the **[tutorials](tutorials/index.md)** for easy ways to get started. +**_Want to contribute?_** While L5 is a new project with growing documentation, it benefits from: - The welcoming Processing community and their decade+ of resources @@ -84,5 +83,3 @@ While L5 is a new project with growing documentation, it benefits from: Note: As L5 is new, documentation and examples are still growing compared to the mature Processing ecosystem. --- - -*L5 aims to make creative coding accessible, fast, and fun while leveraging the power and simplicity of Lua and a commitment to making resilient, long-lasting tools.* diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css index 18284ca4..89c8210c 100644 --- a/docs/stylesheets/extra.css +++ b/docs/stylesheets/extra.css @@ -1,114 +1,130 @@ /* Manrope font */ @font-face { - font-family: 'Manrope'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url('../fonts/manrope-v20-latin-regular.woff2') format('woff2'); + font-family: 'Manrope'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url('../fonts/manrope-v20-latin-regular.woff2') format('woff2'); } @font-face { - font-family: 'Manrope'; - font-style: normal; - font-weight: 600; - font-display: swap; - src: url('../fonts/manrope-v20-latin-600.woff2') format('woff2'); + font-family: 'Manrope'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url('../fonts/manrope-v20-latin-600.woff2') format('woff2'); } /* Apply fonts */ -body, .md-typeset { - font-family: 'Manrope', -apple-system, BlinkMacSystemFont, system-ui, sans-serif; - font-size: 1rem; +body, +.md-typeset { + font-family: + 'Manrope', + -apple-system, + BlinkMacSystemFont, + system-ui, + sans-serif; + font-size: 0.9rem; } .md-nav { - font-size: 1rem; + font-size: 1rem; } -code, pre, .md-typeset code, .md-typeset pre { - font-family: Consolas, Menlo, Monaco, 'Courier New', monospace !important; - /* background-color: #f5f5f5 !important; */ - /* color: #333; */ - background-color: black !important; - color: gold; +code, +pre, +.md-typeset code, +.md-typeset pre { + font-family: Consolas, Menlo, Monaco, 'Courier New', monospace !important; + /* background-color: #f5f5f5 !important; */ + /* color: #333; */ + background-color: black !important; + color: gold; } /* Existing header styles */ .md-header { - height: 5rem; - background-color: white; - color: black; - background: radial-gradient(circle at 40% 40%, #FFD700 25%, transparent 26%),radial-gradient(circle at 60% 60%, #FFD70080 25%, transparent 26%); - background-size: 6em 6em; - background-color: #ffffff; - opacity: 1; + height: 5rem; + background-color: white; + color: black; + background: + radial-gradient(circle at 40% 40%, #ffd700 25%, transparent 26%), + radial-gradient(circle at 60% 60%, #ffd70080 25%, transparent 26%); + background-size: 6em 6em; + background-color: #ffffff; + opacity: 1; } .md-header__inner { - height: 5rem; + height: 5rem; } .md-header__title { - font-size: 1.6rem; + font-size: 1.6rem; } -.md-nav__title, .md-footer { - background-color: gold !important; +.md-nav__title, +.md-footer { + background-color: gold !important; } pre { - padding: 10px; - border-radius: 4px; - overflow-x: auto; + padding: 10px; + border-radius: 4px; + overflow-x: auto; } html { - scroll-padding-top: 5rem; + scroll-padding-top: 5rem; } /* Increase header height */ html { - scroll-padding-top: 5rem; + scroll-padding-top: 5rem; } .md-header { - height: 5rem; /* Default is usually 2.8rem, adjust as needed */ - background-color: white; - color: black; - /* background pattern */ - background: radial-gradient(circle at 40% 40%, #FFD700 25%, transparent 26%),radial-gradient(circle at 60% 60%, #FFD70080 25%, transparent 26%); - background-size: 6em 6em; - background-color: #ffffff; - opacity: 1; + height: 5rem; /* Default is usually 2.8rem, adjust as needed */ + background-color: white; + color: black; + /* background pattern */ + background: + radial-gradient(circle at 40% 40%, #ffd700 25%, transparent 26%), + radial-gradient(circle at 60% 60%, #ffd70080 25%, transparent 26%); + background-size: 6em 6em; + background-color: #ffffff; + opacity: 1; } /* Adjust header content positioning */ .md-header__inner { - height: 5rem; + height: 5rem; } .md-header__title { - font-size: 1.6rem; + font-size: 1.6rem; } -.md-nav__title, .md-footer { - background-color: gold !important; +.md-nav__title, +.md-footer { + background-color: gold !important; } pre, -pre code, code { - background-color: #f5f5f5 !important; - color: #333; - padding: 10px; - border-radius: 4px; - overflow-x: auto; +pre code, +code { + background-color: #f5f5f5 !important; + color: #333; + padding: 10px; + border-radius: 4px; + overflow-x: auto; } /* for copy button on code blocks */ .md-clipboard { - color: gold !important; - opacity: 0.7; + color: gold !important; + opacity: 0.7; } .md-clipboard:hover { - color: gold !important; - opacity: 1; + color: gold !important; + opacity: 1; } diff --git a/docs/tutorials/first-steps.md b/docs/tutorials/first-steps.md index 746dc836..e28ce636 100644 --- a/docs/tutorials/first-steps.md +++ b/docs/tutorials/first-steps.md @@ -121,5 +121,5 @@ The Reference was written with the beginner in mind, but may still take some eff ### Where to go next -From here, check out [A complete introduction to programming with L5](/tutorials/#a-complete-introduction-to-programming-with-l5). +From here, check out [A complete introduction to programming with L5](/tutorials/). diff --git a/docs/tutorials/index.md b/docs/tutorials/index.md index 1afb8833..cf746e1a 100644 --- a/docs/tutorials/index.md +++ b/docs/tutorials/index.md @@ -1,25 +1,24 @@ +# Tutorials -[First Steps](first-steps.md) - Welcome to L5! This introduction covers the basics of setting up L5 on your computer. +**A complete introduction to programming with L5** -## A complete introduction to programming with L5 +1. [First Steps](first-steps.md) - Welcome to L5! This introduction covers the basics of setting up L5 on your computer. +2. [Welcome to Coding](welcome-to-coding.md) +3. [Calling Functions](calling-functions.md) +4. [Using Variables](using-variables.md) +5. [Creating Variables](creating-variables.md) +6. [Creating Functions](creating-functions.md) +7. [If Statements](if-statements.md) +8. [Animation](animation.md) +9. [Input](input.md) +10. [For Loops](for-loops.md) +11. [Arrays (Ordered Tables)](arrays-tables.md) +12. [Using Objects](using-objects.md) -* [Welcome to Coding](welcome-to-coding.md) -* [Calling Functions](calling-functions.md) -* [Using Variables](using-variables.md) -* [Creating Variables](creating-variables.md) -* [Creating Functions](creating-functions.md) -* [If Statements](if-statements.md) -* [Animation](animation.md) -* [Input](input.md) -* [For Loops](for-loops.md) -* [Arrays (Ordered Tables)](arrays-tables.md) -* [Using Objects](using-objects.md) +**Other Resources** -## More tutorials - -* [Computational Poetry with L5](computational-poetry.md) - A workshop tutorial created for [CCFest 2026](https://ccfest.rocks) -* [Data Structure Garden](data-structure-garden.md) - Another tutorial on how to use objects and arrays -* [Video](video.md) - An intro to video formats, and loading and playing videos with L5 - -*Have an idea for a tutorial you'd like to see? Or have one to contribute? L5 is new and could use some help building out its tutorials. Check out [Contributing](/contributing) for more information on writing and submitting your own.* +- [Computational Poetry with L5](computational-poetry.md) - A workshop tutorial created for [CCFest 2026](https://ccfest.rocks) +- [Data Structure Garden](data-structure-garden.md) - Another tutorial on how to use objects and arrays +- [Video](video.md) - An intro to video formats, and loading and playing videos with L5 +_Have an idea for a tutorial you'd like to see? Or have one to contribute? L5 is new and could use some help building out its tutorials. Check out [Contributing](/contributing) for more information on writing and submitting your own._ diff --git a/mkdocs.yml b/mkdocs.yml index 65b17bc9..56717135 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,4 +1,4 @@ -site_name: "L5: A Processing Library in Lua" +site_name: 'L5: A Processing Library in Lua' site_url: https://l5lua.org validation: absolute_links: ignore @@ -15,7 +15,10 @@ theme: font: false favicon: assets/L5-logo-blob.png features: - - navigation.indexes + - navigation.tracking # URL address bar + - navigation.prune # Render only visible navigation + - toc.follow # Follow navigation + - toc.integrate # rendering nav bar to the left - content.code.copy # Copy button - content.code.select # Allow selecting code custom_dir: overrides @@ -25,15 +28,19 @@ extra_css: - stylesheets/extra.css extra: generator: false +# Added for collapsible tabs for installations +markdown_extensions: + - pymdownx.superfences + - pymdownx.details + - pymdownx.tabbed: + alternate_style: true nav: - - Welcome to L5: index.md - - Download: - - Download: download/index.md - - Install for Mac: download/install-mac.md - - Install for Windows: download/install-windows.md - - Install for Linux: download/install-linux.md - - Getting Started: getting-started.md - - L5 for Processing-p5.js programmers: L5-for-processingp5.md + - Home: index.md + - Getting Started: download/index.md + - Learn: + - Tutorials: tutorials/index.md + - Examples: examples/index.md + - L5 for Processing-p5.js programmers: L5-for-processingp5.md - Reference: - Reference Summary: reference/index.md - Shape: reference/#shape @@ -51,11 +58,11 @@ nav: - Structure: reference/#structure - Constants: reference/#constants - Foundation: reference/#foundation - - Tutorials: tutorials/index.md - - Examples: examples/index.md - - Forum: https://discourse.processing.org/c/l5/ - - Bug Reports: bug-reports.md - - Contributing: contributing.md - - For developers: how.md - - Copyleft: copyleft.md + - Contributing: + - How To: contributing.md + - Forum: https://discourse.processing.org/c/l5/ + - Bug Reports: bug-reports.md - Blog: https://notapipe.itch.io/l5/devlog + - About: + - For developers: how.md + - Copyleft: copyleft.md diff --git a/overrides/partials/content.html b/overrides/partials/content.html new file mode 100644 index 00000000..a68a2665 --- /dev/null +++ b/overrides/partials/content.html @@ -0,0 +1,11 @@ +{#- + This file was automatically generated - do not edit +-#} +{% include "partials/tags.html" %} +{% include "partials/actions.html" %} +{% if "\u003ch1" not in page.content %} +{% endif %} +{{ page.content }} +{% include "partials/source-file.html" %} +{% include "partials/feedback.html" %} +{% include "partials/comments.html" %} diff --git a/overrides/partials/nav.html b/overrides/partials/nav.html new file mode 100644 index 00000000..f9791f45 --- /dev/null +++ b/overrides/partials/nav.html @@ -0,0 +1,11 @@ +{#- This file was automatically generated - do not edit -#} {% import +"partials/nav-item.html" as item with context %} {% set class = "md-nav +md-nav--primary" %} {% if "navigation.tabs" in features %} {% set class = class +~ " md-nav--lifted" %} {% endif %} {% if "toc.integrate" in features %} {% set +class = class ~ " md-nav--integrated" %} {% endif %} + From 345471a195eff1c151e1461d72bcf4737e588937 Mon Sep 17 00:00:00 2001 From: samheckle Date: Fri, 5 Jun 2026 18:06:19 -0400 Subject: [PATCH 2/4] removed toggles and weird styling cleanup --- docs/contributing.md | 8 +- docs/download/index.md | 220 +++++++++---------------------------- docs/getting-started.md | 0 docs/index.md | 4 +- docs/stylesheets/extra.css | 132 ++++++++++------------ mkdocs.yml | 7 +- 6 files changed, 120 insertions(+), 251 deletions(-) delete mode 100644 docs/getting-started.md diff --git a/docs/contributing.md b/docs/contributing.md index d8a8cf15..cf99c963 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -9,7 +9,7 @@ Thanks for your interest in contributing to **L5**! Contributions of all kinds are welcome — from code and documentation to tutorials, examples, and teaching. -We are inspired by the _[all contributors](https://github.com/all-contributors/all-contributors.github.io)_ approach to contribution to open source projects: +We are inspired by the **[all contributors](https://github.com/all-contributors/all-contributors.github.io)** approach to contribution to open source projects: > Our community values contributions of all forms and seeks to expand the meaning of the word contributor as far and wide as possible. It includes documentation, teaching, writing code, making art, writing, design, activism, organizing, curating, or anything else you might imagine. --_from [p5.js Contributor Guidelines](https://p5js.org/contribute/contributor_guidelines/)_ @@ -17,7 +17,7 @@ If you’re new to open source, don’t worry. This guide explains **which repos ## Step 1: Decide what you want to contribute -L5 has **two main repositories**. Which one you use depends on _what you’re working on_. +L5 has **two main repositories**. Which one you use depends on **what you’re working on**. ### L5 - The library itself @@ -74,7 +74,7 @@ Most contributors work directly on the `main` branch of **their fork**. ### Example (command line) -After forking the repo on GitHub, clone _your fork_: +After forking the repo on GitHub, clone **your fork**: ```bash git clone https://github.com/YOUR-USERNAME/L5-website.git @@ -102,7 +102,7 @@ Finally, open a Pull Request on GitHub from your fork to the main repository. - **Create educational content** like zines or video tutorials - **Develop add-on libraries** or document Lua ecosystem integration -We follow the _All Contributors_ philosophy: +We follow the **All Contributors** philosophy: > Our community values contributions of all forms and seeks to expand the meaning of the word contributor. diff --git a/docs/download/index.md b/docs/download/index.md index 0f6537ed..fbc67fa5 100644 --- a/docs/download/index.md +++ b/docs/download/index.md @@ -11,125 +11,9 @@ Covered by this download tutorial: **Step-by-step install guides:** -??? "Install Windows" - - ## Install Windows - - This tutorial walks you through installing L5 with the Love (Love2d) framework on your Windows computer. - - 1. Go to the [Love website](https://love2d.org) and click to download the 64-bit zipped Windows program. - 2. Your browser may show a warning. Click **"Keep"** or **"Save anyway"** to proceed with the download. It will download to your _Downloads_ folder by default. - 3. From the L5lua.org Download page, [download the L5 Starter project](/L5-starter.zip). - 4. Click **"Save"** when it asks you to save the L5-starter.zip file. - 5. Return to your _Downloads_ folder on your computer. **Right click** on the Love zip file and choose **"Extract All"**. Click **"Extract"** to extract it to your Downloads folder. - 6. Open the extracted Love folder and **double-click** the **love.exe** application to run it. Windows may show a security warning saying "Windows protected your PC". Click **"More info"** and then click **"Run anyway"**. - 7. You should see a window open with a flying bird-shaped balloon and clouds, verifying that Love is now properly installed on your computer. **At this point you can close the window.** - 8. Back in your downloads folder, **extract the L5-starter.zip file** the same way you extracted the Love zip file. Then **drag the L5-starter folder onto the love.exe application**. It should now launch and you should see a new window open with your code sketch. - -??? "Install macOS" - - ## Install macOS - - This tutorial walks you through installing L5 with the Love (Love2d) framework on your Macintosh computer. - - **Video Tutorial** - - - - **Text and Screenshot Tutorial** - - 1. Love is the underlying Framework that will allow L5 code to run on your computer. So we start by installing Love. Go to the [Love website](https://love2d.org) and click to download the 64-bit zipped Mac program. - ![Love2d website with downloads](/assets/tutorials/install/mac1.webp 'Love2d website with downloads') - 2. Click **"Allow"** if it asks 'Do you want to allow downloads on "love2d.org"?' It should download to your _Downloads_ folder by default. - ![Alert box asking permission to download Love2d](/assets/tutorials/install/mac2test.webp 'Alert box asking permission to install Love2d') - 3. Now on your desktop (called "Finder" on macOS) open up your _Downloads_ folder. You can right click and choose Open (see screenshot) or double click on Love to launch it. - ![Folder with love application and L5 Starter folder](/assets/tutorials/install/mac3.webp 'Folder with love application and L5 Starter folder') - 4. A warning popup box opens to say the program and code is not verified by Apple since you will be writing your own custom code. If you can choose Open because you turned off restrictions, then choose Open! Otherwise, **DO NOT** move to the trash. - ![Alert box stating macOS cannot verify the developer of love. The correct option is Open.](/assets/tutorials/install/mac4.webp 'Alert box stating macOS cannot verify the developer of love. The correct option is Open') - 5. If you weren't allowed to open it, go to your System Setting > Privacy & Security. Scroll down to the Security section and next to **"love" was blocked to protect your Mac.** choose **Open Anyway**. - ![System settings showing the Privacy and Security settings. Scroll down to Security and next to "love" was blocked to protect your mac, click to "Open Anyway".](/assets/tutorials/install/mac5.webp 'Alert box stating macOS cannot verify the developer of love. The correct option is Open') - 6. Now go back to your Downloads folder and **Double click** on Love. We only need to do this once! It's to verify Love works on your computer, which will allow L5 to run your custom code. You should see a window open with a flying bird-shaped balloon and clouds, verifying that Love is now properly installed on your computer. **At this point you can close the window.** - ![A flying bird-shaped balloon and cartoon clouds](/assets/tutorials/install/mac6.webp 'A flying bird-shaped balloon and cartoon clouds') - 7. From the L5lua.org Download page, [download the L5 Starter project](/L5-starter.zip). - ![L5 website download page with L5 Starter](/assets/tutorials/install/mac7.webp 'L5 website download page with L5 Starter') - 8. Click **"Allow"** if it asks 'Do you want to allow downloads on "l5lua.org"?' - ![Alert box asking permission to download L5-Starter](/assets/tutorials/install/mac8test.webp 'Alert box asking permission to download L5 Starter') - 9. Back in your downloads folder, **drag the L5-starter folder onto the Love application in the folder**. It should now launch and you should see a new window open with your code sketch. - ![A yellow background window appearing on top of folder holding L5 Starter and love application](/assets/tutorials/install/mac9.webp 'A yellow background window appearing on top of folder holding L5 Starter and love application') - -??? "Install with Linux" - - ## Install Linux - - This tutorial walks you through installing L5 with the Love (Love2d) framework on your Linux computer. - - On Linux, installation through the command line is common. Since Linux is an open source family of operating systems the exact process may need to be altered for your particular Linux distribution. - - **Install Love** - - Installing Love differs based on which Linux distribution you have. - - **Install Love on Debian/Ubuntu-based distributions** - - ```sh - sudo add-apt-repository ppa:bartbes/love-stable - sudo apt update - sudo apt install love - ``` - - **Install Love on Arch Linux** - - ```sh - sudo pacman -S love - ``` - - **Install Love on Red Hat/Fedora/CentOS** - - ```sh - sudo dnf install love - ``` - - **Install Love on Void Linux** - - ```sh - sudo xbps-install -S love - ``` - - **Additional options to install Love** - - Love can also be found in the package manager for [most other distributions](https://repology.org/project/love/versions), including BSD and Haiku OS, or installed via [FlatPak](https://flathub.org/en/apps/org.love2d.love2d), or as a portable AppImage or built from source. See the [Love2d](https://love2d.org) website or check your package manager for more information. - - **Download the L5 Starter project** - - Navigate to the directory where you'd like to save the L5-Starter folder and download the L5-Starter - - ```sh - cd path/to/folder - wget https://l5lua.org/L5-starter.zip - ``` - - Uncompress it - - ``` - unzip L5-starter.zip - ``` - - **To run your program** - - Navigate to your L5-Starter directory - - ```sh - cd /path/to/L5-starter - ``` - - And run your program - - ```sh - love . - ``` - - It should now launch and you should see a new window open with your code sketch running. - A yellow background window appearing on top of folder holding L5 Starter and love application +* [macOS](install-mac.md) +* [Windows](install-windows.md) +* [Linux](install-linux.md) Congratulations! You've now installed Love and have L5 on your computer and verified you can run your own programs. @@ -139,79 +23,81 @@ There are two ways to run a L5 program -- one method is using the desktop and th IDEs such as ZeroBrane Studio, Sublime Text, VS Code, Notepad++, and SciTE all support launching LÖVE programs (the engine to run our L5 scripts), though require additional setup configuration not covered here. -??? "Running L5 from the desktop" +### Running L5 from the desktop + +The easiest way to run your L5 program is to drag the **folder** containing your main.lua onto the Love2d application. Remember to drag the **folder** containing `main.lua`, and not `main.lua` itself. - The easiest way to run your L5 program is to drag the **folder** containing your main.lua onto the Love2d application. Remember to drag the **folder** containing `main.lua`, and not `main.lua` itself. +It should launch and open a new window with your sketch running in it, or print an error message. If you're running the L5 Starter program, you should see a square window with a yellow background. Congratulations. - It should launch and open a new window with your sketch running in it, or print an error message. If you're running the L5 Starter program, you should see a square window with a yellow background. Congratulations. +**By default, `print()` output only appears if you run your program from the command line. To display print output directly in your sketch window add `printToScreen()` to your `setup()` function.** - **By default, `print()` output only appears if you run your program from the command line. To display print output directly in your sketch window add `printToScreen()` to your `setup()` function.** +*Once you have a sucessfully running program, you're ready for your next steps writing programs with L5. Check out [L5 for Processing-p5.js programmers](/L5-for-processingp5), [tutorials](/tutorials) or the [reference](/reference).* - *Once you have a sucessfully running program, you're ready for your next steps writing programs with L5. Check out [L5 for Processing-p5.js programmers](/L5-for-processingp5), [tutorials](/tutorials) or the [reference](/reference).* +### Running L5 from the command line -??? "Running L5 from the command line" +#### Windows Command line +You can launch your programs from the command line and add the `--console` flag to be able to see print() and error() output as well: - === "Windows Command line" - You can launch your programs from the command line and add the `--console` flag to be able to see print() and error() output as well: - ``` - "C:\Program Files\LOVE\love.exe" --console "C:\Users\\Desktop\L5-starter" - ``` - Replace `` and `Desktop\L5-starter` with your actual username and the location of your program folder. +``` +"C:\Program Files\LOVE\love.exe" --console +"C:\Users\\Desktop\L5-starter" +``` +Replace `` and `Desktop\L5-starter` with your actual username and the location of your program folder. - === "macOS Command Line" +#### macOS Command Line - There are a few extra steps to smoothly set up command line usage for L5 in the command line on Mac. +There are a few extra steps to smoothly set up command line usage for L5 in the command line on Mac. - If Love is installed in your applications folder you can run: +If Love is installed in your applications folder you can run: - ```sh - open -n -a love "~/path/to/my-program" - ``` +```sh +open -n -a love "~/path/to/my-program" +``` - This will not send debugging and print information to the Terminal nor any `describe()` text. To see printed text in the command line you need to run the Love program from Applications, like this: +This will not send debugging and print information to the Terminal nor any `describe()` text. To see printed text in the command line you need to run the Love program from Applications, like this: - ```sh - /Applications/love.app/Contents/MacOS/love ~/path/to/my-program - ``` +```sh +/Applications/love.app/Contents/MacOS/love ~/path/to/my-program +``` - You can set up an alias in your Terminal session to call the binary when you use love by adding an alias to your `~/.zshrc` file (Z shell configuration file). +You can set up an alias in your Terminal session to call the binary when you use love by adding an alias to your `~/.zshrc` file (Z shell configuration file). - Open the file with: +Open the file with: - ```sh - open -a TextEdit ~/.zshrc - ``` +```sh +open -a TextEdit ~/.zshrc +``` - You may have to create the file first if it does not yet exist. +You may have to create the file first if it does not yet exist. - ```sh - touch ~/.zshrc - ``` +```sh +touch ~/.zshrc +``` - Then paste in the following code and save the file: +Then paste in the following code and save the file: - ```sh - # alias to love - alias love="/Applications/love.app/Contents/MacOS/love" - ``` +```sh +# alias to love +alias love="/Applications/love.app/Contents/MacOS/love" +``` - Now you can call love from the command line like Linux and Windows: +Now you can call love from the command line like Linux and Windows: - ```sh - love ~/path/to/my-program - ``` +```sh +love ~/path/to/my-program +``` - If this doesn't works you should reload the .zshrc file and then try running the program again. +If this doesn't works you should reload the .zshrc file and then try running the program again. - ```sh - source ~/.zshrc - love ~/path/to/my-program - ``` +```sh +source ~/.zshrc +love ~/path/to/my-program +``` - === "Linux Command line" +#### Linux Command line - In the Terminal, you can run `love path/to/L5-starter`. Or if you are in the folder with your program, run `love .` to launch your project from the current directory. +In the Terminal, you can run `love path/to/L5-starter`. Or if you are in the folder with your program, run `love .` to launch your project from the current directory. *Instructions adapted from [Love2d wiki: Getting Started](https://www.love2d.org/wiki/Getting_Started), GNU Free Documentation License 1.3.* -Amazing! Now you are ready to start learning with [First Steps](/getting-started.md). If you are familiar with Lua, p5.js, or Processing already, you should take a look at [L5 for Processing-p5.js Programmers](). +Amazing! Now you are ready to start learning with [First Steps](../tutorials/first-steps.md). If you are familiar with Lua, p5.js, or Processing already, you should take a look at [L5 for Processing-p5.js Programmers](../L5-for-processingp5.md). diff --git a/docs/getting-started.md b/docs/getting-started.md deleted file mode 100644 index e69de29b..00000000 diff --git a/docs/index.md b/docs/index.md index edd02de7..9b0f162a 100644 --- a/docs/index.md +++ b/docs/index.md @@ -4,9 +4,9 @@ L5 is a fun, fast, cross-platform, and lightweight implementation of the **[Processing API](https://processing.org/)** in **[Lua](https://www.lua.org/)**. It is a free and open source coding library to make interactive artwork on the computer, aimed at artists, designers, and anyone that wants a flexible way to prototype art, games, toys, and other software experiments in code. -> Processing is not a single programming language, but an arts-centric system for learning, teaching, and making visual form with code. _-[Processing.py reference](https://py.processing.org/reference/)_ +> Processing is not a single programming language, but an arts-centric system for learning, teaching, and making visual form with code. **-[Processing.py reference](https://py.processing.org/reference/)** -L5 brings the familiar Processing creative coding environment to Lua, offering some of the best aspects of both Processing and p5.js with some twists of its own. But you don't need to know Processing already to get started with L5. L5 is built on top of the Love2D framework, and offers near-instant loading times and excellent performance. _L5 is not an official implementation of Processing or the Processing Foundation. It is a community-created project._ +L5 brings the familiar Processing creative coding environment to Lua, offering some of the best aspects of both Processing and p5.js with some twists of its own. But you don't need to know Processing already to get started with L5. L5 is built on top of the Love2D framework, and offers near-instant loading times and excellent performance. **L5 is not an official implementation of Processing or the Processing Foundation. It is a community-created project.** Beyond running fast on modern machines, L5 is optimized for older and lower-powered devices, minimizing resource usage to keep creative coding accessible to everyone. This helps with our goal of building resilient, long-lasting software projects. L5 is built in Lua, a robust but lightweight, long-running, lightning-fast, extensible language, that works on desktop, phone, and tablet. diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css index 89c8210c..18284ca4 100644 --- a/docs/stylesheets/extra.css +++ b/docs/stylesheets/extra.css @@ -1,130 +1,114 @@ /* Manrope font */ @font-face { - font-family: 'Manrope'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url('../fonts/manrope-v20-latin-regular.woff2') format('woff2'); + font-family: 'Manrope'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url('../fonts/manrope-v20-latin-regular.woff2') format('woff2'); } @font-face { - font-family: 'Manrope'; - font-style: normal; - font-weight: 600; - font-display: swap; - src: url('../fonts/manrope-v20-latin-600.woff2') format('woff2'); + font-family: 'Manrope'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: url('../fonts/manrope-v20-latin-600.woff2') format('woff2'); } /* Apply fonts */ -body, -.md-typeset { - font-family: - 'Manrope', - -apple-system, - BlinkMacSystemFont, - system-ui, - sans-serif; - font-size: 0.9rem; +body, .md-typeset { + font-family: 'Manrope', -apple-system, BlinkMacSystemFont, system-ui, sans-serif; + font-size: 1rem; } .md-nav { - font-size: 1rem; + font-size: 1rem; } -code, -pre, -.md-typeset code, -.md-typeset pre { - font-family: Consolas, Menlo, Monaco, 'Courier New', monospace !important; - /* background-color: #f5f5f5 !important; */ - /* color: #333; */ - background-color: black !important; - color: gold; +code, pre, .md-typeset code, .md-typeset pre { + font-family: Consolas, Menlo, Monaco, 'Courier New', monospace !important; + /* background-color: #f5f5f5 !important; */ + /* color: #333; */ + background-color: black !important; + color: gold; } /* Existing header styles */ .md-header { - height: 5rem; - background-color: white; - color: black; - background: - radial-gradient(circle at 40% 40%, #ffd700 25%, transparent 26%), - radial-gradient(circle at 60% 60%, #ffd70080 25%, transparent 26%); - background-size: 6em 6em; - background-color: #ffffff; - opacity: 1; + height: 5rem; + background-color: white; + color: black; + background: radial-gradient(circle at 40% 40%, #FFD700 25%, transparent 26%),radial-gradient(circle at 60% 60%, #FFD70080 25%, transparent 26%); + background-size: 6em 6em; + background-color: #ffffff; + opacity: 1; } .md-header__inner { - height: 5rem; + height: 5rem; } .md-header__title { - font-size: 1.6rem; + font-size: 1.6rem; } -.md-nav__title, -.md-footer { - background-color: gold !important; +.md-nav__title, .md-footer { + background-color: gold !important; } pre { - padding: 10px; - border-radius: 4px; - overflow-x: auto; + padding: 10px; + border-radius: 4px; + overflow-x: auto; } html { - scroll-padding-top: 5rem; + scroll-padding-top: 5rem; } /* Increase header height */ html { - scroll-padding-top: 5rem; + scroll-padding-top: 5rem; } .md-header { - height: 5rem; /* Default is usually 2.8rem, adjust as needed */ - background-color: white; - color: black; - /* background pattern */ - background: - radial-gradient(circle at 40% 40%, #ffd700 25%, transparent 26%), - radial-gradient(circle at 60% 60%, #ffd70080 25%, transparent 26%); - background-size: 6em 6em; - background-color: #ffffff; - opacity: 1; + height: 5rem; /* Default is usually 2.8rem, adjust as needed */ + background-color: white; + color: black; + /* background pattern */ + background: radial-gradient(circle at 40% 40%, #FFD700 25%, transparent 26%),radial-gradient(circle at 60% 60%, #FFD70080 25%, transparent 26%); + background-size: 6em 6em; + background-color: #ffffff; + opacity: 1; } /* Adjust header content positioning */ .md-header__inner { - height: 5rem; + height: 5rem; } .md-header__title { - font-size: 1.6rem; + font-size: 1.6rem; } -.md-nav__title, -.md-footer { - background-color: gold !important; +.md-nav__title, .md-footer { + background-color: gold !important; } pre, -pre code, -code { - background-color: #f5f5f5 !important; - color: #333; - padding: 10px; - border-radius: 4px; - overflow-x: auto; +pre code, code { + background-color: #f5f5f5 !important; + color: #333; + padding: 10px; + border-radius: 4px; + overflow-x: auto; } /* for copy button on code blocks */ .md-clipboard { - color: gold !important; - opacity: 0.7; + color: gold !important; + opacity: 0.7; } .md-clipboard:hover { - color: gold !important; - opacity: 1; + color: gold !important; + opacity: 1; } diff --git a/mkdocs.yml b/mkdocs.yml index 56717135..76659224 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -17,6 +17,7 @@ theme: features: - navigation.tracking # URL address bar - navigation.prune # Render only visible navigation + - navigation.path # Breadcrumbs for beginning of filename - toc.follow # Follow navigation - toc.integrate # rendering nav bar to the left - content.code.copy # Copy button @@ -30,10 +31,8 @@ extra: generator: false # Added for collapsible tabs for installations markdown_extensions: - - pymdownx.superfences - - pymdownx.details - - pymdownx.tabbed: - alternate_style: true + - toc: + toc_depth: 3 nav: - Home: index.md - Getting Started: download/index.md From bdf8a9d82c47b410cd202e7e4d86716afcbaf7b4 Mon Sep 17 00:00:00 2001 From: samheckle Date: Tue, 9 Jun 2026 11:41:17 -0400 Subject: [PATCH 3/4] updates from feedback --- docs/contributing.md | 2 +- docs/download/index.md | 4 ++-- docs/download/install-mac.md | 4 ++-- docs/index.md | 14 +++++++------- docs/tutorials/index.md | 2 +- mkdocs.yml | 7 +++---- 6 files changed, 16 insertions(+), 17 deletions(-) diff --git a/docs/contributing.md b/docs/contributing.md index cf99c963..8844b197 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -11,7 +11,7 @@ Thanks for your interest in contributing to **L5**! Contributions of all kinds a We are inspired by the **[all contributors](https://github.com/all-contributors/all-contributors.github.io)** approach to contribution to open source projects: -> Our community values contributions of all forms and seeks to expand the meaning of the word contributor as far and wide as possible. It includes documentation, teaching, writing code, making art, writing, design, activism, organizing, curating, or anything else you might imagine. --_from [p5.js Contributor Guidelines](https://p5js.org/contribute/contributor_guidelines/)_ +> Our community values contributions of all forms and seeks to expand the meaning of the word contributor as far and wide as possible. It includes documentation, teaching, writing code, making art, writing, design, activism, organizing, curating, or anything else you might imagine. -- *from [p5.js Contributor Guidelines](https://p5js.org/contribute/contributor_guidelines/)* If you’re new to open source, don’t worry. This guide explains **which repository to use**, **when to fork**, and **how to get started** step by step. diff --git a/docs/download/index.md b/docs/download/index.md index fbc67fa5..417d7bd9 100644 --- a/docs/download/index.md +++ b/docs/download/index.md @@ -2,11 +2,11 @@ L5 is free open source software available for Linux, Mac, Windows, Android and iOS. -L5 programs run using LÖVE (also called Love2d), a free, open-source framework. Love2D is a game framework, just like Gadot, Unity, or Unreal. You will use Love2D to run your L5 scripts. This is similar to using a browser to run HTML code. +L5 programs run using LÖVE (also called Love2d), a free, open-source framework. Love2d is a game framework, just like Godot, Unity, or Unreal. You will use Love2d to run your L5 scripts. This is similar to using a browser to run HTML code. Covered by this download tutorial: -- Download and Install Love2D +- Download and Install Love2d - Download and Open L5 Starter Folder **Step-by-step install guides:** diff --git a/docs/download/install-mac.md b/docs/download/install-mac.md index ad93bb60..479e5630 100644 --- a/docs/download/install-mac.md +++ b/docs/download/install-mac.md @@ -11,7 +11,7 @@ This tutorial walks you through installing L5 with the Love (Love2d) framework o 1. Love is the underlying Framework that will allow L5 code to run on your computer. So we start by installing Love. Go to the [Love website](https://love2d.org) and click to download the 64-bit zipped Mac program. ![Love2d website with downloads](/assets/tutorials/install/mac1.webp "Love2d website with downloads") 2. Click **"Allow"** if it asks 'Do you want to allow downloads on "love2d.org"?' It should download to your *Downloads* folder by default. -![Alert box asking permission to download Love2d](/assets/tutorials/install/mac2test.webp "Alert box asking permission to install Love2d") +![Alert box asking permission to download Love2d](/assets/tutorials/install/mac2.webp "Alert box asking permission to install Love2d") 3. Now on your desktop (called "Finder" on macOS) open up your *Downloads* folder. You can right click and choose Open (see screenshot) or double click on Love to launch it. ![Folder with love application and L5 Starter folder](/assets/tutorials/install/mac3.webp "Folder with love application and L5 Starter folder") 4. A warning popup box opens to say the program and code is not verified by Apple since you will be writing your own custom code. If you can choose Open because you turned off restrictions, then choose Open! Otherwise, **DO NOT** move to the trash. @@ -23,7 +23,7 @@ This tutorial walks you through installing L5 with the Love (Love2d) framework o 7. From the L5lua.org Download page, [download the L5 Starter project](/L5-starter.zip). ![L5 website download page with L5 Starter](/assets/tutorials/install/mac7.webp "L5 website download page with L5 Starter") 8. Click **"Allow"** if it asks 'Do you want to allow downloads on "l5lua.org"?' -![Alert box asking permission to download L5-Starter](/assets/tutorials/install/mac8test.webp "Alert box asking permission to download L5 Starter") +![Alert box asking permission to download L5-Starter](/assets/tutorials/install/mac8.webp "Alert box asking permission to download L5 Starter") 9. Back in your downloads folder, **drag the L5-starter folder onto the Love application in the folder**. It should now launch and you should see a new window open with your code sketch. ![A yellow background window appearing on top of folder holding L5 Starter and love application](/assets/tutorials/install/mac9.webp "A yellow background window appearing on top of folder holding L5 Starter and love application") diff --git a/docs/index.md b/docs/index.md index 9b0f162a..52732795 100644 --- a/docs/index.md +++ b/docs/index.md @@ -6,15 +6,15 @@ L5 is a fun, fast, cross-platform, and lightweight implementation of the **[Proc > Processing is not a single programming language, but an arts-centric system for learning, teaching, and making visual form with code. **-[Processing.py reference](https://py.processing.org/reference/)** -L5 brings the familiar Processing creative coding environment to Lua, offering some of the best aspects of both Processing and p5.js with some twists of its own. But you don't need to know Processing already to get started with L5. L5 is built on top of the Love2D framework, and offers near-instant loading times and excellent performance. **L5 is not an official implementation of Processing or the Processing Foundation. It is a community-created project.** +L5 brings the familiar Processing creative coding environment to Lua, offering some of the best aspects of both Processing and p5.js with some twists of its own. But you don't need to know Processing already to get started with L5. L5 is built on top of the Love2d framework, and offers near-instant loading times and excellent performance. **L5 is not an official implementation of Processing or the Processing Foundation. It is a community-created project.** Beyond running fast on modern machines, L5 is optimized for older and lower-powered devices, minimizing resource usage to keep creative coding accessible to everyone. This helps with our goal of building resilient, long-lasting software projects. L5 is built in Lua, a robust but lightweight, long-running, lightning-fast, extensible language, that works on desktop, phone, and tablet. -_L5 aims to make creative coding accessible, fast, and fun while leveraging the power and simplicity of Lua and a commitment to making resilient, long-lasting tools._ +*L5 aims to make creative coding accessible, fast, and fun while leveraging the power and simplicity of Lua and a commitment to making resilient, long-lasting tools.* ## How L5 Works -L5 is a Lua library. Your L5 code runs inside **[Love2D](https://www.love2d.org/)**, a free open-source game framework. Think of Love2D as the engine and L5 as the creative coding toolkit on top. You download both: Love2D to run programs, and L5 to write them using a Processing-style API. +L5 is a Lua library. Your L5 code runs inside **[Love2d](https://www.love2d.org/)**, a free open-source game framework. Think of Love2d as the engine and L5 as the creative coding toolkit on top. You download both: Love2d to run programs, and L5 to write them using a Processing-style API. ## Example sketch @@ -53,7 +53,7 @@ Where Java undergoes regular major updates and JavaScript is a fast-evolving and - **Lightning fast**: Scripts, images, and audio load near-instantly - **Easy syntax**: Easy to learn and consistent syntax. -- **Minimal footprint**: L5 (~6MB, from Love2D ~4.5MB + LuaJIT ~1.5MB) vs Processing (~500MB) vs p5.js (~1-4MB + browser ~250-355MB) +- **Minimal footprint**: L5 (~6MB, from Love2d ~4.5MB + LuaJIT ~1.5MB) vs Processing (~500MB) vs p5.js (~1-4MB + browser ~250-355MB) - **Lighter impact**: Runs on older hardware and devices. - **Cross-platform**: Runs on Windows, macOS, Linux, iOS, Android, Raspberry Pi - **Synchronous execution**: Code runs in predictable order, no async complexity @@ -69,15 +69,15 @@ Where Java undergoes regular major updates and JavaScript is a fast-evolving and ## Get Involved -**_Ready to try L5?_** +***Ready to try L5?*** Continue to the **[download](download/index.md)** page for an installation guide and the **[tutorials](tutorials/index.md)** for easy ways to get started. -**_Want to contribute?_** +***Want to contribute?*** While L5 is a new project with growing documentation, it benefits from: - The welcoming Processing community and their decade+ of resources - Extensive Processing tutorials, books, and forums that translate well to L5 -- The stable Lua and Love2D ecosystems +- The stable Lua and Love2d ecosystems - Active development and community contributions Note: As L5 is new, documentation and examples are still growing compared to the mature Processing ecosystem. diff --git a/docs/tutorials/index.md b/docs/tutorials/index.md index cf746e1a..8ff817fb 100644 --- a/docs/tutorials/index.md +++ b/docs/tutorials/index.md @@ -21,4 +21,4 @@ - [Data Structure Garden](data-structure-garden.md) - Another tutorial on how to use objects and arrays - [Video](video.md) - An intro to video formats, and loading and playing videos with L5 -_Have an idea for a tutorial you'd like to see? Or have one to contribute? L5 is new and could use some help building out its tutorials. Check out [Contributing](/contributing) for more information on writing and submitting your own._ +*Have an idea for a tutorial you'd like to see? Or have one to contribute? L5 is new and could use some help building out its tutorials. Check out [Contributing](/contributing) for more information on writing and submitting your own.* diff --git a/mkdocs.yml b/mkdocs.yml index 76659224..a06558bc 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -59,9 +59,8 @@ nav: - Foundation: reference/#foundation - Contributing: - How To: contributing.md - - Forum: https://discourse.processing.org/c/l5/ + - Developer Resources: how.md - Bug Reports: bug-reports.md - - Blog: https://notapipe.itch.io/l5/devlog - - About: - - For developers: how.md - Copyleft: copyleft.md + - ➘ Forum: https://discourse.processing.org/c/l5/ + - ➘ Blog: https://notapipe.itch.io/l5/devlog From 7c6afb45a9f6e6b5795fec460518ca80a786ae56 Mon Sep 17 00:00:00 2001 From: lee2sman Date: Tue, 9 Jun 2026 21:28:39 -0400 Subject: [PATCH 4/4] update sidebar, clean up h1's, update suggested flow from install to running.md --- docs/contributing.md | 2 +- docs/download/index.md | 89 ++------------------------------ docs/download/install-linux.md | 3 +- docs/download/install-mac.md | 2 +- docs/download/install-windows.md | 2 +- docs/download/running.md | 84 ++++++++++++++++++++++++++++++ docs/index.md | 2 +- docs/reference/index.md | 2 + mkdocs.yml | 27 +++------- 9 files changed, 102 insertions(+), 111 deletions(-) create mode 100644 docs/download/running.md diff --git a/docs/contributing.md b/docs/contributing.md index 8844b197..66c75bab 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -5,7 +5,7 @@ } -## Contributing to L5 ❤️ +# Contributing to L5 ❤️ Thanks for your interest in contributing to **L5**! Contributions of all kinds are welcome — from code and documentation to tutorials, examples, and teaching. diff --git a/docs/download/index.md b/docs/download/index.md index 417d7bd9..c17eace9 100644 --- a/docs/download/index.md +++ b/docs/download/index.md @@ -1,4 +1,4 @@ -## Downloads +# Downloads L5 is free open source software available for Linux, Mac, Windows, Android and iOS. @@ -9,7 +9,7 @@ Covered by this download tutorial: - Download and Install Love2d - Download and Open L5 Starter Folder -**Step-by-step install guides:** +### Step-by-step install guides * [macOS](install-mac.md) * [Windows](install-windows.md) @@ -17,87 +17,4 @@ Covered by this download tutorial: Congratulations! You've now installed Love and have L5 on your computer and verified you can run your own programs. -## Running Your Programs - -There are two ways to run a L5 program -- one method is using the desktop and the other uses the command line interface (CLI). If you are new to computing or are unsure about the CLI, then run from the desktop! - -IDEs such as ZeroBrane Studio, Sublime Text, VS Code, Notepad++, and SciTE all support launching LÖVE programs (the engine to run our L5 scripts), though require additional setup configuration not covered here. - -### Running L5 from the desktop - -The easiest way to run your L5 program is to drag the **folder** containing your main.lua onto the Love2d application. Remember to drag the **folder** containing `main.lua`, and not `main.lua` itself. - -It should launch and open a new window with your sketch running in it, or print an error message. If you're running the L5 Starter program, you should see a square window with a yellow background. Congratulations. - -**By default, `print()` output only appears if you run your program from the command line. To display print output directly in your sketch window add `printToScreen()` to your `setup()` function.** - -*Once you have a sucessfully running program, you're ready for your next steps writing programs with L5. Check out [L5 for Processing-p5.js programmers](/L5-for-processingp5), [tutorials](/tutorials) or the [reference](/reference).* - -### Running L5 from the command line - -#### Windows Command line -You can launch your programs from the command line and add the `--console` flag to be able to see print() and error() output as well: - -``` -"C:\Program Files\LOVE\love.exe" --console -"C:\Users\\Desktop\L5-starter" -``` -Replace `` and `Desktop\L5-starter` with your actual username and the location of your program folder. - -#### macOS Command Line - -There are a few extra steps to smoothly set up command line usage for L5 in the command line on Mac. - -If Love is installed in your applications folder you can run: - -```sh -open -n -a love "~/path/to/my-program" -``` - -This will not send debugging and print information to the Terminal nor any `describe()` text. To see printed text in the command line you need to run the Love program from Applications, like this: - -```sh -/Applications/love.app/Contents/MacOS/love ~/path/to/my-program -``` - -You can set up an alias in your Terminal session to call the binary when you use love by adding an alias to your `~/.zshrc` file (Z shell configuration file). - -Open the file with: - -```sh -open -a TextEdit ~/.zshrc -``` - -You may have to create the file first if it does not yet exist. - -```sh -touch ~/.zshrc -``` - -Then paste in the following code and save the file: - -```sh -# alias to love -alias love="/Applications/love.app/Contents/MacOS/love" -``` - -Now you can call love from the command line like Linux and Windows: - -```sh -love ~/path/to/my-program -``` - -If this doesn't works you should reload the .zshrc file and then try running the program again. - -```sh -source ~/.zshrc -love ~/path/to/my-program -``` - -#### Linux Command line - -In the Terminal, you can run `love path/to/L5-starter`. Or if you are in the folder with your program, run `love .` to launch your project from the current directory. - -*Instructions adapted from [Love2d wiki: Getting Started](https://www.love2d.org/wiki/Getting_Started), GNU Free Documentation License 1.3.* - -Amazing! Now you are ready to start learning with [First Steps](../tutorials/first-steps.md). If you are familiar with Lua, p5.js, or Processing already, you should take a look at [L5 for Processing-p5.js Programmers](../L5-for-processingp5.md). +Now your computer you are ready to write and [run your L5 programs](running.md). diff --git a/docs/download/install-linux.md b/docs/download/install-linux.md index b350b4d7..20f9706c 100644 --- a/docs/download/install-linux.md +++ b/docs/download/install-linux.md @@ -70,5 +70,4 @@ love . It should now launch and you should see a new window open with your code sketch running. A yellow background window appearing on top of folder holding L5 Starter and love application -**Next steps:** You've installed Love and have L5 on your computer and verified you can run your own programs. Check out [Getting Started](/getting-started) or the [tutorials](/tutorials/) to learn more. - +**Next steps:** You've installed Love and have L5 on your computer and verified you can run your own programs. Check out other ways to [run your own programs](running.md). diff --git a/docs/download/install-mac.md b/docs/download/install-mac.md index 479e5630..620e6e4b 100644 --- a/docs/download/install-mac.md +++ b/docs/download/install-mac.md @@ -27,4 +27,4 @@ This tutorial walks you through installing L5 with the Love (Love2d) framework o 9. Back in your downloads folder, **drag the L5-starter folder onto the Love application in the folder**. It should now launch and you should see a new window open with your code sketch. ![A yellow background window appearing on top of folder holding L5 Starter and love application](/assets/tutorials/install/mac9.webp "A yellow background window appearing on top of folder holding L5 Starter and love application") -**Next steps:** You've installed Love and have L5 on your computer and verified you can run your own programs. Check out [Getting Started](/getting-started) or the [tutorials](index.md) to learn more about where you can edit your code and run it. +**Next steps:** You've installed Love and have L5 on your computer and verified you can run your own programs. Check out other ways to [run your own programs](running.md). diff --git a/docs/download/install-windows.md b/docs/download/install-windows.md index 9d3b3281..3e1f9daf 100644 --- a/docs/download/install-windows.md +++ b/docs/download/install-windows.md @@ -11,4 +11,4 @@ This tutorial walks you through installing L5 with the Love (Love2d) framework o 7. You should see a window open with a flying bird-shaped balloon and clouds, verifying that Love is now properly installed on your computer. **At this point you can close the window.** 8. Back in your downloads folder, **extract the L5-starter.zip file** the same way you extracted the Love zip file. Then **drag the L5-starter folder onto the love.exe application**. It should now launch and you should see a new window open with your code sketch. -**Next steps:** You've installed Love and have L5 on your computer and verified you can run your own programs. Check out [Getting Started](/getting-started) or the [tutorials](/tutorials/) to learn more. +**Next steps:** You've installed Love and have L5 on your computer and verified you can run your own programs. Check out other ways to [run your own programs](running.md). diff --git a/docs/download/running.md b/docs/download/running.md new file mode 100644 index 00000000..a5c4ec53 --- /dev/null +++ b/docs/download/running.md @@ -0,0 +1,84 @@ +# Running Your Programs + +There are two ways to run a L5 program -- one method is using the desktop and the other uses the command line interface (CLI). If you are new to computing or are unsure about the CLI, then run from the desktop! + +IDEs such as ZeroBrane Studio, Sublime Text, VS Code, Notepad++, and SciTE all support launching LÖVE programs (the engine to run our L5 scripts), though require additional setup configuration not covered here. + +## Running L5 from the desktop + +The easiest way to run your L5 program is to drag the **folder** containing your main.lua onto the Love2d application. Remember to drag the **folder** containing `main.lua`, and not `main.lua` itself. + +It should launch and open a new window with your sketch running in it, or print an error message. If you're running the L5 Starter program, you should see a square window with a yellow background. Congratulations. + +**By default, `print()` output only appears if you run your program from the command line. To display print output directly in your sketch window add `printToScreen()` to your `setup()` function.** + +*Once you have a sucessfully running program, you're ready for your next steps writing programs with L5. Check out [L5 for Processing-p5.js programmers](/L5-for-processingp5), [tutorials](/tutorials) or the [reference](/reference).* + +## Running L5 from the command line + +### Windows Command line +You can launch your programs from the command line and add the `--console` flag to be able to see print() and error() output as well: + +``` +"C:\Program Files\LOVE\love.exe" --console +"C:\Users\\Desktop\L5-starter" +``` +Replace `` and `Desktop\L5-starter` with your actual username and the location of your program folder. + +### macOS Command Line + +There are a few extra steps to smoothly set up command line usage for L5 in the command line on Mac. + +If Love is installed in your applications folder you can run: + +```sh +open -n -a love "~/path/to/my-program" +``` + +This will not send debugging and print information to the Terminal nor any `describe()` text. To see printed text in the command line you need to run the Love program from Applications, like this: + +```sh +/Applications/love.app/Contents/MacOS/love ~/path/to/my-program +``` + +You can set up an alias in your Terminal session to call the binary when you use love by adding an alias to your `~/.zshrc` file (Z shell configuration file). + +Open the file with: + +```sh +open -a TextEdit ~/.zshrc +``` + +You may have to create the file first if it does not yet exist. + +```sh +touch ~/.zshrc +``` + +Then paste in the following code and save the file: + +```sh +# alias to love +alias love="/Applications/love.app/Contents/MacOS/love" +``` + +Now you can call love from the command line like Linux and Windows: + +```sh +love ~/path/to/my-program +``` + +If this doesn't works you should reload the .zshrc file and then try running the program again. + +```sh +source ~/.zshrc +love ~/path/to/my-program +``` + +### Linux Command line + +In the Terminal, you can run `love path/to/L5-starter`. Or if you are in the folder with your program, run `love .` to launch your project from the current directory. + +*Instructions adapted from [Love2d wiki: Getting Started](https://www.love2d.org/wiki/Getting_Started), GNU Free Documentation License 1.3.* + +Amazing! Now you are ready to start learning with [First Steps](../tutorials/first-steps.md). If you are familiar with Lua, p5.js, or Processing already, you should take a look at [L5 for Processing-p5.js Programmers](../L5-for-processingp5.md). diff --git a/docs/index.md b/docs/index.md index 52732795..4ddbcd23 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,4 +1,4 @@ -## Welcome to L5 +# Welcome to L5 diff --git a/docs/reference/index.md b/docs/reference/index.md index 213a005b..9481fbae 100644 --- a/docs/reference/index.md +++ b/docs/reference/index.md @@ -1,3 +1,5 @@ +# Reference + An offline version of this documentation is available for [download](/download/#offline-documentation). ## Shape diff --git a/mkdocs.yml b/mkdocs.yml index a06558bc..3971cf8c 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -32,31 +32,20 @@ extra: # Added for collapsible tabs for installations markdown_extensions: - toc: - toc_depth: 3 + toc_depth: 2 nav: - Home: index.md - - Getting Started: download/index.md + - Getting Started: + - download/index.md + - Mac: download/install-mac.md + - Windows: download/install-windows.md + - Linux: download/install-linux.md + - Running Your Programs: download/running.md - Learn: - Tutorials: tutorials/index.md - Examples: examples/index.md - L5 for Processing-p5.js programmers: L5-for-processingp5.md - - Reference: - - Reference Summary: reference/index.md - - Shape: reference/#shape - - Color: reference/#color - - Typography: reference/#typography - - Image: reference/#image - - Media: reference/#media - - Transform: reference/#transform - - Environment: reference/#environment - - Rendering: reference/#rendering - - Math: reference/#math - - IO: reference/#io - - Events: reference/#events - - Data: reference/#data - - Structure: reference/#structure - - Constants: reference/#constants - - Foundation: reference/#foundation + - Reference: reference/index.md - Contributing: - How To: contributing.md - Developer Resources: how.md