diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..d17d3ec --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,20 @@ +version: 2 +updates: + +- package-ecosystem: "github-actions" + directory: "/" + rebase-strategy: "disabled" + schedule: + interval: weekly + day: "saturday" + timezone: "Europe/Berlin" + time: "03:00" + +- package-ecosystem: npm + directory: "/" + rebase-strategy: "disabled" + schedule: + interval: weekly + day: "saturday" + timezone: "Europe/Berlin" + time: "03:00" diff --git a/.github/workflows/test-build.yml b/.github/workflows/test-build.yml new file mode 100644 index 0000000..383d324 --- /dev/null +++ b/.github/workflows/test-build.yml @@ -0,0 +1,22 @@ +name: build test CI + +on: push + +jobs: + build-test: + name: Build Test + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Node 20 + uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: npm-install + run: npm install + + - name: npm-build + run: npm run build diff --git a/.github/workflows/test-lint.yml b/.github/workflows/test-lint.yml new file mode 100644 index 0000000..d203d25 --- /dev/null +++ b/.github/workflows/test-lint.yml @@ -0,0 +1,22 @@ +name: lint test CI + +on: push + +jobs: + build-test: + name: Lint Test + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Node 20 + uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: npm-install + run: npm install + + - name: npm-test + run: npm test diff --git a/docs/.vuepress/config.github.js b/docs/.vuepress/config.github.js new file mode 100644 index 0000000..80ed2c0 --- /dev/null +++ b/docs/.vuepress/config.github.js @@ -0,0 +1,11 @@ +import { defineUserConfig } from 'vuepress' +import meta from './config/meta' +import theme from './config/theme' +import plugins from './config/plugins' + +export default defineUserConfig({ + base: "/IT4C.dev/", + ...meta, + theme, + plugins, +}) diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js new file mode 100644 index 0000000..5301d24 --- /dev/null +++ b/docs/.vuepress/config.js @@ -0,0 +1,10 @@ +import { defineUserConfig } from 'vuepress' +import meta from './config/meta' +import theme from './config/theme' +import plugins from './config/plugins' + +export default defineUserConfig({ + ...meta, + theme, + plugins, +}) diff --git a/docs/.vuepress/config/meta.js b/docs/.vuepress/config/meta.js new file mode 100644 index 0000000..058b289 --- /dev/null +++ b/docs/.vuepress/config/meta.js @@ -0,0 +1,7 @@ +export default { + title: 'Ocelot-Social', + // description: 'Free and open-source social network for active citizenship.', + head: [ + ['meta', {name: 'viewport', content: 'width=device-width,initial-scale=1'}] + ], +} \ No newline at end of file diff --git a/docs/.vuepress/config/plugins.js b/docs/.vuepress/config/plugins.js new file mode 100644 index 0000000..c4d4eae --- /dev/null +++ b/docs/.vuepress/config/plugins.js @@ -0,0 +1,18 @@ +import { searchProPlugin } from 'vuepress-plugin-search-pro' + +export default [ + searchProPlugin({ + indexContent: true, + autoSuggestions: true, + customFields: [ + { + getter: (page) => page.frontmatter.category, + formatter: "Category: $content", + }, + { + getter: (page) => page.frontmatter.tag, + formatter: "Tag: $content", + }, + ], + }), +] \ No newline at end of file diff --git a/docs/.vuepress/config/theme.js b/docs/.vuepress/config/theme.js new file mode 100644 index 0000000..535e3c8 --- /dev/null +++ b/docs/.vuepress/config/theme.js @@ -0,0 +1,36 @@ +import { hopeTheme } from 'vuepress-theme-hope' + +export default hopeTheme({ + favicon: 'favicon.ico', + logo: '/logo.svg', + docsRepo: 'https://github.com/Ocelot-Social-Community/ocelot.social', + docsBranch: 'master', + docsDir: 'docs', + editLink: true, + lastUpdated: false, + contributors: false, + displayFooter: true, + print: false, + copyright: 'CC BY busFaktor() e.V. & Authors', + footer: 'Released under the MIT License.', + navbar: [ + { text: 'Documentation', link: 'https://docs.ocelot.social/' }, + { text: 'Demo', link: 'https://stage.ocelot.social/' }, + { + text: 'Github', + link: 'https://github.com/Ocelot-Social-Community' + }, + ], + plugins: { + mdEnhance: { + align: true, + demo: true, + imgLazyload: true, + imgMark: true, + imgSize: true, + sub: true, + sup: true, + vPre: true, + } + } +}) diff --git a/docs/.vuepress/public/favicon.ico b/docs/.vuepress/public/favicon.ico new file mode 100644 index 0000000..b535a3d Binary files /dev/null and b/docs/.vuepress/public/favicon.ico differ diff --git a/docs/.vuepress/public/logo-squared.svg b/docs/.vuepress/public/logo-squared.svg new file mode 100644 index 0000000..2a926f0 --- /dev/null +++ b/docs/.vuepress/public/logo-squared.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/.vuepress/public/logo.svg b/docs/.vuepress/public/logo.svg new file mode 100644 index 0000000..2a926f0 --- /dev/null +++ b/docs/.vuepress/public/logo.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/.vuepress/styles/palette.scss b/docs/.vuepress/styles/palette.scss new file mode 100644 index 0000000..d0d6a96 --- /dev/null +++ b/docs/.vuepress/styles/palette.scss @@ -0,0 +1 @@ +$theme-color: #17b53f; \ No newline at end of file diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..29e3817 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,13 @@ +--- +home: true +# layout: BlogHome +icon: home +title: Ocelot-Social +heroFullScreen: false +heroImage: /logo.svg +heroText: Free and open-source social network for active citizenship. +tagLine: +# actions: +# - text: Demo +# link: https://stage.ocelot.social/ +--- \ No newline at end of file