Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP New 'Applications' index page #2372

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions csc-overrides/assets/stylesheets/extra.css
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,6 @@
@import url(./sidebars.css);
@import url(./tags.css);
@import url(./video.css);
@import url(./sw-catalog.css);

@import url(./sensitive-data.css);
29 changes: 29 additions & 0 deletions csc-overrides/assets/stylesheets/sw-catalog.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
.md-typeset .app-heading-row {
margin: 0 0 1.25em;
}

.md-typeset .app-heading {
margin: unset;
}

.md-typeset .app-description {
font-weight: 300;
text-align: center;
color: var(--c-tertiary-800);
}

.md-typeset .app-heading-row .app-description {
font-size: 1.50em;
}

.md-typeset .app-link {
margin-right: 1em;
}

.md-typeset nav .app-tags {
margin: 0 0 .75em;
}

.md-typeset c-accordion-item {
margin-bottom: 1em;
}
20 changes: 10 additions & 10 deletions csc-overrides/assets/stylesheets/tags.css
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
.md-tag {
.md-typeset .md-tag {
border: 1px solid var(--md-primary-fg-color);
color: var(--md-primary-fg-color) !important;
background-color: transparent !important;
color: var(--md-primary-fg-color);
background-color: transparent;
border-radius: 15px;
font-weight: 400 !important;
text-decoration: none !important;
font-weight: 400;
text-decoration: none;
}

:target>.md-tag {
color: var(--md-primary-bg-color) !important;
background-color: var(--md-primary-fg-color) !important;
.md-typeset :target>.md-tag {
color: var(--md-primary-bg-color);
background-color: var(--md-primary-fg-color);
}

a.md-tag:is(:active, :hover) {
background-color: var(--md-accent-bg-color) !important;
.md-typeset .md-tag:is(:active, :hover) {
background-color: var(--md-accent-bg-color);
}
9 changes: 9 additions & 0 deletions csc-overrides/main.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
{% extends "base.html" %}
{% block styles %}
{{ super() }}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@cscfi/csc-ui@{{ config.extra.csc_ui_version }}/dist/styles/css/theme.css">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/@cscfi/csc-ui@{{ config.extra.csc_ui_version }}/dist/csc-ui/csc-ui.esm.js" />
{% endblock styles %}
{% block announce %}
{% if config.extra.announcement_visible is not true %}
<style>
Expand All @@ -15,3 +20,7 @@
{% endblock breadcrumbs %}
{{ super() }}
{% endblock content %}
{% block scripts %}
{{ super() }}
<script src="https://cdn.jsdelivr.net/npm/@cscfi/csc-ui@{{ config.extra.csc_ui_version }}/dist/csc-ui/csc-ui.esm.js" type="module"></script>
{% endblock scripts %}
14 changes: 14 additions & 0 deletions csc-overrides/sw-catalog-templates/app.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{% extends "main.html" %}
{% block content %}
{% include "partials/actions.html" %}
{% include "partials/breadcrumbs.html" %}

{% set app_meta = page.meta[config.extra.sw_catalog.page_meta_key] %}
{% include "sw-catalog-templates/partials/app-heading.html" %}
{% include "sw-catalog-templates/partials/app-tags.html" %}

{{ page.content }}

{% include "partials/source-file.html" %}
{% include "partials/feedback.html" %}
{% endblock content %}
46 changes: 46 additions & 0 deletions csc-overrides/sw-catalog-templates/apps-index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{% extends "main.html" %}

{% block content %}

{% include "partials/breadcrumbs.html" %}

{{ page.content }}

{% from config.extra.sw_catalog.templates_dir ~ '/macros/apps.html'
import render_group as app_group with context %}

<c-tabs value="alpha">
<c-tab value="alpha">In alphabetical order</c-tab>
<c-tab value="discipline">By discipline</c-tab>
<c-tab value="availability">By availability</c-tab>
<c-tab value="license">By license</c-tab>

<c-tab-items slot="items">

<c-tab-item value="alpha">
{{ app_group('Applications in alphabetical order', catalog.alphabetical) }}
</c-tab-item>

<c-tab-item value="discipline">
{{ app_group('Applications by discipline',
catalog.by_discipline,
exclude_tags=['discipline']) }}
</c-tab-item>

<c-tab-item value="availability">
{{ app_group('Applications by availability',
catalog.by_availability,
exclude_tags=['availability']) }}
</c-tab-item>

<c-tab-item value="license">
{{ app_group('Applications by license',
catalog.by_license,
exclude_tags=['license']) }}
</c-tab-item>

</c-tab-items>
</c-tabs>

{% include "partials/feedback.html" %}
{% endblock content %}
76 changes: 76 additions & 0 deletions csc-overrides/sw-catalog-templates/macros/apps.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
{% from config.extra.sw_catalog.templates_dir ~ '/macros/tags.html'
import render_tag as tag %}
{%- macro render_item(app, exclude_tags=[]) -%}

{% set system_tags %}
{% if app.available_on is sequence and 'availability' not in exclude_tags %}
{% for system in app.available_on %}
{% if system is string %}
{{ tag(system, page.url|url, compact=true) }}
{% endif %}
{% endfor %}
{% endif %}
{% endset %}

{% set interface_tags %}
{% if app.available_on is sequence and 'availability' not in exclude_tags %}
{% for system in app.available_on %}
{% if system is mapping %}
{% if system.web_interfaces is sequence %}
{% set web_uis = system.web_interfaces %}
{% for web_ui in web_uis %}
{% if web_ui is string %}
{{ tag(web_ui, '/sw-catalog', badge='Web UI', compact=true) }}
{% endif %}
{% endfor %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% endset %}

{% set discipline_tags %}
{% if app.disciplines is sequence and 'discipline' not in exclude_tags %}
{% for discipline in app.disciplines %}
{{ tag(discipline, page.url|url, badge='discipline', compact=true) }}
{% endfor %}
{% endif %}
{% endset %}

{% set license_tags %}
{% if app.license_type is string and 'license' not in exclude_tags %}
{{ tag(app.license_type, page.url|url, badge='license', compact=true) }}
{% endif %}
{% endset %}

<c-list-item>
<c-list-item-title>
<c-link href="{{ app.page.url|url }}">
{{ app.name }}
</c-link>
</c-list-item-title>
{{ app.description }}
<c-tags size="small" slot="post">
{{ system_tags }}
{{ interface_tags }}
{{ discipline_tags }}
{{ license_tags }}
</c-tags>
</c-list-item>
{%- endmacro -%}

{%- macro render_list(title, apps, exclude_tags=[]) -%}
<h3>{{ title|capitalize if title is lower else title }}</h3>
<c-list>
{% for app in apps %}
{{ render_item(app, exclude_tags=exclude_tags) }}
{% endfor %}
</c-list>
{%- endmacro -%}

{%- macro render_group(title, group, exclude_tags=[]) -%}
<h2>{{ title|capitalize }}</h2>
{% for list_title, apps in group|items %}
{{ render_list(list_title, apps, exclude_tags=exclude_tags) }}
{% endfor %}
{%- endmacro -%}
21 changes: 21 additions & 0 deletions csc-overrides/sw-catalog-templates/macros/tags.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{%- macro render_tag(text, href, badge=none, compact=false) -%}
{% set anchor = '#' ~ text|lower|replace(' ', '-') %}
{% set colors = dict(discipline='primary-600',
license='secondary-600',
puhti='link-500',
mahti='accent-800',
lumi='black') %}
{% set tag_color = colors[badge|lower]|default(colors[text|lower]) %}
{% set props %}
{% if badge is not none %}
badge="{{ badge|capitalize if badge is lower else badge }}"
{% else %}
active
{% endif %}
onclick="location.href='{{ href ~ '/' ~ anchor }}'"
style="--c-tag-text-color: var(--c-{{ tag_color }});"
{% endset %}
<c-tag {{ props }}>
{{ text }}
</c-tag>
{%- endmacro -%}
10 changes: 10 additions & 0 deletions csc-overrides/sw-catalog-templates/partials/app-heading.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<c-row class="app-heading-row" gap="8" justify="start" align="center">
<h1 class="app-heading">
{{ app_meta.name }}
</h1>
{% if app_meta.description is string %}
<div class="app-description">
&mdash; {{ app_meta.description }}
</div>
{% endif %}
</c-row>
65 changes: 65 additions & 0 deletions csc-overrides/sw-catalog-templates/partials/app-tags.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
{% from 'sw-catalog-templates/macros/tags.html' import render_tag as tag %}

{% if app_meta.disciplines is sequence
or app_meta.license is string
or app_meta.available_on is sequence %}

{% set system_tags %}
{% if app_meta.available_on is sequence %}
<c-tags class="app-tags">
{% for system in app_meta.available_on %}
{% if system is string %}
{{ tag(system, '/sw-catalog') }}
{% endif %}
{% endfor %}
</c-tags>
{% endif %}
{% endset %}

{% set interface_tags %}
{% if app_meta.available_on is sequence %}
{% for system in app_meta.available_on %}
{% if system is mapping %}
{% if system.web_interfaces is sequence %}
{% set web_uis = system.web_interfaces %}
<c-tags class="app-tags">
{% for web_ui in web_uis %}
{% if web_ui is string %}
{{ tag(web_ui, '/sw-catalog', badge='Web UI') }}
{% endif %}
{% endfor %}
</c-tags>
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% endset %}

{% set discipline_tags %}
{% if app_meta.disciplines is sequence %}
<c-tags class="app-tags">
{% for discipline in app_meta.disciplines %}
{{ tag(discipline, '/sw-catalog', badge='discipline') }}
{% endfor %}
</c-tags>
{% endif %}
{% endset %}

{% set license_tags %}
{% if app_meta.license_type is string %}
<c-tags class="app-tags">
{{ tag(app_meta.license_type, '/sw_catalog', badge='license') }}
</c-tags>
{% endif %}
{% endset %}

<nav>
<c-row gap="8">
{{ system_tags }}
{{ interface_tags }}
{{ discipline_tags }}
{{ license_tags }}
</c-row>
</nav>

{% endif %}
53 changes: 53 additions & 0 deletions docs/sw-catalog/abaqus.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
template: sw-catalog-templates/app.html
software_catalog:
name: ABAQUS
description: Dassault Systemes' SIMULIA academic research suite
license_type: Academic
disciplines:
- Computational Engineering
available_on:
- Puhti
---

Dassault Systemes' SIMULIA academic software portfolio offers software tools for for realistic simulation, optimization, durability studies, multibody simulation, computational fluid dynamics and electromagnetic simulation. [SIMULIA Academic Research Suite](https://www.3ds.com/products-services/simulia/academia/) licenses are available on CSC's server computers.

## License

SIMULIA Academic Research Suite products are proprietary software. The licenses are only for academic use. See about use limitations from the web page [SIMULIA Academic Program](https://edu.3ds.com/en/software/simulia-academic), section **Eligibility for Academic Licensing of SIMULIA Products**.

## Available

Licenses are available on CSC's computing platform [Puhti](../computing/available-systems.md) for analysis runs only. Latest products will be available on the servers, and earlier versions installation is also possible. All installed versions are maintained on the servers.

## Usage

After login on the server, make sure that you have transferred all your input files for the analysis run from your local computer to the server. Locate the files in your project's scratch directory. Home directory is not intended for computing.

To find out which versions of Abaqus are installed on the server, give command

```bash
module available
```

and check lines `abaqus/<version number>`. For example, to load Abaqus version 2024, give command

```bash
module load abaqus/2024
```

There is an example **batch job file** available on Puhti server:

```bash
/appl/soft/eng/simulia/example_batch_job_files/parjob_puhti_abaqus
```

Copy the file and modify it for your own use. Further instructions are given in the file.

## Support

In case of issues, please [contact CSC Service Desk](../support/contact.md).

## More information

* [SIMULIA Academic Research Suite](https://www.3ds.com/products-services/simulia/academia/)
Loading