Skip to content

Commit 76512c5

Browse files
authored
Merge pull request #18 from LKedward/explore-code
Add explore page for listing community projects.
2 parents 9fa517a + 09fceb8 commit 76512c5

19 files changed

+1165
-9
lines changed

_data/curated_projects.yml

+642
Large diffs are not rendered by default.

_data/nav.yml

+2-9
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,7 @@
22
url: /learn/
33
- title: Compilers
44
url: /compilers/
5-
- title: Development
6-
url: https://github.com/fortran-lang
7-
sections:
8-
- title: Proposals
9-
url: https://github.com/j3-fortran/fortran_proposals
10-
- title: Standard Library
11-
url: https://github.com/fortran-lang/stdlib
12-
- title: Package Manager
13-
url: https://github.com/fortran-lang/fpm
5+
- title: Explore
6+
url: /explore
147
- title: News
158
url: /news/

_layouts/code_category.html

+90
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
---
2+
layout: default
3+
---
4+
5+
{% include nav.html %}
6+
7+
<section class="masthead">
8+
<h1>Explore Community Fortran Projects</h1>
9+
<h3>A rich ecosystem of high-performance code</h3>
10+
</section>
11+
12+
<section class="front-section">
13+
<div class="container">
14+
<div class="col-wide">
15+
16+
<a href='/explore'> < Back</a>
17+
18+
<h1>{{page.title}}</h1>
19+
<p>
20+
{{page.description}}
21+
</p>
22+
23+
<table class="projects-table">
24+
25+
{% assign catProjects = site.data.curated_projects | where_exp:"project", "project.categories contains page.code_category"%}
26+
{% for project in catProjects %}
27+
<tr>
28+
{% if project.github %}
29+
<td> <h4><a href="https://github.com/{{ project.github }}">{{ project.name }}</a></h4> </td>
30+
<td> {% if project.version %}
31+
{% if project.version != 'none' %}
32+
<img src="https://img.shields.io/badge/Version-{{ project.version | replace: " ", "%20" | replace: "-", "--" }}-green.svg">
33+
{% endif%}
34+
{% else %}
35+
<img src="https://img.shields.io/github/v/release/{{ project.github }}?color=green">
36+
{% endif %}</td>
37+
<td> {% if project.license %}
38+
{% if project.license != 'none' %}
39+
<img src="https://img.shields.io/badge/License-{{ project.license | replace: " ", "%20" | replace: "-", "--" }}-green">
40+
{% endif%}
41+
{% else %}
42+
<img src="https://img.shields.io/github/license/{{ project.github }}">
43+
{% endif %}</td>
44+
<td> <img src="https://img.shields.io/github/stars/{{ project.github }}?style=social"></td>
45+
<td> <img src="https://img.shields.io/github/forks/{{ project.github }}?style=social&label=Fork"> </td>
46+
<td> <img src="https://img.shields.io/github/last-commit/{{ project.github }}?color=blue"> </td>
47+
<td> <img src="https://img.shields.io/github/issues/{{ project.github }}"> </td>
48+
{% else %}
49+
<td> <h4><a href="{{ project.url }}">{{ project.name }}</a></h4> </td>
50+
<td> {% if project.version %}
51+
<img src="https://img.shields.io/badge/Version-{{ project.version | replace: " ", "%20" | replace: "-", "--" }}-green.svg">
52+
{% endif %}
53+
</td>
54+
<td> {% if project.license %}
55+
<img src="https://img.shields.io/badge/License-{{ project.license | replace: " ", "%20" | replace: "-", "--" }}-green">
56+
{% endif %}
57+
</td>
58+
<td></td>
59+
<td></td>
60+
<td></td>
61+
<td></td>
62+
{% endif %}
63+
</tr>
64+
<tr><td colspan="7" class="light">
65+
{{ project.description }}
66+
</td></tr>
67+
<tr><td colspan="7" class="light small">
68+
<b>Tags: </b>{{ project.tags }}
69+
</td></tr>
70+
<tr><td colspan="7"></td></tr>
71+
{% endfor %}
72+
73+
</table>
74+
75+
</div>
76+
77+
</div>
78+
</section>
79+
80+
<section class="front-section shaded">
81+
<div class="container">
82+
<div class="col-wide">
83+
<!-- <h2 id="faqs">FAQ</h2> -->
84+
85+
Want your project listed or see a problem? Submit an issue
86+
<a href="https://github.com/fortran-lang/fortran-lang.github.io/issues">here</a>.
87+
88+
</div>
89+
</section>
90+

