Skip to content

Commit 56a9f62

Browse files
add ruby
1 parent 6c536aa commit 56a9f62

File tree

6 files changed

+191
-0
lines changed

6 files changed

+191
-0
lines changed

β€Žsrc/devcontainers/base/src/.devcontainer/devcontainer.jsonβ€Ž

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@
5656
}
5757
},
5858
"features": {
59+
"./nhsnotify": {
60+
"version": "1.0.1"
61+
},
5962
"ghcr.io/devcontainers/features/aws-cli:1": {
6063
"version": "latest"
6164
},
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"dependsOn": {
3+
"ghcr.io/devcontainers/features/common-utils:2": {
4+
"installOhMyZsh": true
5+
}
6+
},
7+
"id": "nhsnotify",
8+
"name": "NHS Notify",
9+
"postCreateCommand": "zsh /postcreatecommand.sh",
10+
"postStartCommand": "zsh /poststartcommand.sh",
11+
"version": "1.0.1"
12+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
3+
cp ./postcreatecommand.sh /postcreatecommand.sh
4+
cp ./poststartcommand.sh /poststartcommand.sh
5+
cp ./welcome.sh /welcome.sh
6+
7+
cp ~/.zshrc /.zshrc
8+
rm -Rf /.asdf
9+
git clone https://github.com/asdf-vm/asdf.git /.asdf;
10+
chmod +x /.asdf/asdf.sh;
11+
echo '. /.asdf/asdf.sh' >> /.zshrc
12+
echo '. /.asdf/completions/asdf.bash' >> /.zshrc
13+
sed -i "/plugins=/c\plugins=(git ssh-agent sudo terraform dirhistory zsh-autosuggestions)" /.zshrc
14+
15+
cat /.zshrc
16+
17+
cp /.zshrc ~/.zshrc
18+
source ~/.zshrc
19+
mkdir -p /zsh/plugins/zsh-autosuggestions
20+
git clone https://github.com/zsh-users/zsh-autosuggestions /zsh/plugins/zsh-autosuggestions
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#!/bin/bash
2+
3+
cp /.zshrc ~/.zshrc
4+
cp -r /zsh/* ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}
5+
ls -la ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}
6+
7+
cat ~/.zshrc
8+
source ~/.zshrc
9+
echo 'asdf setup complete'
10+
11+
make config
12+
echo 'make config complete'
13+
14+
jekyll --version && cd docs && bundle install
15+
echo 'jekyll setup complete'
16+
17+
./welcome.sh
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#!/bin/bash
2+
3+
./welcome.sh
Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
#!/bin/bash
2+
3+
# Colors
4+
RED='\033[0;31m'
5+
GREEN='\033[0;32m'
6+
YELLOW='\033[1;33m'
7+
BLUE='\033[0;34m'
8+
PURPLE='\033[0;35m'
9+
CYAN='\033[0;36m'
10+
WHITE='\033[1;37m'
11+
BOLD='\033[1m'
12+
NC='\033[0m' # No Color
13+
14+
# Function to print with typewriter effect
15+
typewriter() {
16+
text="$1"
17+
delay=${2:-0.03}
18+
for (( i=0; i<${#text}; i++ )); do
19+
printf "%s" "${text:$i:1}"
20+
sleep $delay
21+
done
22+
}
23+
24+
# Function to create animated border
25+
animate_border() {
26+
local width=80
27+
local chars="β–“β–’β–‘ β–‘β–’β–“"
28+
29+
for frame in {1..3}; do
30+
printf "\r${CYAN}"
31+
for (( i=0; i<width; i++ )); do
32+
printf "%s" "${chars:$((($i + $frame) % 7)):1}"
33+
done
34+
printf "${NC}"
35+
sleep 0.1
36+
done
37+
echo
38+
}
39+
40+
# Clear screen and start the show
41+
clear
42+
43+
# Animated border
44+
animate_border
45+
46+
echo -e "${BOLD}${BLUE}"
47+
echo "
48+
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
49+
β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β•šβ•β•β–ˆβ–ˆβ•”β•β•β•
50+
β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
51+
β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β• β•šβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β• β–ˆβ–ˆβ•”β•β•β• β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β• β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
52+
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•”β• β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•”β• β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β•šβ•β• β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
53+
β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β•β• β•šβ•β•β•β• β•šβ•β•β•β•β•β•β•β•šβ•β• β•šβ•β•β•β• β•šβ•β•β•β• β•šβ•β•β•šβ•β• β•šβ•β• β•šβ•β•β•β•β•β• β•šβ•β• β•šβ•β•β•β•β•šβ•β• β•šβ•β•β•šβ•β•β•β•β•β•β•β•šβ•β• β•šβ•β•β•β• β•šβ•β•
54+
"
55+
echo -e "${NC}"
56+
57+
# NHS Logo in ASCII
58+
echo -e "${BLUE}${BOLD}"
59+
echo "
60+
β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
61+
β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•
62+
β–ˆβ–ˆβ•”β–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
63+
β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β•šβ•β•β•β•β–ˆβ–ˆβ•‘
64+
β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘
65+
β•šβ•β• β•šβ•β•β•β•β•šβ•β• β•šβ•β•β•šβ•β•β•β•β•β•β•
66+
"
67+
68+
echo -e "${RED}${BOLD}"
69+
echo "
70+
β–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•— β–ˆβ–ˆβ•—
71+
β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β•šβ•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β•šβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•
72+
β–ˆβ–ˆβ•”β–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•
73+
β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β• β•šβ–ˆβ–ˆβ•”β•
74+
β–ˆβ–ˆβ•‘ β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β• β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
75+
β•šβ•β• β•šβ•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β•
76+
"
77+
echo -e "${NC}"
78+
79+
# Animated loading bar
80+
echo -e "${YELLOW}${BOLD}Initializing NHS Notify Development Environment...${NC}"
81+
echo -e "${CYAN}["
82+
for i in {1..50}; do
83+
printf "${GREEN}β–ˆ${NC}"
84+
sleep 0.02
85+
done
86+
echo -e "${CYAN}]${NC}"
87+
echo
88+
89+
# System info with style
90+
echo -e "${PURPLE}${BOLD}╔══════════════════════════════════════════════════════════════════════════════╗${NC}"
91+
echo -e "${PURPLE}${BOLD}β•‘${NC} ${BOLD}${WHITE}CONTAINER INFORMATION${NC} ${PURPLE}${BOLD}β•‘${NC}"
92+
echo -e "${PURPLE}${BOLD}╠══════════════════════════════════════════════════════════════════════════════╣${NC}"
93+
echo -e "${PURPLE}${BOLD}β•‘${NC} ${CYAN}🐳 Container:${NC} NHS Notify Development Environment ${PURPLE}${BOLD}β•‘${NC}"
94+
echo -e "${PURPLE}${BOLD}β•‘${NC} ${CYAN}πŸ“… Date:${NC} $(date +'%A, %B %d, %Y') ${PURPLE}${BOLD}β•‘${NC}"
95+
echo -e "${PURPLE}${BOLD}β•‘${NC} ${CYAN}⏰ Time:${NC} $(date +'%H:%M:%S %Z') ${PURPLE}${BOLD}β•‘${NC}"
96+
echo -e "${PURPLE}${BOLD}β•‘${NC} ${CYAN}πŸ‘€ User:${NC} $(whoami) ${PURPLE}${BOLD}β•‘${NC}"
97+
echo -e "${PURPLE}${BOLD}β•‘${NC} ${CYAN}πŸ–₯️ Host:${NC} $(hostname) ${PURPLE}${BOLD}β•‘${NC}"
98+
echo -e "${PURPLE}${BOLD}β•‘${NC} ${CYAN}πŸ“‚ Workspace:${NC} $(pwd) ${PURPLE}${BOLD}β•‘${NC}"
99+
echo -e "${PURPLE}${BOLD}β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•${NC}"
100+
echo
101+
102+
# Feature showcase
103+
echo -e "${GREEN}${BOLD}πŸš€ READY TO DEVELOP WITH:${NC}"
104+
echo
105+
echo -e "${YELLOW} ✨ Node.js & npm${NC} - JavaScript/TypeScript development"
106+
echo -e "${YELLOW} 🐍 Python & pip${NC} - Python development tools"
107+
echo -e "${YELLOW} πŸ™ Git${NC} - Version control"
108+
echo -e "${YELLOW} 🐳 Docker${NC} - Container management"
109+
echo -e "${YELLOW} πŸ“ VS Code Extensions${NC} - Enhanced development experience"
110+
echo -e "${YELLOW} πŸ”§ ESLint & Prettier${NC} - Code formatting and linting"
111+
echo
112+
113+
# Fun message with typewriter effect
114+
echo -e "${BOLD}${CYAN}"
115+
typewriter "πŸ’‘ Tip: This environment is optimized for NHS Notify development!"
116+
echo -e "${NC}"
117+
echo
118+
119+
# Motivational quote
120+
quotes=(
121+
"\"Innovation distinguishes between a leader and a follower.\" - Steve Jobs"
122+
"\"The best time to plant a tree was 20 years ago. The second best time is now.\" - Chinese Proverb"
123+
"\"Code is like humor. When you have to explain it, it's bad.\" - Cory House"
124+
"\"First, solve the problem. Then, write the code.\" - John Johnson"
125+
"\"Experience is the name everyone gives to their mistakes.\" - Oscar Wilde"
126+
)
127+
128+
random_quote=${quotes[$RANDOM % ${#quotes[@]}]}
129+
echo -e "${ITALIC}${BLUE}πŸ’­ ${random_quote}${NC}"
130+
echo
131+
132+
# Final animated border
133+
animate_border
134+
135+
echo -e "${BOLD}${GREEN}πŸŽ‰ Welcome to your NHS Notify development journey! Happy coding! πŸŽ‰${NC}"
136+
echo

0 commit comments

Comments
Β (0)