Skip to content

Commit

Permalink
Merge pull request #1154 from dodona-edu/docs/vitepress
Browse files Browse the repository at this point in the history
  • Loading branch information
rien authored Jul 8, 2023
2 parents f2e8a91 + d645c21 commit 26bd2c9
Show file tree
Hide file tree
Showing 42 changed files with 1,580 additions and 1,899 deletions.
3 changes: 3 additions & 0 deletions docs/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,6 @@ config.local.js
basement_dist
.vuepress/.temp
.vuepress/.cache
.vitepress/.temp
.vitepress/cache
.vitepress/dist
122 changes: 122 additions & 0 deletions docs/.vitepress/components/Publication.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
<script setup lang="ts">
import {withBase} from "vitepress";
const props = defineProps<{
title: string;
type: string;
authors: string;
year: string;
journal: string;
doi: string;
abstract: string;
image: string;
}>();
</script>

<template>
<a :href="props.doi" class="publication-link">
<article class="publication-item">
<div class="publication-header">
<h1 class="publication-title">{{ props.title }}<span class="publication-year"> — {{ props.year }}</span></h1>
<div class="publication-authors">
{{ props.authors }}
</div>
<div class="publication-journal">
{{ props.journal }}
</div>
</div>
<div class="publication-content">
<div class="publication-abstract">
<h3>Abstract</h3>
<slot />
</div>
<div class="publication-image">
<img :src="withBase(props.image)" :alt="`Image of the first page of the article with title ${ props.title }`" />
</div>
</div>
</article>
</a>
</template>

<style scoped>
.publication-link {
display: block;
font-weight: initial;
text-decoration: none;
color: var(--vp-c-text-1);
}
.publication-link:hover {
text-decoration: none;
}
.publication-item {
margin: 0 auto 24px auto;
padding: 32px;
background-color: var(--vp-c-bg-soft);
border: 1px solid var(--vp-c-bg-soft);
border-radius: 12px;
transition: background-color 0.25s, border-color 0.25s;
}
.publication-item:hover {
border: 1px solid var(--vp-c-brand);
background-color: var(--vp-c-bg-soft-up);
}
.publication-header {
margin-bottom: 16px;
}
.publication-title {
line-height: 28px;
font-size: 20px;
font-weight: 600;
margin: 0;
}
.publication-year {
color: var(--vp-c-text-2);
}
.publication-authors {
font-size: 16px;
font-weight: 400;
margin: 0;
color: var(--vp-c-text-2);
}
.publication-journal {
font-style: italic;
}
.publication-content {
display: flex;
gap: 16px;
}
.publication-abstract {
flex: 0 0 66%;
}
.publication-abstract h3 {
align-self: start;
font-size: 18px;
font-weight: 600;
margin-top: 24px;
margin-bottom: 8px;
color: var(--vp-c-text-3);
}
.publication-image {
display: block;
align-self: end;
flex: 0 0 33%;
}
.publication-image img {
border-radius: 8px;
}
</style>
46 changes: 46 additions & 0 deletions docs/.vitepress/components/Publications.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
<script setup lang="ts">
const props = defineProps<{
title: string;
lead?: string;
}>();
</script>

<template>
<section class="publication-list">
<div class="list-header">
<h2 class="list-header-title">{{ props.title }}</h2>
<p class="list-header-lead" v-if="props.lead">{{ props.lead }}</p>
</div>
<slot />
</section>
</template>

<style scoped>
.publication-list {
border-top: 1px solid var(--vp-c-divider);
padding: 24px 0;
margin: 0 auto;
max-width: 960px;
}
.list-header {
padding: 24px;
max-width: 512px;
}
.list-header-title {
font-size: 20px;
font-weight: 500;
color: var(--vp-c-text-1);
}
.list-header-lead {
padding-top: 8px;
line-height: 24px;
font-size: 14px;
font-weight: 500;
color: var(--vp-c-text-2);
}
</style>
49 changes: 49 additions & 0 deletions docs/.vitepress/components/PublicationsPage.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
<script setup lang="ts">
const props = defineProps<{
title: string;
lead: string;
}>();
</script>

<template>
<div class="hero">
<h1 class="hero-title">Publications</h1>
<p class="hero-lead">Dolos is developed by <a href="https://dodona.ugent.be/en/about/">Team Dodona</a> at Ghent University in Belgium. Our research is published in the following journals and conferences.</p>
</div>
<slot />
</template>

<style scoped>
.hero {
padding: 48px 24px;
margin: auto;
max-width: 960px;
}
.hero a {
color: var(--vp-c-brand);
}
.hero a:hover {
text-decoration: underline;
}
.hero-title {
line-height: 32px;
font-size: 32px;
font-weight: 500;
color: var(--vp-c-text-1);
}
.hero-lead {
padding-top: 8px;
font-size: 16px;
font-weight: 500;
max-width: 512px;
color: var(--vp-c-text-2);
}
</style>
71 changes: 71 additions & 0 deletions docs/.vitepress/config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
import { defineConfig } from 'vitepress'

// https://vitepress.dev/reference/site-config
export default defineConfig({
title: "Dolos",
description: "Source Code Plagiarism Detection",

ignoreDeadLinks: [
/^https?:\/\/localhost/
],

themeConfig: {
// https://vitepress.dev/reference/default-theme-config

nav: [
{ text: 'Documentation', link: '/guide/' },
{ text: 'Examples', link: '/try/' },
{ text: 'Use Dolos', link: 'https://dolos.ugent.be/server' },
],

sidebar: [
{ text: "Introduction", link: "/guide/" },
{
text: 'Dolos Online',
items: [
{ text: 'Use Dolos Online', link: '/guide/server' },
{ text: 'Use case: Dodona', link: '/guide/dodona' },
]
},
{
text: 'CLI & Library',
items: [
{ text: 'Install the Dolos CLI', link: '/guide/installation' },
{ text: 'Use the Dolos CLI', link: '/guide/running' },
{ text: 'Run Dolos using docker', link: '/guide/docker' },
{ text: 'Add metadata', link: '/guide/adding-metadata' },
{ text: 'Add new languages', link: '/guide/adding-languages' },
{ text: 'Use the Dolos library', link: '/guide/library' },
]
},
{
text: 'About Dolos',
items: [
{ text: 'How Dolos works', link: '/about/algorithm' },
{ text: 'Supported programming languages', link: '/about/languages' },
{ text: 'Research publications', link: '/about/publications' },
]
}
],

socialLinks: [
{ icon: 'github', link: 'https://github.com/dodona-edu/dolos' }
],

search: {
provider: 'local'
},

footer: {
message: "Made by Team Dodona with ❤️"
}
},

vite: {
resolve: {
alias: {
'@components': __dirname + '/components'
}
}
}
})
16 changes: 16 additions & 0 deletions docs/.vitepress/theme/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// https://vitepress.dev/guide/custom-theme
import { h } from 'vue'
import Theme from 'vitepress/theme'
import './style.css'

export default {
...Theme,
Layout: () => {
return h(Theme.Layout, null, {
// https://vitepress.dev/guide/extending-default-theme#layout-slots
})
},
enhanceApp({ app, router, siteData }) {
// ...
}
}
Loading

0 comments on commit 26bd2c9

Please sign in to comment.