Skip to content

Commit a4206a0

Browse files
committed
v0.0.7 - mystical
$ oe 'a quote about seven' gemma3n:e2b generated the command: echo "Seven is a number that holds a special place in the world, representing completeness, perfection, and the mystical. It's a powerful symbol, often associated with wholeness and divine harmony." ✅ Valid command: echo ✅ Valid Bash Syntax Run command (y/N)?
1 parent 3e373e7 commit a4206a0

File tree

12 files changed

+73
-63
lines changed

12 files changed

+73
-63
lines changed

README.md

Lines changed: 51 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -22,25 +22,47 @@ cd bash-screensavers
2222
./screensaver.sh
2323
```
2424
```
25-
Bash Screensavers v0.0.6
26-
27-
1. alpha
28-
2. bouncing
29-
3. cutesaver
30-
4. fireworks
31-
5. matrix
32-
6. pipes
33-
7. rain
34-
8. speaky
35-
9. stars
36-
10. tunnel
25+
Bash Screensavers v0.0.7
26+
27+
1 . alpha - colorful pixels, one at a time
28+
2 . bouncing - classic bouncing 'O's
29+
3 . cutesaver - infinite loop of cuteness
30+
4 . fireworks - Ooh! Aah! Pretty lights!
31+
5 . matrix - classic digital rain
32+
6 . pipes - classic maze of pipes
33+
7 . rain - soothing, gentle rain
34+
8 . speaky - dramatic talking screensaver
35+
9 . stars - twinkling starfield
36+
10. tunnel - fly into the digital tunnel
3737
3838
(Press ^C to exit)
3939
4040
Choose your screensaver:
41+
4142
```
4243

43-
## Create Your Own Screensaver
44+
## Join the Community
45+
46+
Have questions, ideas, or just want to chat? Join our Discord server!
47+
48+
[**Join our Discord!**](https://discord.gg/BGQJCbYVBa)
49+
50+
51+
## Developers Guide
52+
53+
### Contributing
54+
55+
We welcome contributions!
56+
57+
Feel free to fork the repo,
58+
create a new screensaver,
59+
fix a bug,
60+
make something better
61+
and submit a pull request.
62+
63+
Let's make the command line a more colorful place, one ASCII character at a time.
64+
65+
### Create Your Own Screensaver
4466

4567
Got an idea for a cool ASCII animation? Want to contribute to the collection? It's easy!
4668

@@ -53,13 +75,6 @@ Got an idea for a cool ASCII animation? Want to contribute to the collection? It
5375

5476
That's it! The main `screensaver.sh` script will automatically detect your new creation.
5577

56-
### Codespaces
57-
58-
* whip up a [Codespace from attogram/bash-screensavers](https://codespaces.new/attogram/bash-screensavers)
59-
for fun!
60-
61-
## Guide for Developers and AI agents
62-
6378
### Project Overview
6479

6580
* `./screensaver.sh` is the main menu script
@@ -69,8 +84,10 @@ That's it! The main `screensaver.sh` script will automatically detect your new c
6984
* Each screensaver has its own directory inside `./gallery`
7085
* The name of the directory is the name of the screensaver.
7186
* example: screensaver named 'foo' is in: `./gallery/foo`
72-
* Each screensaver must have a run script in format 'name.sh'
87+
* Each screensaver has a run script in format 'name.sh'
7388
* example: `./gallery/foo/foo.sh`
89+
* Each screensaver has a config file with name, tagline, etc
90+
* example: `./gallery/foo/config.sh`
7491
* `./tests` directory is the BATS test suite for this project
7592
* `./.github` directory is for GitHub Workflows for this project.
7693

@@ -84,13 +101,23 @@ That's it! The main `screensaver.sh` script will automatically detect your new c
84101
├─ gallery # Welcome to the Gallery of Terminal Visualizations
85102
│ ├─ name # I'm a screensaver, and I have my own directory!
86103
│ │ └─ name.sh # I'm a screensaver, and I can run, run, run!
104+
│ │ └─ config.sh # Psst... want some free metadata?
87105
├─ tests # I gotta BATSy idea, we should test this stuff
88106
│ └─ tests.sh # It can't be that bad, can it?
89107
└─ .github # GitHub magic lives here
90108
└─ workflows
91109
└─ create.release.for.tag.yml
92110
```
93111

112+
### Style Suggestions
113+
114+
* Indents **SHOULD** be whatever works for you
115+
* Functions and variables **SHOULD** be in `snake_case`
116+
* Super-duper important variables **SHOULD** be in `SCREAMING_SNAKE_CASE`
117+
* You **MUST** have fun
118+
* Why use boring function names like `main()`
119+
when `start_the_visual_pleasure()` is just a few more characters
120+
94121
### Requirements
95122

96123
* Bash v3.2 for `./screensaver.sh`
@@ -99,29 +126,10 @@ That's it! The main `screensaver.sh` script will automatically detect your new c
99126
* Gracefully handle `^C` to clean up the terminal and `exit 0`
100127
* All shell scripts must have execute permission: `chmod +x *.sh`
101128

