summaryrefslogtreecommitdiffstats
path: root/apps/base/templates/home.scm
blob: 464cb0f4fd861ec571c6d1397f9ad973a0212653 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
;;; Harmonic Flow web site

(define-module (apps base templates home)
  #:use-module (apps base templates components)
  #:use-module (apps base templates theme)
  #:use-module (apps base types)
  #:use-module (apps base utils)
  #:use-module (apps blog templates components)
  #:use-module (apps media templates components)
  #:use-module (apps media types)
  #:use-module (apps i18n)
  #:export (home-t))


(define (home-t context)
  "Return the Home page in SHTML using the data in CONTEXT."
  (theme
   #:title (C_ "webpage title"
               '("HFGE 3D engine, coding and free software |"))
   #:description
   (G_ "This website is dedicated to free software primarily in the area of graphics engines but also free software in general.")
   #:keywords
   (string-split ;TRANSLATORS: |-separated list of webpage keywords
    (G_ "Harmonic Flow|HFGE|Free Software|C++|Libre software|Engine|Game Engine|Graphics|3D|2D|Programming|Vulkan") #\|)
   #:active-menu-item (C_ "website menu" "Overview")
   #:css (list
	  (hfweb-url "static/base/css/item-preview.css")
	  (hfweb-url "static/base/css/index.css"))
   #:content
   `(main
     ;; Featured content.
     (section
      (@ (class "featured-content"))
      ,(G_ `(h2 (@ (class "a11y-offset")) "Summary"))
      (ul
       ;; Libre:
       ,(G_
         `(li
           ,(G_ `(b "Libre."))
           ,(G_ (link-yellow
                 #:label " HFGE"
                 #:url (hfweb-url "hfge-about/")))
           " will be distributed under the zlib license. This license allows you
           to use HFGE freely in any software (it respects your freedom). "
           ))
       ;; Vulkan:
       ,(G_
         `(li
           ,(G_ `(b "Vulkan."))
           ,(G_ (link-yellow
                 #:label " HFGE"
                 #:url (hfweb-url "hfge-about/")))
           " comes with a modern, low level, low overhead, cross platform
           renderer in the form of Vulkan (additional renderers can be added as
           plugins if needed)."
           ))
       ;; Cross platform:
       ,(G_
         `(li
           ,(G_ `(b "Cross platform."))
           ,(G_ (link-yellow
                 #:label " HFGE"
                 #:url (hfweb-url "hfge-about/")))
           " will initially support Windows and GNU/Linux. More platforms such
           as Android will be added later on."
           ))
       ;; Tools:
       ,(G_
         `(li
           ,(G_ `(b "Tools."))
           ,(G_ (link-yellow
                 #:label " HFGE"
                 #:url (hfweb-url "hfge-about/")))
           " comes with a few useful tools for generating bitmap fonts, texture
           atlases, resource archives and a hash checksum tool."
           ))
      )

      (div
       (@ (class "action-box centered-text"))
       ,(button-big
         #:label (C_ "button" "MORE INFO")
         #:url (hfweb-url "hfge-about/")
         #:light #true)
       " " ; A space for readability in non-CSS browsers.
       ,(button-big
         #:label (C_ "button" "DOWNLOAD")
	 #:url (hfweb-url "hfge-download/")
	 #:light #true)))

     ;; Screenshots:
     (section
      (@ (class "discovery-box"))
      ,(G_ `(h2 "Screenshots"))

      ,(G_
        `(p
          (@ (class "limit-width centered-block"))
          "A few early development screenshots of "
          ,(G_ (link-yellow #:label "HFGE"
                            #:url (hfweb-url "hfge-about/")))
          " in action."))

      ,(screenshots-box (context-datum context "screenshots"))

      ;;,(horizontal-separator #:light #true)
     )

     ;; Latest Blog posts:
     (section
      (@ (class "centered-text"))
      ,(G_ `(h2 "Blog"))

      ,@(map post-preview (context-datum context "posts"))

      (div
       (@ (class "action-box centered-text"))
       ,(button-big
         #:label (C_ "button" "ALL POSTS")
	 #:url (hfweb-url "blog/"))))
   )))