assets/css/main.css

+56
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,12 @@ h3 {
4949
/* color: #54a23d; */
5050
}
5151

52+
/* Mark new-window links */
53+
a[target="_blank"]:after {
54+
content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQElEQVR42qXKwQkAIAxDUUdxtO6/RBQkQZvSi8I/pL4BoGw/XPkh4XigPmsUgh0626AjRsgxHTkUThsG2T/sIlzdTsp52kSS1wAAAABJRU5ErkJggg==);
55+
margin: 0 3px 0 5px;
56+
}
57+
5258
blockquote {
5359
border-left: 5px solid #eeeeee;
5460
margin-left: 0;
@@ -85,6 +91,26 @@ pre {
8591
}
8692
}
8793

94+
.container-flex{
95+
margin: 0 15px;
96+
display: flex;
97+
flex-wrap: wrap;
98+
}
99+
100+
.col-flex {
101+
/* display: table-cell; */
102+
flex: 45%;
103+
padding-left: 10px;
104+
vertical-align: top;
105+
}
106+
107+
@media screen and (max-width: 700px) {
108+
.col-flex {
109+
flex: 100%;
110+
flex-direction: column;
111+
}
112+
}
113+
88114
#navbar-logo {
89115
height: 3em;
90116
}
@@ -231,6 +257,30 @@ pre {
231257
width: 100%;
232258
}
233259