102-
### Style Suggestions
103-
104-
* Indents **SHOULD** be 2 spaces, but whatever works for you
105-
* `snake_case` for function names and variables
106-
* `SCREAMING_SNAKE_CASE` for super-duper important variables
107-
* You **MUST** have fun!
108-
* Don't use boring function names like `main()`
109-
* More fun are function names like `start_the_visual_pleasure()`
110-
111-
## Contributing
112-
113-
We welcome contributions!
114-
115-
Feel free to fork the repo, create a new screensaver, and submit a pull request.
116-
117-
Let's make the command line a more colorful place, one ASCII character at a time.
118-
119-
## Join the Community
120-
121-
Have questions, ideas, or just want to chat? Join our Discord server!
129+
### Codespaces
122130

123-
[**Join our Discord!**](https://discord.gg/BGQJCbYVBa)
131+
* whip up a [Codespace from attogram/bash-screensavers](https://codespaces.new/attogram/bash-screensavers) for fun!
124132

125133
---
126134

127-
*Made with ❤️ and a whole lot of bash.*
135+
*Made with ❤️ and a lot of bash.*

gallery/alpha/alpha.sh

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
# alpha screensaver (optimized for speed)
44
#
55

6-
SLEEPY_TIME="0.03" # Number of seconds of sleepy time between alpha-ness
6+
SLEEPY_TIME="0.7" # Number of seconds of sleepy time between alpha-ness
77

88
_cleanup_and_exit() { # handler for SIGINT (Ctrl‑C)
99
tput cnorm # show the cursor again
1010
tput sgr0
11-
clear
11+
echo
1212
exit 0
1313
}
1414

@@ -24,12 +24,12 @@ tput civis # no cursor
2424

2525
while true; do
2626
# Get random location and color
27-
local x=$((RANDOM % width + 1))
28-
local y=$((RANDOM % height + 1))
29-
local color_code=$((RANDOM % 256))
27+
x=$((RANDOM % width + 1))
28+
y=$((RANDOM % height + 1))
29+
color_code=$((RANDOM % 256))
3030

3131
# Build the string to print
32-
local frame_buffer="\e[${y};${x}H\e[38;5;${color_code}m█"
32+
frame_buffer="\e[${y};${x}H\e[38;5;${color_code}m█"
3333

3434
# Print the frame
3535
printf '%b' "$frame_buffer"

gallery/alpha/config.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name="alpha"
2-
tagline="Colorful pixels, one at a time"
2+
tagline="colorful pixels, one at a time"
33
description="A simple screensaver that prints random colored blocks at random locations on the screen."
44
authors="attogram"
55
license="MIT"

gallery/bouncing/config.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name="bouncing"
2-
tagline="Bouncing 'O's, a classic."
2+
tagline="classic bouncing 'O's"
33
description="A classic screensaver effect with multiple objects bouncing off the edges of the terminal."
44
authors="attogram"
55
license="MIT"

gallery/cutesaver/config.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name="cutesaver"
2-
tagline="An infinite loop of cuteness."
2+
tagline="infinite loop of cuteness"
33
description="An ASCII screensaver of cuteness. A huge shoutout to some of the most wonderful cuties I know: Mispy, Catherine, Ninji, Fiora, __builtin_trap, Gewt, Hachidorii, Kwanre, Talen, Whitequark, Louise, Emma, Chris, Katnarine, Dirt, Nimby, Hoodie, Simon... and more!"
44
authors="kestraI, attogram"
55
license="MIT"

gallery/matrix/config.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name="matrix"
2-
tagline="The classic digital rain."
2+
tagline="classic digital rain"
33
description="A matrix-style screensaver with falling green characters. This version is optimized for speed."
44
authors="attogram"
55
license="MIT"

gallery/pipes/config.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name="pipes"
2-
tagline="A classic, endless maze of pipes."
2+
tagline="classic maze of pipes"
33
description="An animated pipes terminal screensaver. This is a classic, highly customizable screensaver."
44
authors="Pipeseroni/pipes.sh contributors, Yu-Jie Lin, Matthew Simpson"
55
license="MIT"

gallery/rain/config.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name="rain"
2-
tagline="Soothing, gentle rain."
2+
tagline="soothing, gentle rain"
33
description="A simple screensaver that simulates falling rain in your terminal."
44
authors="attogram"
55
license="MIT"

gallery/speaky/config.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name="speaky"
2-
tagline="A dramatic, talking screensaver."
2+
tagline="dramatic talking screensaver"
33
description="A screensaver that uses text-to-speech to deliver dramatic and humorous phrases, displaying each phrase at a random location on the screen."
44
authors="Jules"
55
license="MIT"

gallery/stars/config.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name="stars"
2-
tagline="A twinkling starfield."
2+
tagline="twinkling starfield"
33
description="A simple starfield screensaver that randomly places stars on the screen and makes them twinkle."
44
authors="attogram"
55
license="MIT"

0 commit comments

Comments
 (0)