You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: SPEC.md
+34-29Lines changed: 34 additions & 29 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Foojay Java in Education Catalog Site Specification
2
2
3
-
The Foojay Java in Education Catalog is a community-driven catalog of Java learning resources for students, educators, coding clubs, and developers. This repository is hosted under [Foojay.io – Friends of OpenJDK](https://foojay.io/) and maintained by the Java community.
3
+
The Foojay Java in Education Catalog is a community-driven catalog of Java learning resources for students, educators, coding clubs, and developers. This repository is hosted under [Foojay.io – Friends of OpenJDK](https://github.com/foojayio/java-education-catalog) and maintained by the Java community.
4
4
5
5
## Site Structure
6
6
@@ -12,100 +12,106 @@ The Foojay Java in Education Catalog is a community-driven catalog of Java learn
12
12
13
13
## Visual Design
14
14
15
-
- Dark background (`#0f1117`), card surfaces (`#1e2230`), accent purple (`#6c63ff`), accent blue (`#38bdf8`), accent pink (`#f472b6`)
15
+
- Integrate the Foojay logo `foojay-logo.png` in the hero section with maximum width and height of 150px, maintaining aspect ratio. Place it to the left of the title on desktop, and above the title on mobile.
16
+
- Hero section: make subtitle bigger then description
17
+
- Dark background (`#00131B`), card surfaces (`#132733`), accent blue (`#3562E5`), accent cyan (`#4FC3F7`), accent green (`#5EB761`), accent orange (`#F0981B`)
16
18
- Cards have hover effects (border highlight, slight lift)
- Where possible use icons for links - for blog or other use a world / www icon. don't use text labels.
19
21
- In a given section, use different colors for different badge types.
20
22
21
23
### Link Affordance
22
24
23
25
-**Clickable cards:** If a card has a single primary destination (e.g. resource cards with one link), make the entire card an `<a>` tag so clicking anywhere on the card navigates. Keep secondary icon links overlaid on top.
24
-
-**Card titles as links:** For cards with multiple links (frameworks, tools), make the card `h3` title a clickable link to the primary resource (docs or website). Style title links with an underline on hover.
26
+
-**Card titles as links:** For cards with multiple links (frameworks, tools), make the card `h3` title a clickable link to the primary resource. For all the links, add an icon + plus the link text. Style title links with an underline on hover.
25
27
-**Inline text links:** Any link within body text or descriptions should be underlined.
26
28
-**Don't mislead:** Only apply hover lift/border effects to cards that are actually clickable. Non-clickable cards should still have a subtle hover border but no translateY lift.
29
+
-**Link to new tab:** All links should open in a new tab (`target="_blank"`) to keep users on the catalog site.
27
30
28
31
## Hero
29
32
30
33
- Title: "Foojay **Java in Education** Catalog" (gradient text on "Java in Education")
31
-
- Subtitle: "A community-driven catalog of Java learning resources — wikis, tutorials, and tools for students, educators, coding clubs, and developers."
32
-
- Description: "The goal is to provide an open, collaborative hub for students, educators, and developers to discover the best Java learning content for teaching, self-learning, and classroom use. This project is a call for the community to collaborate, to show that Java is still strong, and to highlight the numerous resources available for learning or teaching Java today."
34
+
- Subtitle: "A community-driven catalog of Java learning resources with websites, tutorials, videos, books, and tools for students, educators, coding clubs, and developers."
35
+
- Description:
36
+
- The goal is to provide an open, collaborative hub for students, educators, and developers to discover the best Java learning content for teaching, self-learning, and classroom use.
37
+
- This project is a call for the community to collaborate, to show that Java is still strong, and to highlight the numerous resources available for learning or teaching Java today.
38
+
- Community-curated Java learning resources. Contributions are welcome on [GitHub](https://github.com/foojayio/java-education-catalog)!
-**Description:** Foojay is a central resource for the Java community’s daily information needs, a place for friends of OpenJDK, and a community platform for the Java ecosystem, bringing together and helping Java professionals everywhere.
50
54
-**Links:**[Foojay.io](https://foojay.io/)
51
55
52
56
### Java Evolved
53
57
54
-
-**Badge:**Resource
58
+
-**Badges:**Website
55
59
-**Description:** Java has evolved. Your code can too. A collection of modern Java code snippets. Every old Java pattern next to its clean, modern replacement — side by side.
-**Description:** A collection of tutorials on how to get started with Java, getting to know the Java language, and more.
62
66
-**Links:**[Website](https://dev.java/learn/)
63
67
64
68
## Tutorials
65
69
66
70
### Foojay Java Quick Start
67
71
68
-
-**Badge:** Tutorial
72
+
-**Badges:** Tutorial, Video
69
73
-**Description:** On Foojay.io: Step-by-step instructions to install Java on Windows, Linux, and macOS. And 10 short lessons to learn the very basics of the Java programming language.
### Raising Young Coders: A Parent’s Guide to Teaching Programming at Home
93
97
94
-
-**Badge:** Parents
95
-
-**Description:** Introduce your children to programming at an early age and see how nurturing their interest can significantly contribute to their future success. This book offers creative, kid-friendly tools and projects to ignite childhood curiosity, all while confronting early-age gender biases in tech and supplementing the lack of creative and diverse tech curriculum in schools.
98
+
-**Badges:** Parents, Teaching
99
+
-**Description:**Book by Cassandra Chin: Introduce your children to programming at an early age and see how nurturing their interest can significantly contribute to their future success. This book offers creative, kid-friendly tools and projects to ignite childhood curiosity, all while confronting early-age gender biases in tech and supplementing the lack of creative and diverse tech curriculum in schools.
### Getting Started with Java and Electronics with JBang – Pi4J
102
+
### Getting Started with Java on the Raspberry Pi
99
103
100
-
-**Badge:** Raspberry Pi
101
-
-**Description:** Want to get started with Java programming on the Raspberry Pi? JBang is a great way to create your first program to control electronic components connected to the GPIO pins of a Raspberry Pi.
-**Description:** eBook by Frank Delporte: Controlling physical things with some lines of code is magic! This book includes a lot of information, history about Java itself, and how to install and use Java on the Raspberry Pi to interact with electronic components.
-**Description:** How to do Minecraft modding with two different tools:
110
116
- Forge: client-side modding, which only works if you have the mod installed. With Forge, you can do lots of cool things like making new blocks, items, mobs, and even biomes and dimensions.
111
117
- Spigot: server-side modding, anyone who connects to the server can enjoy the mods installed. Most big servers, like Mineplex and Hypixel, are Spigot servers.
### Control electronics with Java, JBang, and Pi4J
117
123
118
-
-**Badge:** Raspberry Pi
124
+
-**Badges:** Raspberry Pi
119
125
-**Description:** Want to get started with Java programming on the Raspberry Pi? JBang is a great way to create your first program to control electronic components connected to a Raspberry Pi's GPIO pins.
0 commit comments