260+
.search-btn {
261+
display: inline-block;
262+
text-align: center;
263+
vertical-align: middle;
264+
background-color: #3c92d1;
265+
color: #fff;
266+
font-family: 'Lato', sans-serif;
267+
border-radius: 4px;
268+
padding: 5px 7px;
269+
}
270+
271+
.search-btn:hover {
272+
background-color: #3889c4;
273+
color: white;
274+
}
275+
276+
.search-box {
277+
width: 85%;
278+
padding: 5px 7px;
279+
color: #777;
280+
font-weight: bold;
281+
}
282+
283+
234284
footer .container {
235285
border-top: solid 1px #ececec;
236286
padding: 20px 0 50px;
@@ -292,4 +342,10 @@ footer a {
292342
padding-left: 10px;
293343
margin: 20px 0;
294344
background-color: #f9f2f4;
345+
}
346+
347+
.projects-table td{
348+
349+
padding: 4px;
350+
295351
}

explore/category/data-types.html

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
layout: code_category
3+
title: Data types and containers
4+
description: Libraries for advanced data types and container classes
5+
code_category: data-types
6+
---
7+

explore/category/examples.html

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
layout: code_category
3+
title: Examples and templates
4+
description: Demonstration codes and templates for Fortran
5+
code_category: examples
6+
permalink: /explore/category/examples
7+
---
8+

explore/category/graphics.html

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
layout: code_category
3+
title: Graphics, plotting and user interfaces
4+
description: Libraries for plotting data, handling images and generating user interfaces
5+
code_category: graphics
6+
---
7+

explore/category/interfaces.html

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
layout: code_category
3+
title: Interface libraries
4+
description: Libraries that interface with other systems languages, or devices
5+
code_category: interfaces
6+
---
7+

explore/category/io.html

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
layout: code_category
3+
title: File input & output
4+
description: Libraries for reading and writing particular file formats
5+
code_category: io
6+
---
7+

explore/category/libraries.html

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
layout: code_category
3+
title: Libraries
4+
description: Fortran libraries for general programming tasks
5+
code_category: libraries
6+
---
7+

explore/category/numerical.html

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
layout: code_category
3+
title: Numerical projects
4+
description: Fortran libraries for linear algebra, optimization, root-finding etc.
5+
code_category: numerical
6+
---
7+

explore/category/preview.html

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
layout: code_category
3+
title: Preview
4+
description: Preview project badges
5+
code_category: preview
6+
permalink: /explore/category/preview
7+
---
8+

explore/category/programming.html

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
layout: code_category
3+
title: Programming utilities
4+
description: Error handling, logging, documentation and testing
5+
code_category: programming
6+
---
7+

explore/category/scientific.html

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
layout: code_category
3+
title: Scientific Codes
4+
description: Fortran libraries for applied mathematical and scientific problems
5+
code_category: scientific
6+
permalink: /explore/category/scientific
7+
---
8+

explore/category/strings.html

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
layout: code_category
3+
title: Characters and strings
4+
description: Libraries for manipulating characters and strings
5+
code_category: strings
6+
---
7+

explore/index.html

+91
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
---
2+
layout: default
3+
title: Explore Fortran Code
4+
description:
5+
---
6+
7+
{% include nav.html active='Home' %}
8+
9+
<section class="masthead">
10+
<h1>{{ page.title}}</h1>
11+
<h3>A rich ecosystem of high-performance code</h3>
12+
</section>
13+
14+
<section class="front-section shaded">
15+
<div class="container">
16+
<h2>Fortran-lang organisation projects</h2>
17+
18+
<div class="col-narrow">
19+
<h3>Fortran Standard Library (stdlib)</h3>
20+
<p>
21+
A community-driven project for a <i>de facto</i> "standard" library for Fortran.
22+
The stdlib project is both a specification and a reference implementation, developed in
23+
cooperation with the Fortran Standards Committee.
24+
Find out more on
25+
<a href="https://github.com/fortran-lang/stdlib" target="_blank">GitHub</a>.
26+
</p>
27+
<img src="https://img.shields.io/github/stars/fortran-lang/stdlib?style=social">
28+
<img src="https://img.shields.io/github/forks/fortran-lang/stdlib?style=social&label=Fork">
29+
<img src="https://img.shields.io/github/last-commit/fortran-lang/stdlib?color=blue">
30+
<img src="https://img.shields.io/github/issues/fortran-lang/stdlib">
31+
32+
</div>
33+
34+
<div class="col-narrow">
35+
<h3>Fortran Package Manager (fpm)</h3>
36+
<p>
37+
A prototype project to develop a common build system for Fortran packages
38+
and their dependencies.
39+
Find out more on
40+
<a href="https://github.com/fortran-lang/fpm" target="_blank">GitHub</a>.
41+
</p>
42+
<img src="https://img.shields.io/github/stars/fortran-lang/fpm?style=social">
43+
<img src="https://img.shields.io/github/forks/fortran-lang/fpm?style=social&label=Fork">
44+
<img src="https://img.shields.io/github/last-commit/fortran-lang/fpm?color=blue">
45+
<img src="https://img.shields.io/github/issues/fortran-lang/fpm">
46+
</div>
47+
48+
</div>
49+
</section>
50+
51+
<section class="front-section">
52+
<div class="container">
53+
<h1>Featured community projects</h1>
54+
55+
<form action="/explore/search" method="get">
56+
<input type="text" name="query" class="search-box" placeholder="Search for a project">
57+
<input type="submit" value="Search" class="search-btn">
58+
</form>
59+
60+
<h2>Browse by category</h2>
61+
<div class="container-flex">
62+
63+
{% for sitePage in site.pages %}
64+
65+
{% if sitePage.code_category %}
66+
{% if sitePage.code_category != 'preview' %}
67+
<div class="col-flex">
68+
<a href="{{ sitePage.url }}" ><h3>{{ sitePage.title }}
69+
{% assign catProjects = site.data.curated_projects | where_exp:"project", "project.categories contains sitePage.code_category"%}
70+
({{ catProjects | size }})
71+
</h3></a>
72+
<p> {{ sitePage.description }} </p>
73+
</div>
74+
{% endif %}
75+
{% endif %}
76+
77+
{% endfor%}
78+
</div>
79+
</div>
80+
</section>
81+
82+
<section class="front-section shaded">
83+
<div class="container">
84+
<div class="col-wide">
85+
86+
Want your project listed or see a problem? Submit an issue
87+
<a href="https://github.com/fortran-lang/fortran-lang.github.io/issues">here</a>.
88+
89+
</div>
90+
</section>
91+

explore/projects_json.js

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
layout: null
3+
---
4+
5+
projects = [
6+
{% for project in site.data.curated_projects%}
7+
{
8+
"name": "{{ project.name }}",
9+
"description": "{{ project.description }}",
10+
"github": "{{ project.github }}",
11+
"url": "{{ project.url }}",
12+
"categories": "{{ project.categories }}",
13+
"tags": "{{ project.tags }}",
14+
"license": "{{ project.license }}"
15+
},
16+
{% endfor %}
17+
]

0 commit comments

Comments
 (0)