Compare commits
1 Commits
@vercel/bu
...
update/bui
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
486e47f271 |
@@ -19,13 +19,6 @@ packages/cli/src/util/dev/templates/*.ts
|
||||
packages/client/tests/fixtures
|
||||
packages/client/lib
|
||||
|
||||
# hydrogen
|
||||
packages/hydrogen/edge-entry.js
|
||||
|
||||
# next
|
||||
packages/next/test/integration/middleware
|
||||
packages/next/test/integration/middleware-eval
|
||||
|
||||
# node-bridge
|
||||
packages/node-bridge/bridge.js
|
||||
packages/node-bridge/launcher.js
|
||||
|
||||
4
.gitattributes
vendored
@@ -8,7 +8,3 @@ packages/*/test/* linguist-vendored
|
||||
# Go build fails with Windows line endings.
|
||||
*.go text eol=lf
|
||||
go.mod text eol=lf
|
||||
|
||||
# Mark certain files as "binary" -- hide diffs
|
||||
**/test/fixtures/**/git/**/* binary
|
||||
**/test/fixtures/**/git/**/* linguist-generated
|
||||
|
||||
39
.github/CODEOWNERS
vendored
@@ -1,26 +1,29 @@
|
||||
# Documentation
|
||||
# https://help.github.com/en/articles/about-code-owners
|
||||
|
||||
* @TooTallNate @EndangeredMassa @styfle
|
||||
/.github/workflows @TooTallNate @EndangeredMassa @styfle @ijjk
|
||||
/packages/frameworks @TooTallNate @EndangeredMassa @styfle @AndyBitz
|
||||
* @TooTallNate
|
||||
/.github/workflows @AndyBitz @styfle
|
||||
/packages/frameworks @AndyBitz
|
||||
/packages/cli/src/commands/build @TooTallNate @styfle @AndyBitz @gdborton @jaredpalmer
|
||||
/packages/cli/src/commands/dev @TooTallNate @styfle @AndyBitz
|
||||
/packages/cli/src/util/dev @TooTallNate @styfle @AndyBitz
|
||||
/packages/cli/src/commands/domains @javivelasco @mglagola @anatrajkovska
|
||||
/packages/cli/src/commands/certs @javivelasco @mglagola @anatrajkovska
|
||||
/packages/cli/src/commands/env @styfle @lucleray
|
||||
/packages/client @TooTallNate @EndangeredMassa @styfle
|
||||
/packages/build-utils @TooTallNate @EndangeredMassa @styfle @AndyBitz
|
||||
/packages/client @styfle @TooTallNate
|
||||
/packages/build-utils @styfle @AndyBitz @TooTallNate
|
||||
/packages/middleware @gdborton @javivelasco
|
||||
/packages/node @TooTallNate @EndangeredMassa @styfle
|
||||
/packages/node-bridge @TooTallNate @EndangeredMassa @styfle @ijjk
|
||||
/packages/next @TooTallNate @ijjk
|
||||
/packages/go @TooTallNate @EndangeredMassa @styfle
|
||||
/packages/python @TooTallNate @EndangeredMassa @styfle
|
||||
/packages/ruby @TooTallNate @EndangeredMassa @styfle
|
||||
/packages/static-build @TooTallNate @EndangeredMassa @styfle @AndyBitz
|
||||
/packages/routing-utils @TooTallNate @EndangeredMassa @styfle @ijjk
|
||||
/examples @leerob
|
||||
/packages/node @styfle @TooTallNate @lucleray
|
||||
/packages/node-bridge @styfle @TooTallNate @lucleray
|
||||
/packages/next @Timer @ijjk
|
||||
/packages/go @styfle @TooTallNate
|
||||
/packages/python @styfle @TooTallNate
|
||||
/packages/ruby @styfle @TooTallNate
|
||||
/packages/static-build @styfle @AndyBitz
|
||||
/packages/routing-utils @styfle @dav-is @ijjk
|
||||
/examples @mcsdevv
|
||||
/examples/create-react-app @Timer
|
||||
/examples/nextjs @timneutkens @ijjk @styfle
|
||||
/examples/hugo @styfle
|
||||
/examples/jekyll @styfle
|
||||
/examples/zola @styfle
|
||||
/examples/nextjs @timneutkens @Timer
|
||||
/examples/hugo @mcsdevv @styfle
|
||||
/examples/jekyll @mcsdevv @styfle
|
||||
/examples/zola @mcsdevv @styfle
|
||||
|
||||
8
.github/CONTRIBUTING.md
vendored
@@ -23,7 +23,7 @@ Make sure all the tests pass before making changes.
|
||||
|
||||
## Verifying your change
|
||||
|
||||
Once you are done with your changes (we even suggest doing it along the way), make sure all the tests still pass by running:
|
||||
Once you are done with your changes (we even suggest doing it along the way), make sure all the test still pass by running:
|
||||
|
||||
```
|
||||
yarn test-unit
|
||||
@@ -64,7 +64,7 @@ Integration tests create deployments to your Vercel account using the `test` pro
|
||||
x-now-trace=iad1]
|
||||
```
|
||||
|
||||
In such cases, you can visit the URL of the failed deployment and append `/_logs` to see the build error. In the case above, that would be https://test-8ashcdlew.vercel.app/_logs
|
||||
In such cases you can visit the URL of the failed deployment and append `/_logs` so see the build error. In the case above, that would be https://test-8ashcdlew.vercel.app/_logs
|
||||
|
||||
The logs of this deployment will contain the actual error which may help you to understand what went wrong.
|
||||
|
||||
@@ -82,11 +82,11 @@ nodeFileTrace(['path/to/entrypoint.js'], {
|
||||
.then(e => console.error(e));
|
||||
```
|
||||
|
||||
When you run this script, you'll see all the imported files. If anything file is missing, the bug is in [@vercel/nft](https://github.com/vercel/nft) and not the Builder.
|
||||
When you run this script, you'll see all imported files. If anything file is missing, the bug is in [@vercel/nft](https://github.com/vercel/nft) and not the Builder.
|
||||
|
||||
## Deploy a Builder with existing project
|
||||
|
||||
Sometimes you want to test changes to a Builder against an existing project, maybe with `vercel dev` or actual deployment. You can avoid publishing every Builder change to npm by uploading the Builder as a tarball.
|
||||
Sometimes you want to test changes to a Builder against an existing project, maybe with `vercel dev` or an actual deployment. You can avoid publishing every Builder change to npm by uploading the Builder as a tarball.
|
||||
|
||||
1. Change directory to the desired Builder `cd ./packages/node`
|
||||
2. Run `yarn build` to compile typescript and other build steps
|
||||
|
||||
3
.github/workflows/cancel.yml
vendored
@@ -13,5 +13,6 @@ jobs:
|
||||
steps:
|
||||
- uses: styfle/cancel-workflow-action@0.9.1
|
||||
with:
|
||||
workflow_id: test.yml, test-integration-cli.yml, test-unit.yml
|
||||
workflow_id: 849295, 849296, 849297, 849298
|
||||
access_token: ${{ github.token }}
|
||||
|
||||
|
||||
10
.github/workflows/test-integration-cli.yml
vendored
@@ -11,20 +11,14 @@ on:
|
||||
jobs:
|
||||
test:
|
||||
name: CLI
|
||||
timeout-minutes: 40
|
||||
timeout-minutes: 30
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
node: [14]
|
||||
node: [12]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Conditionally set remote env
|
||||
if: github.event.pull_request.head.repo.full_name == github.repository
|
||||
run: |
|
||||
echo "TURBO_REMOTE_ONLY=true" >> $GITHUB_ENV
|
||||
echo "TURBO_TEAM=vercel" >> $GITHUB_ENV
|
||||
echo "TURBO_TOKEN=${{ secrets.TURBO_TOKEN }}" >> $GITHUB_ENV
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: '1.13.15'
|
||||
|
||||
43
.github/workflows/test-integration-dev.yml
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
name: Dev
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
tags:
|
||||
- '!*'
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
test:
|
||||
name: Dev
|
||||
timeout-minutes: 75
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
node: [12]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: '1.13.15'
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: ${{ matrix.node }}
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 100
|
||||
- run: git --version
|
||||
- run: git fetch origin main --depth=100
|
||||
- run: git fetch origin ${{ github.ref }} --depth=100
|
||||
- run: git diff origin/main...HEAD --name-only
|
||||
- name: Install Hugo
|
||||
if: matrix.os == 'macos-latest'
|
||||
run: curl -L -O https://github.com/gohugoio/hugo/releases/download/v0.56.0/hugo_0.56.0_macOS-64bit.tar.gz && tar -xzf hugo_0.56.0_macOS-64bit.tar.gz && mv ./hugo packages/cli/test/dev/fixtures/08-hugo/
|
||||
- run: yarn install --network-timeout 1000000
|
||||
- run: yarn run build
|
||||
- run: yarn test-integration-dev
|
||||
env:
|
||||
VERCEL_TEAM_TOKEN: ${{ secrets.VERCEL_TEAM_TOKEN }}
|
||||
VERCEL_REGISTRATION_URL: ${{ secrets.VERCEL_REGISTRATION_URL }}
|
||||
35
.github/workflows/test-integration-once.yml
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
name: E2E
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
tags:
|
||||
- '!*'
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
test:
|
||||
name: E2E
|
||||
timeout-minutes: 120
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: '1.13.15'
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: 12
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 100
|
||||
- run: git --version
|
||||
- run: git fetch origin main --depth=100
|
||||
- run: git fetch origin ${{ github.ref }} --depth=100
|
||||
- run: git diff origin/main...HEAD --name-only
|
||||
- run: yarn install --network-timeout 1000000
|
||||
- run: yarn run build
|
||||
- run: yarn test-integration-once
|
||||
env:
|
||||
VERCEL_TEAM_TOKEN: ${{ secrets.VERCEL_TEAM_TOKEN }}
|
||||
VERCEL_REGISTRATION_URL: ${{ secrets.VERCEL_REGISTRATION_URL }}
|
||||
12
.github/workflows/test-unit.yml
vendored
@@ -16,15 +16,9 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest, windows-latest]
|
||||
node: [14]
|
||||
node: [12]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Conditionally set remote env
|
||||
if: github.event.pull_request.head.repo.full_name == github.repository
|
||||
run: |
|
||||
echo "TURBO_REMOTE_ONLY=true" >> $GITHUB_ENV
|
||||
echo "TURBO_TEAM=vercel" >> $GITHUB_ENV
|
||||
echo "TURBO_TOKEN=${{ secrets.TURBO_TOKEN }}" >> $GITHUB_ENV
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: '1.13.15'
|
||||
@@ -41,9 +35,9 @@ jobs:
|
||||
- run: yarn install --network-timeout 1000000
|
||||
- run: yarn run build
|
||||
- run: yarn run lint
|
||||
if: matrix.os == 'ubuntu-latest' && matrix.node == 14 # only run lint once
|
||||
if: matrix.os == 'ubuntu-latest' && matrix.node == 12 # only run lint once
|
||||
- run: yarn run test-unit
|
||||
- run: yarn workspace vercel run coverage
|
||||
if: matrix.os == 'ubuntu-latest' && matrix.node == 14 # only run coverage once
|
||||
if: matrix.os == 'ubuntu-latest' && matrix.node == 12 # only run coverage once
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
90
.github/workflows/test.yml
vendored
@@ -1,90 +0,0 @@
|
||||
name: Tests
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
tags:
|
||||
- '!*'
|
||||
pull_request:
|
||||
|
||||
env:
|
||||
NODE_VERSION: '14'
|
||||
|
||||
jobs:
|
||||
setup:
|
||||
name: Find Changes
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
tests: ${{ steps['set-tests'].outputs['tests'] }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- run: git --version
|
||||
- run: git fetch origin main
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'yarn'
|
||||
- run: yarn install --network-timeout 1000000
|
||||
- id: set-tests
|
||||
run: |
|
||||
TESTS_ARRAY=$(node utils/chunk-tests.js $SCRIPT_NAME)
|
||||
echo "Files to test:"
|
||||
echo "$TESTS_ARRAY"
|
||||
echo "::set-output name=tests::$TESTS_ARRAY"
|
||||
|
||||
test:
|
||||
timeout-minutes: 120
|
||||
runs-on: ${{ matrix.runner }}
|
||||
name: ${{matrix.scriptName}} (${{matrix.packageName}}, ${{matrix.chunkNumber}}, ${{ matrix.runner }})
|
||||
if: ${{ needs.setup.outputs['tests'] != '[]' }}
|
||||
needs:
|
||||
- setup
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include: ${{ fromJson(needs.setup.outputs['tests']) }}
|
||||
steps:
|
||||
- name: Conditionally set remote env
|
||||
if: github.event.pull_request.head.repo.full_name == github.repository
|
||||
run: |
|
||||
echo "TURBO_REMOTE_ONLY=true" >> $GITHUB_ENV
|
||||
echo "TURBO_TEAM=vercel" >> $GITHUB_ENV
|
||||
echo "TURBO_TOKEN=${{ secrets.TURBO_TOKEN }}" >> $GITHUB_ENV
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 2
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: '1.13.15'
|
||||
- uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: 'yarn'
|
||||
|
||||
- name: Install Hugo
|
||||
if: matrix.runner == 'macos-latest'
|
||||
run: curl -L -O https://github.com/gohugoio/hugo/releases/download/v0.56.0/hugo_0.56.0_macOS-64bit.tar.gz && tar -xzf hugo_0.56.0_macOS-64bit.tar.gz && mv ./hugo packages/cli/test/dev/fixtures/08-hugo/
|
||||
|
||||
- run: yarn install --network-timeout 1000000
|
||||
|
||||
- name: Build ${{matrix.packageName}} and all its dependencies
|
||||
run: yarn turbo run build --cache-dir=".turbo" --scope=${{matrix.packageName}} --include-dependencies --no-deps
|
||||
env:
|
||||
FORCE_COLOR: '1'
|
||||
- name: Test ${{matrix.packageName}}
|
||||
run: node_modules/.bin/turbo run test --cache-dir=".turbo" --scope=${{matrix.packageName}} --no-deps -- ${{ join(matrix.testPaths, ' ') }}
|
||||
shell: bash
|
||||
env:
|
||||
VERCEL_TEAM_TOKEN: ${{ secrets.VERCEL_TEAM_TOKEN }}
|
||||
VERCEL_REGISTRATION_URL: ${{ secrets.VERCEL_REGISTRATION_URL }}
|
||||
FORCE_COLOR: '1'
|
||||
|
||||
conclusion:
|
||||
needs:
|
||||
- test
|
||||
runs-on: ubuntu-latest
|
||||
name: E2E
|
||||
steps:
|
||||
- name: Done
|
||||
run: echo "Done."
|
||||
@@ -1,4 +0,0 @@
|
||||
# https://prettier.io/docs/en/ignore.html
|
||||
|
||||
# ignore this file with an intentional syntax error
|
||||
packages/cli/test/dev/fixtures/edge-function-error/api/edge-error-syntax.js
|
||||
@@ -1 +1,17 @@
|
||||
packages/*/test/**
|
||||
*
|
||||
|
||||
# general
|
||||
!utils/
|
||||
!utils/run.js
|
||||
!.yarnrc
|
||||
!yarn.lock
|
||||
!package.json
|
||||
|
||||
# api
|
||||
!api/
|
||||
!api/**
|
||||
|
||||
# packages
|
||||
!packages/
|
||||
!packages/frameworks
|
||||
!packages/frameworks/**
|
||||
|
||||
@@ -9,6 +9,7 @@ A Runtime is an npm module that implements the following interface:
|
||||
interface Runtime {
|
||||
version: number;
|
||||
build: (options: BuildOptions) => Promise<BuildResult>;
|
||||
analyze?: (options: AnalyzeOptions) => Promise<string>;
|
||||
prepareCache?: (options: PrepareCacheOptions) => Promise<CacheOutputs>;
|
||||
shouldServe?: (options: ShouldServeOptions) => Promise<boolean>;
|
||||
startDevServer?: (
|
||||
@@ -71,6 +72,26 @@ export async function build(options: BuildOptions) {
|
||||
}
|
||||
```
|
||||
|
||||
### `analyze()`
|
||||
|
||||
An **optional** exported function that returns a unique fingerprint used for the
|
||||
purpose of [build
|
||||
de-duplication](https://vercel.com/docs/v2/platform/deployments#deduplication).
|
||||
If the `analyze()` function is not supplied, then a random fingerprint is
|
||||
assigned to each build.
|
||||
|
||||
**Example:**
|
||||
|
||||
```typescript
|
||||
import { AnalyzeOptions } from '@vercel/build-utils';
|
||||
|
||||
export async function analyze(options: AnalyzeOptions) {
|
||||
// Do calculations to generate a fingerprint based off the source code here…
|
||||
|
||||
return 'fingerprint goes here';
|
||||
}
|
||||
```
|
||||
|
||||
### `prepareCache()`
|
||||
|
||||
An **optional** exported function that is executed after [`build()`](#build) is
|
||||
@@ -307,15 +328,15 @@ This is a [class](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refere
|
||||
|
||||
This is an abstract enumeration type that is implemented by one of the following possible `String` values:
|
||||
|
||||
- `nodejs14.x`
|
||||
- `nodejs12.x`
|
||||
- `nodejs10.x`
|
||||
- `go1.x`
|
||||
- `java11`
|
||||
- `python3.9`
|
||||
- `dotnet6`
|
||||
- `dotnetcore3.1`
|
||||
- `ruby2.7`
|
||||
- `provided.al2`
|
||||
- `python3.6`
|
||||
- `dotnetcore2.1`
|
||||
- `ruby2.5`
|
||||
- `provided`
|
||||
|
||||
## `@vercel/build-utils` Helper Functions
|
||||
|
||||
|
||||
@@ -1,72 +0,0 @@
|
||||
import fs from 'fs/promises';
|
||||
import { join, dirname } from 'path';
|
||||
import execa from 'execa';
|
||||
import { getExampleList } from '../examples/example-list';
|
||||
import { mapOldToNew } from '../examples/map-old-to-new';
|
||||
|
||||
const repoRoot = join(__dirname, '..', '..', '..');
|
||||
const pubDir = join(repoRoot, 'public');
|
||||
|
||||
async function main() {
|
||||
console.log(`Building static frontend ${repoRoot}...`);
|
||||
|
||||
await fs.rm(pubDir, { recursive: true, force: true });
|
||||
await fs.mkdir(pubDir);
|
||||
|
||||
const examples = await getExampleList();
|
||||
const pathListAll = join(pubDir, 'list-all.json');
|
||||
await fs.writeFile(pathListAll, JSON.stringify(examples));
|
||||
|
||||
const exampleDirs = await fs.readdir(join(repoRoot, 'examples'), {
|
||||
withFileTypes: true,
|
||||
});
|
||||
|
||||
const existingExamples = exampleDirs
|
||||
.filter(dir => dir.isDirectory())
|
||||
.map(dir => ({
|
||||
name: dir.name,
|
||||
visible: true,
|
||||
suggestions: [],
|
||||
}));
|
||||
|
||||
const oldExamples = Object.keys(mapOldToNew).map(key => ({
|
||||
name: key,
|
||||
visible: false,
|
||||
suggestions: mapOldToNew[key],
|
||||
}));
|
||||
|
||||
const pathList = join(pubDir, 'list.json');
|
||||
await fs.writeFile(
|
||||
pathList,
|
||||
JSON.stringify([...existingExamples, ...oldExamples])
|
||||
);
|
||||
|
||||
const { stdout: sha } = await execa('git', ['rev-parse', '--short', 'HEAD'], {
|
||||
cwd: repoRoot,
|
||||
});
|
||||
|
||||
const tarballsDir = join(pubDir, 'tarballs');
|
||||
const packagesDir = join(repoRoot, 'packages');
|
||||
const packages = await fs.readdir(packagesDir);
|
||||
for (const pkg of packages) {
|
||||
const fullDir = join(packagesDir, pkg);
|
||||
const packageJsonRaw = await fs.readFile(
|
||||
join(fullDir, 'package.json'),
|
||||
'utf-8'
|
||||
);
|
||||
const packageJson = JSON.parse(packageJsonRaw);
|
||||
const tarballName = `${packageJson.name
|
||||
.replace('@', '')
|
||||
.replace('/', '-')}-v${packageJson.version}-${sha.trim()}.tgz`;
|
||||
const destTarballPath = join(tarballsDir, `${packageJson.name}.tgz`);
|
||||
await fs.mkdir(dirname(destTarballPath), { recursive: true });
|
||||
await fs.copyFile(join(fullDir, tarballName), destTarballPath);
|
||||
}
|
||||
|
||||
console.log('Completed building static frontend.');
|
||||
}
|
||||
|
||||
main().catch(err => {
|
||||
console.log('error running build:', err);
|
||||
process.exit(1);
|
||||
});
|
||||
10
api/examples/list-all.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import { VercelRequest, VercelResponse } from '@vercel/node';
|
||||
import { getExampleList } from '../_lib/examples/example-list';
|
||||
import { withApiHandler } from '../_lib/util/with-api-handler';
|
||||
|
||||
export default withApiHandler(async function (
|
||||
req: VercelRequest,
|
||||
res: VercelResponse
|
||||
) {
|
||||
res.status(200).json(await getExampleList());
|
||||
});
|
||||
27
api/examples/list.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { extract } from '../_lib/examples/extract';
|
||||
import { summary } from '../_lib/examples/summary';
|
||||
import { VercelRequest, VercelResponse } from '@vercel/node';
|
||||
import { mapOldToNew } from '../_lib/examples/map-old-to-new';
|
||||
import { withApiHandler } from '../_lib/util/with-api-handler';
|
||||
|
||||
export default withApiHandler(async function (
|
||||
req: VercelRequest,
|
||||
res: VercelResponse
|
||||
) {
|
||||
await extract('https://github.com/vercel/vercel/archive/main.zip', '/tmp');
|
||||
const exampleList = summary('/tmp/vercel-main/examples');
|
||||
|
||||
const existingExamples = Array.from(exampleList).map(key => ({
|
||||
name: key,
|
||||
visible: true,
|
||||
suggestions: [],
|
||||
}));
|
||||
|
||||
const oldExamples = Object.keys(mapOldToNew).map(key => ({
|
||||
name: key,
|
||||
visible: false,
|
||||
suggestions: mapOldToNew[key],
|
||||
}));
|
||||
|
||||
res.status(200).json([...existingExamples, ...oldExamples]);
|
||||
});
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "ES2020",
|
||||
"target": "esnext",
|
||||
"skipLibCheck": true,
|
||||
"strict": false,
|
||||
"forceConsistentCasingInFileNames": true,
|
||||
|
||||
@@ -16,4 +16,4 @@ If you would not like to verify your domain, you can remove it from your account
|
||||
|
||||
#### Resources
|
||||
|
||||
- [Vercel Custom Domains Documentation](https://vercel.com/docs/concepts/projects/custom-domains)
|
||||
- [Vercel Custom Domains Documentation](https://vercel.com/docs/v2/custom-domains)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
#### Why This Error Occurred
|
||||
|
||||
You ran `vercel dev` inside a project that contains a `vercel.json` file with `env` or `build.env` properties that use [Vercel Secrets](https://vercel.com/docs/concepts/projects/environment-variables).
|
||||
You ran `vercel dev` inside a project that contains a `vercel.json` file with `env` or `build.env` properties that use [Vercel Secrets](https://vercel.com/docs/v2/build-step#environment-variables).
|
||||
|
||||
In order to use environment variables in your project locally that have values defined using the Vercel Secrets format (e.g. `@my-secret-value`), you will need to provide the value as an environment variable using a `.env`.
|
||||
|
||||
@@ -24,4 +24,4 @@ TEST=value
|
||||
|
||||
In the above example, `TEST` represents the name of the environment variable and `value` its value.
|
||||
|
||||
For more information on Environment Variables in development, [see the documentation](https://vercel.com/docs/concepts/projects/environment-variables).
|
||||
For more information on Environment Variables in development, [see the documentation](https://vercel.com/docs/v2/build-step#environment-variables).
|
||||
|
||||
1
examples/amp/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
.env
|
||||
19
examples/amp/README.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# AMP Example
|
||||
|
||||
This directory is a brief example of an [AMP](https://amp.dev/) site that can be deployed to Vercel with zero configuration.
|
||||
|
||||
## Deploy Your Own
|
||||
|
||||
Deploy your own AMP project with Vercel.
|
||||
|
||||
[](https://vercel.com/new/clone?repository-url=https://github.com/vercel/vercel/tree/main/examples/amp)
|
||||
|
||||
_Live Example: https://amp-template.vercel.app_
|
||||
|
||||
### How We Created This Example
|
||||
|
||||
To get started deploying AMP with Vercel, you can use the [Vercel CLI](https://vercel.com/download) to initialize the project:
|
||||
|
||||
```shell
|
||||
$ vercel init amp
|
||||
```
|
||||
BIN
examples/amp/favicon.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
72
examples/amp/index.html
Normal file
@@ -0,0 +1,72 @@
|
||||
<!DOCTYPE html>
|
||||
<html ⚡>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width,minimum-scale=1" />
|
||||
<link rel="shortcut icon" href="favicon.png">
|
||||
<style amp-boilerplate>body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}</style><noscript><style amp-boilerplate>body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}</style></noscript>
|
||||
<link rel="canonical" href="index.html" />
|
||||
<title>AMP Website</title>
|
||||
<script async src="https://cdn.ampproject.org/v0.js"></script>
|
||||
<style amp-custom>
|
||||
body > * {
|
||||
margin: 3rem 1rem;
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||
color: #525252;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
h4 {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 1.2rem;
|
||||
line-height: 2rem;
|
||||
}
|
||||
|
||||
.links {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
margin-bottom: 3rem;
|
||||
}
|
||||
|
||||
.links a {
|
||||
margin: 0 10px;
|
||||
font-size: 1rem;
|
||||
color: #005af0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<center>
|
||||
<amp-img width=150 height=150 layout="fixed" class="logo" src="logo.png"></amp-img>
|
||||
<h3>Welcome to your AMP page</h3>
|
||||
<p>AMP is a web component framework to <br> easily create user-first websites, stories, ads and emails.</p>
|
||||
|
||||
<h4>Links</h4>
|
||||
<div class="links">
|
||||
<a href="https://amp.dev/">Homepage</a>
|
||||
<a href="https://amp.dev/documentation/guides-and-tutorials/?format=websites">Tutorials</a>
|
||||
<a href="https://amp.dev/documentation/examples/">Examples</a>
|
||||
<a href="https://blog.amp.dev">Blog</a>
|
||||
</div>
|
||||
|
||||
<h4>Ready to get started?</h4>
|
||||
<div class="links">
|
||||
<a href="https://amp.dev/documentation/guides-and-tutorials/start/create/?format=websites">Create your first AMP page</a>
|
||||
</div>
|
||||
|
||||
<h4>Get involved</h4>
|
||||
<div class="links">
|
||||
<a href="https://twitter.com/amphtml">Twitter</a>
|
||||
<a href="https://amphtml.slack.com">Slack</a>
|
||||
<a href="https://amp.dev/events/amp-conf-2019">AMP Conf</a>
|
||||
<a href="https://amp.dev/events/amp-roadshow">AMP Roadshow</a>
|
||||
</div>
|
||||
</center>
|
||||
</body>
|
||||
</html>
|
||||
BIN
examples/amp/logo.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
@@ -10,7 +10,7 @@ Deploy your own Angular project with Vercel.
|
||||
|
||||
[](https://vercel.com/new/clone?repository-url=https://github.com/vercel/vercel/tree/main/examples/angular&template=angular)
|
||||
|
||||
_Live Example: https://angular-template.vercel.app_
|
||||
_Live Example: https://angular-now-examples.vercel.app_
|
||||
|
||||
## Development server
|
||||
|
||||
|
||||
20
examples/astro/.gitignore
vendored
@@ -1,20 +0,0 @@
|
||||
# build output
|
||||
dist/
|
||||
.output/
|
||||
|
||||
# dependencies
|
||||
node_modules/
|
||||
|
||||
# logs
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
pnpm-debug.log*
|
||||
|
||||
|
||||
# environment variables
|
||||
.env
|
||||
.env.production
|
||||
|
||||
# macOS-specific files
|
||||
.DS_Store
|
||||
@@ -1,2 +0,0 @@
|
||||
# Expose Astro dependencies for `pnpm` users
|
||||
shamefully-hoist=true
|
||||
@@ -1 +0,0 @@
|
||||
README.md
|
||||
@@ -1,42 +0,0 @@
|
||||
# Welcome to [Astro](https://astro.build)
|
||||
|
||||
[](https://stackblitz.com/github/withastro/astro/tree/latest/examples/starter)
|
||||
|
||||
> 🧑🚀 **Seasoned astronaut?** Delete this file. Have fun!
|
||||
|
||||
## 🚀 Project Structure
|
||||
|
||||
Inside of your Astro project, you'll see the following folders and files:
|
||||
|
||||
```
|
||||
/
|
||||
├── public/
|
||||
│ └── favicon.ico
|
||||
├── src/
|
||||
│ ├── components/
|
||||
│ │ └── Layout.astro
|
||||
│ └── pages/
|
||||
│ └── index.astro
|
||||
└── package.json
|
||||
```
|
||||
|
||||
Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.
|
||||
|
||||
There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components or layouts.
|
||||
|
||||
Any static assets, like images, can be placed in the `public/` directory.
|
||||
|
||||
## 🧞 Commands
|
||||
|
||||
All commands are run from the root of the project, from a terminal:
|
||||
|
||||
| Command | Action |
|
||||
| :---------------- | :------------------------------------------- |
|
||||
| `npm install` | Installs dependencies |
|
||||
| `npm run dev` | Starts local dev server at `localhost:3000` |
|
||||
| `npm run build` | Build your production site to `./dist/` |
|
||||
| `npm run preview` | Preview your build locally, before deploying |
|
||||
|
||||
## 👀 Want to learn more?
|
||||
|
||||
Feel free to check [our documentation](https://github.com/withastro/astro) or jump into our [Discord server](https://astro.build/chat).
|
||||
@@ -1,4 +0,0 @@
|
||||
import { defineConfig } from 'astro/config';
|
||||
|
||||
// https://astro.build/config
|
||||
export default defineConfig({});
|
||||
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"name": "@example/basics",
|
||||
"version": "0.0.1",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "astro dev",
|
||||
"start": "astro dev",
|
||||
"build": "astro build",
|
||||
"preview": "astro preview"
|
||||
},
|
||||
"devDependencies": {
|
||||
"astro": "^1.0.0-beta.20"
|
||||
}
|
||||
}
|
||||
|
Before Width: | Height: | Size: 4.2 KiB |
@@ -1,55 +0,0 @@
|
||||
---
|
||||
export interface Props {
|
||||
title: string;
|
||||
}
|
||||
|
||||
const { title } = Astro.props as Props;
|
||||
---
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
|
||||
<title>{title}</title>
|
||||
</head>
|
||||
<body>
|
||||
<slot />
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<style>
|
||||
:root {
|
||||
--font-size-base: clamp(1rem, 0.34vw + 0.91rem, 1.19rem);
|
||||
--font-size-lg: clamp(1.2rem, 0.7vw + 1.2rem, 1.5rem);
|
||||
--font-size-xl: clamp(2.44rem, 2.38vw + 1.85rem, 3.75rem);
|
||||
|
||||
--color-text: hsl(12, 5%, 4%);
|
||||
--color-bg: hsl(10, 21%, 95%);
|
||||
}
|
||||
|
||||
html {
|
||||
font-family: system-ui, sans-serif;
|
||||
font-size: var(--font-size-base);
|
||||
color: var(--color-text);
|
||||
background-color: var(--color-bg);
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
:global(h1) {
|
||||
font-size: var(--font-size-xl);
|
||||
}
|
||||
|
||||
:global(h2) {
|
||||
font-size: var(--font-size-lg);
|
||||
}
|
||||
|
||||
:global(code) {
|
||||
font-family: Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono,
|
||||
Bitstream Vera Sans Mono, Courier New, monospace;
|
||||
}
|
||||
</style>
|
||||
@@ -1,174 +0,0 @@
|
||||
---
|
||||
import Layout from '../components/Layout.astro';
|
||||
---
|
||||
|
||||
<Layout title="Welcome to Astro.">
|
||||
<main>
|
||||
<h1>Welcome to <span class="text-gradient">Astro</span></h1>
|
||||
<p class="instructions"><strong>Your first mission:</strong> tweak this message to try our hot module reloading. Check the <code>src/pages</code> directory!</p>
|
||||
<ul role="list" class="link-card-grid">
|
||||
<li class="link-card">
|
||||
<a href="https://astro.build/integrations/">
|
||||
<h2>Integrations <span>→</span></h2>
|
||||
<p>Add component frameworks, Tailwind, Partytown, and more!</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card">
|
||||
<a href="https://astro.build/themes/">
|
||||
<h2>Themes <span>→</span></h2>
|
||||
<p>Explore a galaxy of community-built starters.</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card">
|
||||
<a href="https://docs.astro.build/">
|
||||
<h2>Docs <span>→</span></h2>
|
||||
<p>Learn our complete feature set and explore the API.</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="link-card">
|
||||
<a href="https://astro.build/chat/">
|
||||
<h2>Chat <span>→</span></h2>
|
||||
<p>
|
||||
Ask, contribute, and have fun on our community Discord
|
||||
<svg
|
||||
class="heart"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 512 512"
|
||||
width="16"
|
||||
height="16"
|
||||
fill="currentColor"
|
||||
>
|
||||
<title>heart</title>
|
||||
<path d="M256 448l-30.164-27.211C118.718 322.442 48 258.61 48 179.095 48 114.221 97.918 64 162.4 64c36.399 0 70.717 16.742 93.6 43.947C278.882 80.742 313.199 64 349.6 64 414.082 64 464 114.221 464 179.095c0 79.516-70.719 143.348-177.836 241.694L256 448z" />
|
||||
</svg>
|
||||
</p>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</main>
|
||||
</Layout>
|
||||
|
||||
<style>
|
||||
:root {
|
||||
--color-border: hsl(17, 24%, 90%);
|
||||
--astro-gradient: linear-gradient(0deg,#4F39FA, #DA62C4);
|
||||
--link-gradient: linear-gradient(45deg, #4F39FA, #DA62C4 30%, var(--color-border) 60%);
|
||||
--night-sky-gradient: linear-gradient(0deg, #392362 -33%, #431f69 10%, #30216b 50%, #1f1638 100%);
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin: 0;
|
||||
transition: color 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
|
||||
h2 span {
|
||||
display: inline-block;
|
||||
transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
|
||||
code {
|
||||
font-size: 0.875em;
|
||||
border: 0.1em solid var(--color-border);
|
||||
border-radius: 4px;
|
||||
padding: 0.15em 0.25em;
|
||||
}
|
||||
|
||||
main {
|
||||
margin: auto;
|
||||
padding: 1em;
|
||||
max-width: 60ch;
|
||||
}
|
||||
|
||||
.text-gradient {
|
||||
font-weight: 900;
|
||||
background-image: var(--astro-gradient);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-size: 100% 200%;
|
||||
background-position-y: 100%;
|
||||
border-radius: 0.4rem;
|
||||
animation: pulse 4s ease-in-out infinite;
|
||||
}
|
||||
|
||||
@keyframes pulse {
|
||||
0%, 100% {
|
||||
background-position-y: 0%;
|
||||
}
|
||||
50% {
|
||||
background-position-y: 80%;
|
||||
}
|
||||
}
|
||||
|
||||
.instructions {
|
||||
line-height: 1.8;
|
||||
margin-bottom: 2rem;
|
||||
background-image: var(--night-sky-gradient);
|
||||
padding: 1.5rem;
|
||||
border-radius: 0.4rem;
|
||||
color: var(--color-bg);
|
||||
}
|
||||
|
||||
.link-card-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(24ch, 1fr));
|
||||
gap: 1rem;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.link-card {
|
||||
list-style: none;
|
||||
display: flex;
|
||||
padding: 0.15rem;
|
||||
background-image: var(--link-gradient);
|
||||
background-size: 400%;
|
||||
border-radius: 0.5rem;
|
||||
background-position: 100%;
|
||||
transition: background-position 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||
}
|
||||
|
||||
.link-card > a {
|
||||
width: 100%;
|
||||
text-decoration: none;
|
||||
line-height: 1.4;
|
||||
padding: 1em 1.3em;
|
||||
border-radius: 0.35rem;
|
||||
color: var(--text-color);
|
||||
background-color: white;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.link-card:is(:hover, :focus-within) {
|
||||
background-position: 0;
|
||||
}
|
||||
|
||||
.link-card:is(:hover, :focus-within) h2 {
|
||||
color: #4F39FA;
|
||||
}
|
||||
|
||||
.link-card:is(:hover, :focus-within) h2 span {
|
||||
transform: translateX(2px);
|
||||
}
|
||||
|
||||
.heart {
|
||||
display: inline-block;
|
||||
color: #DA62C4;
|
||||
animation: heartbeat 3s ease-in-out infinite;
|
||||
}
|
||||
|
||||
@keyframes heartbeat {
|
||||
0%,
|
||||
50%,
|
||||
100% {
|
||||
transform: scale(1);
|
||||
}
|
||||
5% {
|
||||
transform: scale(1.125);
|
||||
}
|
||||
10% {
|
||||
transform: scale(1.05);
|
||||
}
|
||||
15% {
|
||||
transform: scale(1.25);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,15 +0,0 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
// Enable top-level await, and other modern ESM features.
|
||||
"target": "ESNext",
|
||||
"module": "ESNext",
|
||||
// Enable node-style module resolution, for things like npm package imports.
|
||||
"moduleResolution": "node",
|
||||
// Enable JSON imports.
|
||||
"resolveJsonModule": true,
|
||||
// Enable stricter transpilation for better output.
|
||||
"isolatedModules": true,
|
||||
// Add type definitions for our Vite runtime.
|
||||
"types": ["vite/client"]
|
||||
}
|
||||
}
|
||||
@@ -1,2 +0,0 @@
|
||||
# `REACT_APP` prefix is required to expose to client-side
|
||||
REACT_APP_VERCEL_ANALYTICS_ID=$VERCEL_ANALYTICS_ID
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@testing-library/jest-dom": "^5.16.4",
|
||||
"@testing-library/react": "^13.3.0",
|
||||
"@testing-library/user-event": "^14.2.0",
|
||||
"react": "^18.1.0",
|
||||
"react-dom": "^18.1.0",
|
||||
"react-scripts": "5.0.1",
|
||||
"web-vitals": "^2.1.4"
|
||||
"@testing-library/jest-dom": "^5.16.1",
|
||||
"@testing-library/react": "^12.1.2",
|
||||
"@testing-library/user-event": "^13.5.0",
|
||||
"react": "^17.0.2",
|
||||
"react-dom": "^17.0.2",
|
||||
"react-scripts": "5.0.0",
|
||||
"web-vitals": "^2.1.3"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "react-scripts start",
|
||||
|
||||
@@ -3,7 +3,6 @@ import ReactDOM from 'react-dom';
|
||||
import './index.css';
|
||||
import App from './App';
|
||||
import reportWebVitals from './reportWebVitals';
|
||||
import { sendToVercelAnalytics } from './vitals';
|
||||
|
||||
ReactDOM.render(
|
||||
<React.StrictMode>
|
||||
@@ -12,4 +11,7 @@ ReactDOM.render(
|
||||
document.getElementById('root')
|
||||
);
|
||||
|
||||
reportWebVitals(sendToVercelAnalytics);
|
||||
// If you want to start measuring performance in your app, pass a function
|
||||
// to log results (for example: reportWebVitals(console.log))
|
||||
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
|
||||
reportWebVitals();
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
const vitalsUrl = 'https://vitals.vercel-analytics.com/v1/vitals';
|
||||
|
||||
function getConnectionSpeed() {
|
||||
return 'connection' in navigator &&
|
||||
navigator['connection'] &&
|
||||
'effectiveType' in navigator['connection']
|
||||
? navigator['connection']['effectiveType']
|
||||
: '';
|
||||
}
|
||||
|
||||
export function sendToVercelAnalytics(metric) {
|
||||
const analyticsId = process.env.REACT_APP_VERCEL_ANALYTICS_ID;
|
||||
if (!analyticsId) {
|
||||
return;
|
||||
}
|
||||
|
||||
const body = {
|
||||
dsn: analyticsId,
|
||||
id: metric.id,
|
||||
page: window.location.pathname,
|
||||
href: window.location.href,
|
||||
event_name: metric.name,
|
||||
value: metric.value.toString(),
|
||||
speed: getConnectionSpeed(),
|
||||
};
|
||||
|
||||
const blob = new Blob([new URLSearchParams(body).toString()], {
|
||||
// This content type is necessary for `sendBeacon`
|
||||
type: 'application/x-www-form-urlencoded',
|
||||
});
|
||||
if (navigator.sendBeacon) {
|
||||
navigator.sendBeacon(vitalsUrl, blob);
|
||||
} else
|
||||
fetch(vitalsUrl, {
|
||||
body: blob,
|
||||
method: 'POST',
|
||||
credentials: 'omit',
|
||||
keepalive: true,
|
||||
});
|
||||
}
|
||||
@@ -1484,10 +1484,10 @@
|
||||
"@svgr/plugin-svgo" "^5.5.0"
|
||||
loader-utils "^2.0.0"
|
||||
|
||||
"@testing-library/dom@^8.5.0":
|
||||
version "8.13.0"
|
||||
resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.13.0.tgz#bc00bdd64c7d8b40841e27a70211399ad3af46f5"
|
||||
integrity sha512-9VHgfIatKNXQNaZTtLnalIy0jNZzY35a4S3oi08YAt9Hv1VsfZ/DfA45lM8D/UhtHBGJ4/lGwp0PZkVndRkoOQ==
|
||||
"@testing-library/dom@^8.0.0":
|
||||
version "8.11.2"
|
||||
resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.11.2.tgz#fc110c665a066c2287be765e4a35ba8dad737015"
|
||||
integrity sha512-idsS/cqbYudXcVWngc1PuWNmXs416oBy2g/7Q8QAUREt5Z3MUkAL2XJD7xazLJ6esDfqRDi/ZBxk+OPPXitHRw==
|
||||
dependencies:
|
||||
"@babel/code-frame" "^7.10.4"
|
||||
"@babel/runtime" "^7.12.5"
|
||||
@@ -1498,10 +1498,10 @@
|
||||
lz-string "^1.4.4"
|
||||
pretty-format "^27.0.2"
|
||||
|
||||
"@testing-library/jest-dom@^5.16.4":
|
||||
version "5.16.4"
|
||||
resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.16.4.tgz#938302d7b8b483963a3ae821f1c0808f872245cd"
|
||||
integrity sha512-Gy+IoFutbMQcky0k+bqqumXZ1cTGswLsFqmNLzNdSKkU9KGV2u9oXhukCbbJ9/LRPKiqwxEE8VpV/+YZlfkPUA==
|
||||
"@testing-library/jest-dom@^5.16.1":
|
||||
version "5.16.1"
|
||||
resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.16.1.tgz#3db7df5ae97596264a7da9696fe14695ba02e51f"
|
||||
integrity sha512-ajUJdfDIuTCadB79ukO+0l8O+QwN0LiSxDaYUTI4LndbbUsGi6rWU1SCexXzBA2NSjlVB9/vbkasQIL3tmPBjw==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.9.2"
|
||||
"@types/testing-library__jest-dom" "^5.9.1"
|
||||
@@ -1513,19 +1513,20 @@
|
||||
lodash "^4.17.15"
|
||||
redent "^3.0.0"
|
||||
|
||||
"@testing-library/react@^13.3.0":
|
||||
version "13.3.0"
|
||||
resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-13.3.0.tgz#bf298bfbc5589326bbcc8052b211f3bb097a97c5"
|
||||
integrity sha512-DB79aA426+deFgGSjnf5grczDPiL4taK3hFaa+M5q7q20Kcve9eQottOG5kZ74KEr55v0tU2CQormSSDK87zYQ==
|
||||
"@testing-library/react@^12.1.2":
|
||||
version "12.1.2"
|
||||
resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-12.1.2.tgz#f1bc9a45943461fa2a598bb4597df1ae044cfc76"
|
||||
integrity sha512-ihQiEOklNyHIpo2Y8FREkyD1QAea054U0MVbwH1m8N9TxeFz+KoJ9LkqoKqJlzx2JDm56DVwaJ1r36JYxZM05g==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.12.5"
|
||||
"@testing-library/dom" "^8.5.0"
|
||||
"@types/react-dom" "^18.0.0"
|
||||
"@testing-library/dom" "^8.0.0"
|
||||
|
||||
"@testing-library/user-event@^14.2.0":
|
||||
version "14.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-14.2.0.tgz#8293560f8f80a00383d6c755ec3e0b918acb1683"
|
||||
integrity sha512-+hIlG4nJS6ivZrKnOP7OGsDu9Fxmryj9vCl8x0ZINtTJcCHs2zLsYif5GzuRiBF2ck5GZG2aQr7Msg+EHlnYVQ==
|
||||
"@testing-library/user-event@^13.5.0":
|
||||
version "13.5.0"
|
||||
resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-13.5.0.tgz#69d77007f1e124d55314a2b73fd204b333b13295"
|
||||
integrity sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.12.5"
|
||||
|
||||
"@tootallnate/once@1":
|
||||
version "1.1.2"
|
||||
@@ -1734,11 +1735,6 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.3.tgz#a3c65525b91fca7da00ab1a3ac2b5a2a4afbffbf"
|
||||
integrity sha512-QzSuZMBuG5u8HqYz01qtMdg/Jfctlnvj1z/lYnIDXs/golxw0fxtRAHd9KrzjR7Yxz1qVeI00o0kiO3PmVdJ9w==
|
||||
|
||||
"@types/prop-types@*":
|
||||
version "15.7.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf"
|
||||
integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
|
||||
|
||||
"@types/q@^1.5.1":
|
||||
version "1.5.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.5.tgz#75a2a8e7d8ab4b230414505d92335d1dcb53a6df"
|
||||
@@ -1754,22 +1750,6 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc"
|
||||
integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==
|
||||
|
||||
"@types/react-dom@^18.0.0":
|
||||
version "18.0.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.0.5.tgz#330b2d472c22f796e5531446939eacef8378444a"
|
||||
integrity sha512-OWPWTUrY/NIrjsAPkAk1wW9LZeIjSvkXRhclsFO8CZcZGCOg2G0YZy4ft+rOyYxy8B7ui5iZzi9OkDebZ7/QSA==
|
||||
dependencies:
|
||||
"@types/react" "*"
|
||||
|
||||
"@types/react@*":
|
||||
version "18.0.9"
|
||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.9.tgz#d6712a38bd6cd83469603e7359511126f122e878"
|
||||
integrity sha512-9bjbg1hJHUm4De19L1cHiW0Jvx3geel6Qczhjd0qY5VKVE2X5+x77YxAepuCwVh4vrgZJdgEJw48zrhRIeF4Nw==
|
||||
dependencies:
|
||||
"@types/prop-types" "*"
|
||||
"@types/scheduler" "*"
|
||||
csstype "^3.0.2"
|
||||
|
||||
"@types/resolve@1.17.1":
|
||||
version "1.17.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.17.1.tgz#3afd6ad8967c77e4376c598a82ddd58f46ec45d6"
|
||||
@@ -1782,11 +1762,6 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.1.tgz#d8f1c0d0dc23afad6dc16a9e993a0865774b4065"
|
||||
integrity sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==
|
||||
|
||||
"@types/scheduler@*":
|
||||
version "0.16.2"
|
||||
resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39"
|
||||
integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==
|
||||
|
||||
"@types/serve-index@^1.9.1":
|
||||
version "1.9.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/serve-index/-/serve-index-1.9.1.tgz#1b5e85370a192c01ec6cec4735cf2917337a6278"
|
||||
@@ -3200,11 +3175,6 @@ cssstyle@^2.3.0:
|
||||
dependencies:
|
||||
cssom "~0.3.6"
|
||||
|
||||
csstype@^3.0.2:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.0.tgz#4ddcac3718d787cf9df0d1b7d15033925c8f29f2"
|
||||
integrity sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA==
|
||||
|
||||
damerau-levenshtein@^1.0.7:
|
||||
version "1.0.8"
|
||||
resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7"
|
||||
@@ -3652,10 +3622,10 @@ escodegen@^2.0.0:
|
||||
optionalDependencies:
|
||||
source-map "~0.6.1"
|
||||
|
||||
eslint-config-react-app@^7.0.1:
|
||||
version "7.0.1"
|
||||
resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-7.0.1.tgz#73ba3929978001c5c86274c017ea57eb5fa644b4"
|
||||
integrity sha512-K6rNzvkIeHaTd8m/QEh1Zko0KI7BACWkkneSs6s9cKZC/J27X3eZR6Upt1jkmZ/4FK+XUOPPxMEN7+lbUXfSlA==
|
||||
eslint-config-react-app@^7.0.0:
|
||||
version "7.0.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-7.0.0.tgz#0fa96d5ec1dfb99c029b1554362ab3fa1c3757df"
|
||||
integrity sha512-xyymoxtIt1EOsSaGag+/jmcywRuieQoA2JbPCjnw9HukFj9/97aGPoZVFioaotzk1K5Qt9sHO5EutZbkrAXS0g==
|
||||
dependencies:
|
||||
"@babel/core" "^7.16.0"
|
||||
"@babel/eslint-parser" "^7.16.3"
|
||||
@@ -6871,10 +6841,10 @@ react-app-polyfill@^3.0.0:
|
||||
regenerator-runtime "^0.13.9"
|
||||
whatwg-fetch "^3.6.2"
|
||||
|
||||
react-dev-utils@^12.0.1:
|
||||
version "12.0.1"
|
||||
resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-12.0.1.tgz#ba92edb4a1f379bd46ccd6bcd4e7bc398df33e73"
|
||||
integrity sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==
|
||||
react-dev-utils@^12.0.0:
|
||||
version "12.0.0"
|
||||
resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-12.0.0.tgz#4eab12cdb95692a077616770b5988f0adf806526"
|
||||
integrity sha512-xBQkitdxozPxt1YZ9O1097EJiVpwHr9FoAuEVURCKV0Av8NBERovJauzP7bo1ThvuhZ4shsQ1AJiu4vQpoT1AQ==
|
||||
dependencies:
|
||||
"@babel/code-frame" "^7.16.0"
|
||||
address "^1.1.2"
|
||||
@@ -6895,24 +6865,25 @@ react-dev-utils@^12.0.1:
|
||||
open "^8.4.0"
|
||||
pkg-up "^3.1.0"
|
||||
prompts "^2.4.2"
|
||||
react-error-overlay "^6.0.11"
|
||||
react-error-overlay "^6.0.10"
|
||||
recursive-readdir "^2.2.2"
|
||||
shell-quote "^1.7.3"
|
||||
strip-ansi "^6.0.1"
|
||||
text-table "^0.2.0"
|
||||
|
||||
react-dom@^18.1.0:
|
||||
version "18.1.0"
|
||||
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.1.0.tgz#7f6dd84b706408adde05e1df575b3a024d7e8a2f"
|
||||
integrity sha512-fU1Txz7Budmvamp7bshe4Zi32d0ll7ect+ccxNu9FlObT605GOEB8BfO4tmRJ39R5Zj831VCpvQ05QPBW5yb+w==
|
||||
react-dom@^17.0.2:
|
||||
version "17.0.2"
|
||||
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23"
|
||||
integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
scheduler "^0.22.0"
|
||||
object-assign "^4.1.1"
|
||||
scheduler "^0.20.2"
|
||||
|
||||
react-error-overlay@^6.0.11:
|
||||
version "6.0.11"
|
||||
resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.11.tgz#92835de5841c5cf08ba00ddd2d677b6d17ff9adb"
|
||||
integrity sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==
|
||||
react-error-overlay@^6.0.10:
|
||||
version "6.0.10"
|
||||
resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.10.tgz#0fe26db4fa85d9dbb8624729580e90e7159a59a6"
|
||||
integrity sha512-mKR90fX7Pm5seCOfz8q9F+66VCc1PGsWSBxKbITjfKVQHMNF2zudxHnMdJiB1fRCb+XsbQV9sO9DCkgsMQgBIA==
|
||||
|
||||
react-is@^16.13.1:
|
||||
version "16.13.1"
|
||||
@@ -6929,10 +6900,10 @@ react-refresh@^0.11.0:
|
||||
resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046"
|
||||
integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==
|
||||
|
||||
react-scripts@5.0.1:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-5.0.1.tgz#6285dbd65a8ba6e49ca8d651ce30645a6d980003"
|
||||
integrity sha512-8VAmEm/ZAwQzJ+GOMLbBsTdDKOpuZh7RPs0UymvBR2vRk4iZWCskjbFnxqjrzoIvlNNRZ3QJFx6/qDSi6zSnaQ==
|
||||
react-scripts@5.0.0:
|
||||
version "5.0.0"
|
||||
resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-5.0.0.tgz#6547a6d7f8b64364ef95273767466cc577cb4b60"
|
||||
integrity sha512-3i0L2CyIlROz7mxETEdfif6Sfhh9Lfpzi10CtcGs1emDQStmZfWjJbAIMtRD0opVUjQuFWqHZyRZ9PPzKCFxWg==
|
||||
dependencies:
|
||||
"@babel/core" "^7.16.0"
|
||||
"@pmmmwh/react-refresh-webpack-plugin" "^0.5.3"
|
||||
@@ -6950,7 +6921,7 @@ react-scripts@5.0.1:
|
||||
dotenv "^10.0.0"
|
||||
dotenv-expand "^5.1.0"
|
||||
eslint "^8.3.0"
|
||||
eslint-config-react-app "^7.0.1"
|
||||
eslint-config-react-app "^7.0.0"
|
||||
eslint-webpack-plugin "^3.1.1"
|
||||
file-loader "^6.2.0"
|
||||
fs-extra "^10.0.0"
|
||||
@@ -6967,7 +6938,7 @@ react-scripts@5.0.1:
|
||||
postcss-preset-env "^7.0.1"
|
||||
prompts "^2.4.2"
|
||||
react-app-polyfill "^3.0.0"
|
||||
react-dev-utils "^12.0.1"
|
||||
react-dev-utils "^12.0.0"
|
||||
react-refresh "^0.11.0"
|
||||
resolve "^1.20.0"
|
||||
resolve-url-loader "^4.0.0"
|
||||
@@ -6984,12 +6955,13 @@ react-scripts@5.0.1:
|
||||
optionalDependencies:
|
||||
fsevents "^2.3.2"
|
||||
|
||||
react@^18.1.0:
|
||||
version "18.1.0"
|
||||
resolved "https://registry.yarnpkg.com/react/-/react-18.1.0.tgz#6f8620382decb17fdc5cc223a115e2adbf104890"
|
||||
integrity sha512-4oL8ivCz5ZEPyclFQXaNksK3adutVS8l2xzZU0cqEFrE9Sb7fC0EFK5uEk74wIreL1DERyjvsU915j1pcT2uEQ==
|
||||
react@^17.0.2:
|
||||
version "17.0.2"
|
||||
resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037"
|
||||
integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
object-assign "^4.1.1"
|
||||
|
||||
readable-stream@^2.0.1:
|
||||
version "2.3.7"
|
||||
@@ -7263,12 +7235,13 @@ saxes@^5.0.1:
|
||||
dependencies:
|
||||
xmlchars "^2.2.0"
|
||||
|
||||
scheduler@^0.22.0:
|
||||
version "0.22.0"
|
||||
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.22.0.tgz#83a5d63594edf074add9a7198b1bae76c3db01b8"
|
||||
integrity sha512-6QAm1BgQI88NPYymgGQLCZgvep4FyePDWFpXVK+zNSUgHwlqpJy8VEh8Et0KxTACS4VWwMousBElAZOH9nkkoQ==
|
||||
scheduler@^0.20.2:
|
||||
version "0.20.2"
|
||||
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91"
|
||||
integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
object-assign "^4.1.1"
|
||||
|
||||
schema-utils@2.7.0:
|
||||
version "2.7.0"
|
||||
@@ -8183,10 +8156,10 @@ wbuf@^1.1.0, wbuf@^1.7.3:
|
||||
dependencies:
|
||||
minimalistic-assert "^1.0.0"
|
||||
|
||||
web-vitals@^2.1.4:
|
||||
version "2.1.4"
|
||||
resolved "https://registry.yarnpkg.com/web-vitals/-/web-vitals-2.1.4.tgz#76563175a475a5e835264d373704f9dde718290c"
|
||||
integrity sha512-sVWcwhU5mX6crfI5Vd2dC4qchyTqxV8URinzt25XqVh+bHEPGH4C3NPrNionCP7Obx59wrYEbNlw4Z8sjALzZg==
|
||||
web-vitals@^2.1.3:
|
||||
version "2.1.3"
|
||||
resolved "https://registry.yarnpkg.com/web-vitals/-/web-vitals-2.1.3.tgz#6dca59f41dbc3fcccdb889da06191b437b18f534"
|
||||
integrity sha512-+ijpniAzcnQicXaXIN0/eHQAiV/jMt1oHGHTmz7VdAJPPkzzDhmoYPSpLgJTuFtUh+jCjxCoeTZPg7Ic+g8o7w==
|
||||
|
||||
webidl-conversions@^4.0.2:
|
||||
version "4.0.2"
|
||||
|
||||
@@ -6,7 +6,7 @@ This directory is a brief example of a [Dojo](https://dojo.io) site that can be
|
||||
|
||||
Deploy your own Dojo project with Vercel.
|
||||
|
||||
[](https://vercel.com/new/clone?repository-url=https://github.com/vercel/vercel/tree/main/examples/dojo&template=dojo)
|
||||
[](https://vercel.com/new/clone?repository-url=https://github.com/vercel/vercel/tree/main/dojo&template=dojo)
|
||||
|
||||
### How We Created This Example
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ cache:
|
||||
|
||||
env:
|
||||
global:
|
||||
# See https://github.com/ember-cli/ember-cli/blob/master/docs/build-concurrency.md
|
||||
# See https://git.io/vdao3 for details.
|
||||
- JOBS=1
|
||||
|
||||
script:
|
||||
|
||||
@@ -48,6 +48,6 @@
|
||||
"qunit-dom": "^0.8.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": "14.x"
|
||||
"node": "8.* || >= 10.*"
|
||||
}
|
||||
}
|
||||
|
||||
19
examples/hugo/.gitignore
vendored
@@ -1,2 +1,19 @@
|
||||
# Hugo
|
||||
/public
|
||||
.hugo_build.lock
|
||||
|
||||
## OS Files
|
||||
# Windows
|
||||
Thumbs.db
|
||||
ehthumbs.db
|
||||
Desktop.ini
|
||||
$RECYCLE.BIN/
|
||||
|
||||
# OSX
|
||||
.DS_Store
|
||||
|
||||
# Env Variables
|
||||
.env
|
||||
.env.build
|
||||
.env.build
|
||||
|
||||
.vercel
|
||||
@@ -1,4 +1,4 @@
|
||||
baseURL = "http://example.org/"
|
||||
languageCode = "en-us"
|
||||
title = "My New Hugo Site"
|
||||
baseURL = 'http://example.org/'
|
||||
languageCode = 'en-us'
|
||||
title = 'My New Hugo Site'
|
||||
theme = "ananke"
|
||||
|
||||
@@ -1,7 +1,46 @@
|
||||
---
|
||||
title: 'My First Post'
|
||||
date: 2019-07-18T17:18:05+01:00
|
||||
draft: false
|
||||
title: 'Deploying to Vercel'
|
||||
date: 2022-02-21T19:01:19-06:00
|
||||
draft: true
|
||||
---
|
||||
|
||||
# Hugo on Vercel
|
||||
This guide will show you how to deploy a Hugo site and get your domain set up.
|
||||
|
||||
[Hugo](https://gohugo.io/) is a very popular framework for creating static websites. It's fast and flexible. To build a Hugo site, start with a template:
|
||||
|
||||
- [Hugo](https://vercel.com/new/clone?s=https%3A%2F%2Fgithub.com%2Fvercel%2Fvercel%2Ftree%2Fmain%2Fexamples%2Fhugo&template=hugo&id=67753070&b=main&from=templates)
|
||||
|
||||
## Deploy Hugo to Vercel
|
||||
|
||||
Vercel is a platform for deploying the fastest Hugo sites. You can deploy your site with zero configuration to the best [frontend infrastructure](https://vercel.com/features/infrastructure).
|
||||
|
||||
- Develop: Build Hugo sites that connect to your favorite APIs, databases, and content management systems.
|
||||
- Preview: Integrate with any GitHub, GitLab, or Bitbucket repository for [instant continuous deployment](https://vercel.com/features/previews).
|
||||
- Ship: Deploy your site to every edge node worldwide for the fastest Hugo sites. Static files, Serverless and Edge Functions, and [more](https://vercel.com/features/infrastructure).
|
||||
|
||||
## Built-in CI/CD for Hugo sites
|
||||
|
||||
Vercel has integrations for [GitHub](https://vercel.com/docs/concepts/git/vercel-for-github), [GitLab](https://vercel.com/docs/concepts/git/vercel-for-gitlab), and [Bitbucket](https://vercel.com/docs/concepts/git/vercel-for-bitbucket) to enable CI/CD for your Hugo site with zero configuration. Then, you can run [automated tests for performance and reliability](https://vercel.com/docs/concepts/deployments/checks) on every push. Pull and merge requests are deployed instantly to a unique URL, accessible to your entire team.
|
||||
|
||||
## Add your custom domain
|
||||
|
||||
After deploying, your new Hugo site will get automatically assigned a `.vercel.app` suffixed domain. You can then add a [Custom Domain](https://vercel.com/docs/concepts/projects/custom-domains) on your choice, either from a third-party or [purchased through Vercel](https://vercel.com/domains).
|
||||
|
||||
## Deploy Hugo to Vercel
|
||||
|
||||
### Start from a template
|
||||
|
||||
- [Hugo](https://vercel.com/new/clone?s=https%3A%2F%2Fgithub.com%2Fvercel%2Fvercel%2Ftree%2Fmain%2Fexamples%2Fhugo&template=hugo&id=67753070&b=main&from=templates)
|
||||
|
||||
### Vercel CLI
|
||||
|
||||
1. Install the [Vercel CLI](https://vercel.com/cli) and run `vercel` to deploy.
|
||||
2. Vercel will detect that you are using Hugo and will enable the correct settings for your deployment.
|
||||
3. Your site is deployed! (e.g. [hugo-template.vercel.app](https://hugo-template.vercel.app/))
|
||||
|
||||
### Vercel for Git
|
||||
|
||||
1. Push your code to your git repository (GitHub, GitLab, BitBucket).
|
||||
2. [Import your Hugo project](https://vercel.com/new) into Vercel.
|
||||
3. Vercel will detect that you are using Hugo and will enable the correct settings for your deployment.
|
||||
4. Your site is deployed! (e.g. [hugo-template.vercel.app](https://hugo-template.vercel.app/))
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
{ "Target": "ananke/css/main.min.css", "MediaType": "text/css", "Data": {} }
|
||||
4
examples/hugo/themes/ananke/.gitignore
vendored
@@ -18,6 +18,7 @@ nbproject/
|
||||
.bin/node_modules/
|
||||
/node_modules/
|
||||
src/node_modules/
|
||||
exampleSite/node_modules/
|
||||
src/npm-debug.log.*
|
||||
npm-debug.log
|
||||
/npm-debug.log*
|
||||
@@ -29,4 +30,5 @@ npm-debug.log
|
||||
/junit.xml
|
||||
partials/structure/stylesheet.html
|
||||
|
||||
!dist
|
||||
# Hugo
|
||||
.hugo_build.lock
|
||||
|
||||
@@ -2,26 +2,168 @@
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [2.37] - 2018-12-26 (@budparr)
|
||||
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
||||
|
||||
- Improve Readme with path to example site #146
|
||||
- Update asset dependencies a99f95ef1f4c1f9b0a278e534ce6ace1b7441fd8
|
||||
- Improve social follow link accessibility #147
|
||||
## [v2.6.1](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/v2.6.0...v2.6.1) - 2020-06-25
|
||||
|
||||
## [2.35] - 2018-11-04 (@budparr)
|
||||
### Commits
|
||||
|
||||
- Add global background color class to footer (it's already on the header). Fixes #135
|
||||
- Updated minimum theme to .55 [`df4c78a`](https://github.com/theNewDynamic/gohugo-theme-ananke/commit/df4c78adb2ed004c3780f7a76254e9756dd024b5)
|
||||
|
||||
## [2.34] - 2018-11-03 (@budparr)
|
||||
## [v2.6.0](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/2.6.0...v2.6.0) - 2020-06-23
|
||||
|
||||
### Added
|
||||
### Merged
|
||||
|
||||
- Add a changelog.
|
||||
- Update spanish translations [`#304`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/304)
|
||||
- Add automatic cover image support [`#303`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/303)
|
||||
|
||||
### Changed
|
||||
## [2.6.0](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/v2.5.5...2.6.0) - 2020-06-17
|
||||
|
||||
- Run Ananke with Hugo v0.50
|
||||
- Remove default background image so users can choose to not use one at all. #133 (cdeguise)
|
||||
- Add reading time and word count to pages, conditionally if set at global, page, or section level with the `show_reading_time` key. (thanks to @looer for starting)
|
||||
### Merged
|
||||
|
||||
- Add translation for taxonomy page [`#299`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/299)
|
||||
- Site logo [`#284`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/284)
|
||||
- Add head partial [`#285`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/285)
|
||||
- Long urls or links extend beyond content and overlap sidebar [`#259`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/259)
|
||||
- Use relative URL for favicon [`#251`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/251)
|
||||
- Fix relURL for custom_css [`#252`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/252)
|
||||
- Fixed a typo in form-contact.html [`#266`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/266)
|
||||
- adding Bulgarian translation [`#267`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/267)
|
||||
- Use | relLangURL for the base url in the site-navigation [`#277`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/277)
|
||||
- RSS svg icon [`#282`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/282)
|
||||
- Updated Windows instructions in README.md [`#276`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/276)
|
||||
- Replace another 2 .URL occurrences with .Permalink [`#275`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/275)
|
||||
- Add alternative method for running prod to the readme [`#273`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/273)
|
||||
- Swap the page title and site title in page <title> elements [`#272`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/272)
|
||||
- Add the post_content_classes param for changing post content font [`#260`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/260)
|
||||
- Add sharing links for the posts [`#255`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/255)
|
||||
- Safari Reader View lacks content [`#254`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/254)
|
||||
- Add Keybase social icon [`#248`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/248)
|
||||
- Add StackOverflow social [`#243`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/243)
|
||||
- Fix to take care of multiple author list, or for setting the [`#221`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/221)
|
||||
- Fix Slack icon size [`#237`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/237)
|
||||
- Correct the original translation [`#241`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/241)
|
||||
|
||||
## [v2.5.6](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/v2.6.1...v2.5.6) - 2019-12-30
|
||||
|
||||
### Merged
|
||||
|
||||
- Use Hugo's built in Site Config for copyright according to PR #199 [`#240`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/240)
|
||||
- Add italian translation [`#239`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/239)
|
||||
|
||||
## [v2.5.5](https://github.com/theNewDynamic/gohugo-theme-ananke/compare/2.5.1...v2.5.5) - 2019-11-15
|
||||
|
||||
### Merged
|
||||
|
||||
- Remove stray grave accent [`#231`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/231)
|
||||
- Add Slack to social options [`#236`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/236)
|
||||
- Fix URL for menus [`#230`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/230)
|
||||
- Fix word count heading typo in README.md [`#222`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/222)
|
||||
- Add auto-changelog [`#228`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/228)
|
||||
- Fix stackbit issues [`#226`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/226)
|
||||
- Add Stackbit Configuration [`#223`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/223)
|
||||
- Replace {{ .URL }} with {{ .Permalink }} [`#216`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/216)
|
||||
- Adds an author to blog posts. [`#209`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/209)
|
||||
- Fixes #212. [`#213`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/213)
|
||||
- Add ukrainian translation [`#214`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/214)
|
||||
- Add swedish translation [`#208`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/208)
|
||||
- Deprecation messages fixes. [`#196`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/196)
|
||||
- Fix README instructions [`#204`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/204)
|
||||
- Use git submodules [`#183`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/183)
|
||||
- Remove Google News meta tags [`#197`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/197)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix URL for menus (#230) [`#229`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/229)
|
||||
- Add auto-changelog (#228) [`#227`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/227) [`#227`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/227)
|
||||
- Fix stackbit issues (#226) [`#224`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/224)
|
||||
- Add Stackbit Configuration (#223) [`#200`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/200)
|
||||
- Fixes #212. (#213) [`#212`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/212)
|
||||
- Deprecation messages fixes. (#196) [`#180`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/180)
|
||||
|
||||
## 2.5.1 - 2019-08-12
|
||||
|
||||
### Merged
|
||||
|
||||
- remove deprecated meta tags for old Windows Mobile and BlackBerry [`#191`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/191)
|
||||
- localization for form-contact shortcode [`#185`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/185)
|
||||
- Fix min_version [`#189`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/189)
|
||||
- Add portuguese translation [`#179`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/179)
|
||||
- Add commento [`#178`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/178)
|
||||
- feat: add RU translation [`#177`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/177)
|
||||
- Spanish Translation [`#175`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/175)
|
||||
- Dutch translations. [`#171`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/171)
|
||||
- Correcting issue with cached i18n menu [`#174`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/174)
|
||||
- Create zh.toml [`#170`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/170)
|
||||
- Fix TOC header [`#168`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/168)
|
||||
- Optimisation "partialCached" [`#165`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/165)
|
||||
- Add a link to "mastodon" [`#159`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/159)
|
||||
- Create fr.toml [`#157`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/157)
|
||||
- add i18n translation support [`#156`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/156)
|
||||
- Support hiding the featured image header text. [`#155`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/155)
|
||||
- enable localization/modification of "Recent" string [`#154`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/154)
|
||||
- add basic support for post translations [`#144`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/144)
|
||||
- Keep article padding throughout widths [`#152`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/152)
|
||||
- Improve semantic structure of pages [`#151`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/151)
|
||||
- Improve social link accessibility [`#147`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/147)
|
||||
- Add explicit path to image example [`#146`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/146)
|
||||
- Open social media links in new tab and add Medium icon [`#143`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/143)
|
||||
- Make cover dimming class customisable. [`#140`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/140)
|
||||
- Removed hardcoded theme sample hero image. This will allow the user to "blank" out the hero default set in the config. The if statement for blank was unreachable. [`#133`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/133)
|
||||
- Use relative url function for custom CSS files [`#132`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/132)
|
||||
- Add Gitlab to social icons [`#131`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/131)
|
||||
- Add div to wrap social icons [`#128`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/128)
|
||||
- Fix asset paths when baseURL has sub-folder [`#103`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/103)
|
||||
- Add inheritance for social links. [`#107`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/107)
|
||||
- Issue 98 [`#101`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/101)
|
||||
- Replace Asset References with a data file instead of paths [`#96`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/96)
|
||||
- Pre-2.0 Enhancements [`#94`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/94)
|
||||
- Don't duplicate site title in home page TITLE tag [`#78`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/78)
|
||||
- Fix pagination [`#76`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/76)
|
||||
- #68|Parmeterize number of recent posts in index.html [`#69`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/69)
|
||||
- Fix typo in single.html [`#67`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/67)
|
||||
- Fixed line breaks in code (resolves budparr/gohugo-theme-ananke#56). [`#57`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/57)
|
||||
- Favicons [`#54`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/54)
|
||||
- indent fix [`#45`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/45)
|
||||
- Social icon updates [`#51`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/51)
|
||||
- Add GitHub social icon [`#48`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/48)
|
||||
- Make Hero image work out-of-the box [`#40`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/40)
|
||||
- Removed excess o in Facebook [`#34`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/34)
|
||||
- Fixes #31 [`#32`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/32)
|
||||
- Bp/fix now function Fixes #29 [`#30`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/30)
|
||||
- fix clunky construction on home page to get section name [`#25`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/25)
|
||||
- fix clunky construction on home page to get section name [`#24`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/24)
|
||||
- fix clunky construction on home page to get section name [`#17`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/17)
|
||||
- tweak hero default behavior [`#16`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/16)
|
||||
- improve terms template [`#15`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/15)
|
||||
- improve image handling for edge cases Fixes #11 [`#14`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/14)
|
||||
- Improve featured image handling Ref #11 + minor homepage impvs [`#12`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/12)
|
||||
- Dev changes [`#10`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/10)
|
||||
- pull in dev changes [`#9`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/9)
|
||||
- keeping things in order [`#8`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/8)
|
||||
- Improve home page posts [`#7`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/7)
|
||||
- make form email comment make more sense. Ref #5 [`#6`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/6)
|
||||
- use a cleaner way to include language code [`#3`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/3)
|
||||
- update from DEV [`#2`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/2)
|
||||
- add taxonomy templates [`#1`](https://github.com/theNewDynamic/gohugo-theme-ananke/pull/1)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Add blockquote styling [`#169`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/169)
|
||||
- Keep article padding throughout widths (#152) [`#130`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/130)
|
||||
- Update readme for formspree change [`#150`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/150)
|
||||
- Improve semantic structure of pages (#151) [`#149`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/149)
|
||||
- Add global background color class to footer [`#135`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/135)
|
||||
- Add div to wrap social icons (#128) [`#127`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/127)
|
||||
- Fix article padding on mobile [`#115`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/115)
|
||||
- Make asset paths absolute [`#97`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/97)
|
||||
- Fix linkedin icon to match the other social icons [`#70`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/70)
|
||||
- Be smarter about linking to posts on home page. [`#50`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/50)
|
||||
- Add body_classes parameter to body [`#43`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/43)
|
||||
- Fixes #31 (#32) [`#31`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/31)
|
||||
- Bp/fix now function Fixes #29 (#30) [`#29`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/29)
|
||||
- Merge pull request #14 from budparr/dev [`#11`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/11)
|
||||
- improve image handling for edge cases Fixes #11 [`#11`](https://github.com/theNewDynamic/gohugo-theme-ananke/issues/11)
|
||||
|
||||
@@ -15,6 +15,7 @@ Features
|
||||
- Internal templates for meta data, google analytics, and DISQUS or COMMENTO comments
|
||||
- RSS Discovery
|
||||
- Table of Contents (must declare `toc: true` in post parameter)
|
||||
- Stackbit configuration ([Stackbit](https://www.stackbit.com))
|
||||
|
||||
Also includes examples of Hugo Features or Functions:
|
||||
|
||||
@@ -45,10 +46,35 @@ This theme uses the "Tachyons" CSS library. This will allow you to manipulate th
|
||||
|
||||
## Installation
|
||||
|
||||
### As a Hugo Module (recommended)
|
||||
|
||||
> ⚠️ If you installed a [Hugo binary](https://gohugo.io/getting-started/installing/#binary-cross-platform), you may not have Go installed on your machine. To check if Go is installed:
|
||||
>
|
||||
> ```
|
||||
> $ go version
|
||||
> ```
|
||||
>
|
||||
> Go modules were considered production ready in v1.14. [Download Go](https://golang.org/dl/).
|
||||
|
||||
1. From your project's root directory, initiate the hugo module system if you haven't already:
|
||||
|
||||
```
|
||||
$ hugo mod init github.com/<your_user>/<your_project>
|
||||
```
|
||||
|
||||
2. Add the theme's repo to your `config.toml`:
|
||||
|
||||
```toml
|
||||
theme = ["github.com/theNewDynamic/gohugo-theme-ananke"]
|
||||
```
|
||||
|
||||
### As Git Submodule
|
||||
|
||||
Inside the folder of your Hugo site run:
|
||||
|
||||
$ cd themes
|
||||
$ git clone https://github.com/budparr/gohugo-theme-ananke.git
|
||||
```
|
||||
$ git submodule add https://github.com/theNewDynamic/gohugo-theme-ananke.git themes/ananke
|
||||
```
|
||||
|
||||
For more information read the official [setup guide](//gohugo.io/overview/installing/) of Hugo.
|
||||
|
||||
@@ -58,7 +84,7 @@ After installing the theme successfully it requires a just a few more steps to g
|
||||
|
||||
### The config file
|
||||
|
||||
Take a look inside the [`exampleSite`](https://github.com/budparr/gohugo-theme-ananke/tree/master/exampleSite) folder of this theme. You'll find a file called [`config.toml`](https://github.com/budparr/gohugo-theme-ananke/blob/master/exampleSite/config.toml). To use it, copy the [`config.toml`](https://github.com/budparr/gohugo-theme-ananke/blob/master/exampleSite/config.toml) in the root folder of your Hugo site. Feel free to change the strings in this theme.
|
||||
Take a look inside the [`exampleSite`](https://github.com/theNewDynamic/gohugo-theme-ananke/tree/master/exampleSite) folder of this theme. You'll find a file called [`config.toml`](https://github.com/theNewDynamic/gohugo-theme-ananke/blob/master/exampleSite/config.toml). To use it, copy the [`config.toml`](https://github.com/theNewDynamic/gohugo-theme-ananke/blob/master/exampleSite/config.toml) in the root folder of your Hugo site. Feel free to change the strings in this theme.
|
||||
|
||||
You may need to delete the line: `themesDir = "../.."`
|
||||
|
||||
@@ -70,13 +96,19 @@ To enable comments, add following to your config file:
|
||||
- COMMENTO:
|
||||
```
|
||||
[params]
|
||||
commentoEnable = true`
|
||||
commentoEnable = true
|
||||
```
|
||||
|
||||
### Change the hero background
|
||||
|
||||
For any page or post you can add a featured image by including the local path in front matter (see content in the `exampleSite/content/_readme.md` file for examples): `featured_image: '/images/gohugo-default-sample-hero-image.jpg'`
|
||||
|
||||
#### Featured image as Page Resources
|
||||
|
||||
If user is using [Page Resources](https://gohugo.io/content-management/page-resources/), the theme will try and match the `featured_image` from with a page resource of type `image` and use its relative permalink. If no `featured_image` is set, the theme will look for a Page Resource of type `image` whose filepath incudes either `cover` or `feature`
|
||||
|
||||
#### Other hero settings
|
||||
|
||||
If you would like to hide the header text on the featured image on a page, set `omit_header_text` to `true`. See `exampleSite/content/contact.md` for an example.
|
||||
|
||||
You don't need an image though. The default background color is black, but you can change the color, by changing the default color class in the config.toml file. Choose a background color from any on the [Tachyons](http://tachyons.io/docs/themes/skins/) library site, and preface it with "bg-"
|
||||
@@ -91,6 +123,73 @@ This theme includes a shortcode for a contact form that you can add to any page
|
||||
{{< form-contact action="https://formspree.io/your@email.com" >}}
|
||||
```
|
||||
|
||||
### Social Follow + Share
|
||||
|
||||
The theme automatically adds "Follow" link icons to the header and footer and "Share" link icons to pages unless `disable_share` parameter is set to true either on the site level (site params) or page level (front matter). Each built-in services sports a label, an icon and a color.
|
||||
|
||||
In order to register a service to be used, user must add an `ananke_socials` parameter to its project configuration file and list them through it in the desired order. Each entry must bear a
|
||||
|
||||
- name\*: It matches the built-in service reference (Ex: twitter, github)
|
||||
- url\*: The url of the handle's profile on the service (Ex: https://twitter.com/theNewDynamic, https://github.com/
|
||||
theNewDynamic)
|
||||
|
||||
```yaml
|
||||
params:
|
||||
ananke_socials:
|
||||
- name: twitter
|
||||
url: https://twitter.com/theNewDynamic
|
||||
- name: github
|
||||
url: https://github.com/theNewDynamic
|
||||
```
|
||||
|
||||
If user needs to overwrite default `color` and `label` of the service, they simply need to append the following to the entry:
|
||||
|
||||
- label: The displayed name of the service to be used to popuplate `[title]` attributes and read-only. (Ex: Twitter, GitHub)
|
||||
- color: Used for styling purposes. (Ex: '#1da1f2', '#6cc644')
|
||||
|
||||
```yaml
|
||||
params:
|
||||
ananke_socials:
|
||||
- name: twitter
|
||||
url: https://twitter.com/theNewDynamic
|
||||
label: TND Twitter
|
||||
- name: github
|
||||
url: https://github.com/theNewDynamic
|
||||
label: TND GitHub Account
|
||||
color: '#ff6800'
|
||||
```
|
||||
|
||||
#### Social Icons Customization
|
||||
|
||||
On top of easily customizing the built-in services' label and color, user can overwrite their icon by adding an svg file at `/assets/ananke/socials` with a filename matching the service's name.
|
||||
For example, in order to use your own GitHub icon, simply add an svg file at `/assets/ananke/socials/github.svg`
|
||||
|
||||
#### Built-in Services
|
||||
|
||||
Here is the list of built-in services. Those marked with an `*` are also part of the "Share" module.
|
||||
|
||||
- twitter\*
|
||||
- instagram
|
||||
- youtube
|
||||
- github
|
||||
- gitlab
|
||||
- keybase
|
||||
- linkedin\*
|
||||
- medium
|
||||
- mastodon
|
||||
- slack
|
||||
- stackoverflow
|
||||
- facebook\*
|
||||
- rss
|
||||
|
||||
#### Complement
|
||||
|
||||
In order to add an unkown service (absent from the list above), you simply need to add all three settings to `ananke_socials`: name, url, label, color, and optionally add an icon file matching the `name` to the `assets/ananke/socials` directory. In the absence of an icon, the theme will print the service's label.
|
||||
|
||||
### Content indexing
|
||||
|
||||
If the theme is ran in [production](#production), pages will be indexed by search engines. To prevent indexing on some given pages, add `private: true` to its Front Matter.
|
||||
|
||||
### Update font or body classes
|
||||
|
||||
The theme is set, by default, to use a near-white background color and the "Avenir" or serif typeface. You can change these in your config file with the `body_classes` parameter, like this:
|
||||
@@ -106,27 +205,85 @@ which will give you a body class like this:
|
||||
<body class="avenir bg-near-white">
|
||||
```
|
||||
|
||||
note: The `body_classes` parameter will not change the font used in post content. To do this, you must use the `post_content_classes` parameter.
|
||||
|
||||
You can find a list of available typefaces [here](https://github.com/tachyons-css/tachyons/blob/v4.7.0/src/_font-family.css).
|
||||
|
||||
And a list of background colors [here](https://github.com/tachyons-css/tachyons/blob/v4.7.0/src/_skins.css#L96).
|
||||
|
||||
_n.b. in future versions we will likely separate the typeface and other body classes._
|
||||
|
||||
### Custom CSS
|
||||
### CSS
|
||||
|
||||
You can override the built-in css by using your own. Just put your own css files in the `static` directory of your website (the one in the theme directory also works but is not recommended) and modify the `custom_css` parameter in your config file. The path referenced in the parameter should be relative to the `static` folder. These css files will be added through the `header` partial after the built-in css file.
|
||||
Ananke stylesheet is built with Hugo Pipes's [Asset Bundling](https://gohugo.io/hugo-pipes/bundling/#readout) alone to maximize compatibiliy. The theme simply bundles its several files into one minified and fingerprinted (in production) CSS file.
|
||||
|
||||
For example, if your css files are `static/css/custom.css` and `static/css/custom2.css` then add the following to the config file:
|
||||
Ananke uses [Tachyon.io](http://tachyons.io/) utility class library.
|
||||
|
||||
#### Custom CSS
|
||||
|
||||
WARNING: Pending resolution of this [discussion](https://github.com/theNewDynamic/gohugo-theme-ananke/discussions/452#discussioncomment-1865301), Custom CSS only works with Hugo Extended
|
||||
|
||||
In order to complement the default CSS with your own, you can add custom css files to the project.
|
||||
|
||||
1. Just add a `assets/ananke/css` directory to your project and add the file(s) in it.
|
||||
2. Register the files using the `custom_css` key in your site's parameter. The path referenced in the parameter should be relative to the `assets/ananke/css` folder.
|
||||
|
||||
The css files will be added in their registered order to final `main.css` file.
|
||||
|
||||
For example, if your css files are `assets/ananke/css/custom.css` and `assets/ananke/special.css` then add the following to the config file:
|
||||
|
||||
```
|
||||
[params]
|
||||
custom_css = ["css/custom.css","css/custom2.css"]
|
||||
[params]
|
||||
custom_css = ["custom.css","special.css"]
|
||||
```
|
||||
|
||||
### Show Reading Time and Word Contributing
|
||||
**Note on retrocompatibiliy for custom css**: If the files registered through the `custom_css` setting are not found in `assets/ananke/css` the theme will expect them to live at the given path relative to the static directory and load them as <link> requests.
|
||||
|
||||
### Show Reading Time and Word Count
|
||||
|
||||
If you add a key of `show_reading_time` true to either the Config Params, a page or section's front matter, articles will show the reading time and word count.
|
||||
|
||||
### Adding Scripts to the Page Head
|
||||
|
||||
Some scripts need to be added within the page head. To add your own scripts to the page head, simply insert them into the `head-additions.html` partial located in the `layouts/partials` folder.
|
||||
|
||||
### Logo
|
||||
|
||||
You can replace the title of your site in the top left corner of each page with your own logo. To do that put your own logo into the `static` directory of your website, and add the `site_logo` parameter to the site params in your config file. For example:
|
||||
|
||||
```
|
||||
[params]
|
||||
site_logo = "img/logo.svg"
|
||||
```
|
||||
|
||||
### Set Content Font Color
|
||||
|
||||
You can set the font color of the main content both globally and on individual pages:
|
||||
|
||||
Globally:
|
||||
Set the `text_color` param in the `config.toml` file.
|
||||
|
||||
```
|
||||
[params]
|
||||
text_color = "green"
|
||||
```
|
||||
|
||||
Individual Page (prioritized over global):
|
||||
Set the `text_color` param in a page's markdown file front matter.
|
||||
|
||||
note: The value of `text_color` must be a valid tachyons color class. Alist can be found [here](http://tachyons.io/docs/themes/skins/).
|
||||
|
||||
### Localize date format
|
||||
|
||||
Dates of blog posts and single pages are rendered with the default date format commonly used in the USA and Canada. It is possible to specify a different format.
|
||||
|
||||
```
|
||||
[params]
|
||||
date_format = "2. January 2006"
|
||||
```
|
||||
|
||||
See hugo's documentation of the [`dateFormat` function](https://gohugo.io/functions/dateformat/) for more details.
|
||||
|
||||
### Nearly finished
|
||||
|
||||
In order to see your site in action, run Hugo's built-in local server.
|
||||
@@ -143,10 +300,17 @@ To run in production (e.g. to have Google Analytics show up), run `HUGO_ENV=prod
|
||||
HUGO_ENV=production hugo
|
||||
```
|
||||
|
||||
Note: The above command will not work on Windows. If you are running a Windows OS, use the below command:
|
||||
|
||||
```
|
||||
set HUGO_ENV=production
|
||||
hugo
|
||||
```
|
||||
|
||||
## Contributing
|
||||
|
||||
If you find a bug or have an idea for a feature, feel free to use the [issue tracker](https://github.com/budparr/gohugo-theme-ananke/issues) to let me know.
|
||||
If you find a bug or have an idea for a feature, feel free to use the [issue tracker](https://github.com/theNewDynamic/gohugo-theme-ananke/issues) to let me know.
|
||||
|
||||
TODO:
|
||||
|
||||
- fix hard-coded link to [section](https://github.com/budparr/gohugo-theme-ananke/blob/master/layouts/index.html#L32)
|
||||
- fix hard-coded link to [section](https://github.com/theNewDynamic/gohugo-theme-ananke/blob/master/layouts/index.html#L32)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
+++
|
||||
title = "{{ replace .TranslationBaseName "-" " " | title }}"
|
||||
date = {{ .Date }}
|
||||
tags = []
|
||||
featured_image = ""
|
||||
description = ""
|
||||
+++
|
||||
---
|
||||
title: "{{ replace .File.ContentBaseName "-" " " | title }}"
|
||||
date: {{ .Date }}
|
||||
tags: []
|
||||
featured_image: ""
|
||||
description: ""
|
||||
---
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
.ananke-socials a{
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
color: #BABABA;
|
||||
fill: currentColor;
|
||||
}
|
||||
.ananke-socials a .icon svg{
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
.ananke-socials a:hover {
|
||||
color: rgb(107, 114, 128);
|
||||
}
|
||||
.new-window {
|
||||
opacity: 0;
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
}
|
||||
.link-transition:hover .new-window{
|
||||
opacity: 1;
|
||||
}
|
||||
@@ -13,4 +13,8 @@
|
||||
border-left: 4px solid #ccc;
|
||||
padding-left: 1rem;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.nested-links a{
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
28
examples/hugo/themes/ananke/assets/ananke/css/_tachyons.css
Normal file
@@ -0,0 +1 @@
|
||||
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M28.765,50.32h6.744V33.998h4.499l0.596-5.624h-5.095 l0.007-2.816c0-1.466,0.14-2.253,2.244-2.253h2.812V17.68h-4.5c-5.405,0-7.307,2.729-7.307,7.317v3.377h-3.369v5.625h3.369V50.32z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>
|
||||
|
After Width: | Height: | Size: 502 B |
@@ -1,3 +1,3 @@
|
||||
<svg {{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
|
||||
<svg style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
|
||||
<path d="M256,32C132.3,32,32,134.8,32,261.7c0,101.5,64.2,187.5,153.2,217.9c11.2,2.1,15.3-5,15.3-11.1 c0-5.5-0.2-19.9-0.3-39.1c-62.3,13.9-75.5-30.8-75.5-30.8c-10.2-26.5-24.9-33.6-24.9-33.6c-20.3-14.3,1.5-14,1.5-14 c22.5,1.6,34.3,23.7,34.3,23.7c20,35.1,52.4,25,65.2,19.1c2-14.8,7.8-25,14.2-30.7c-49.7-5.8-102-25.5-102-113.5 c0-25.1,8.7-45.6,23-61.6c-2.3-5.8-10-29.2,2.2-60.8c0,0,18.8-6.2,61.6,23.5c17.9-5.1,37-7.6,56.1-7.7c19,0.1,38.2,2.6,56.1,7.7 c42.8-29.7,61.5-23.5,61.5-23.5c12.2,31.6,4.5,55,2.2,60.8c14.3,16.1,23,36.6,23,61.6c0,88.2-52.4,107.6-102.3,113.3 c8,7.1,15.2,21.1,15.2,42.5c0,30.7-0.3,55.5-0.3,63c0,6.1,4,13.3,15.4,11C415.9,449.1,480,363.1,480,261.7 C480,134.8,379.7,32,256,32z"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 963 B After Width: | Height: | Size: 900 B |
@@ -0,0 +1 @@
|
||||
<svg style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><path d="M29.782 199.732L256 493.714 8.074 309.699c-6.856-5.142-9.712-13.996-7.141-21.993l28.849-87.974zm75.405-174.806c-3.142-8.854-15.709-8.854-18.851 0L29.782 199.732h131.961L105.187 24.926zm56.556 174.806L256 493.714l94.257-293.982H161.743zm349.324 87.974l-28.849-87.974L256 493.714l247.926-184.015c6.855-5.142 9.711-13.996 7.141-21.993zm-85.404-262.78c-3.142-8.854-15.709-8.854-18.851 0l-56.555 174.806h131.961L425.663 24.926z"></path></svg>
|
||||
|
After Width: | Height: | Size: 588 B |
@@ -0,0 +1 @@
|
||||
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M42.271,26.578v-0.006c0.502,0,1.005,0.01,1.508-0.002 c0.646-0.017,1.172-0.57,1.172-1.217c0-0.963,0-1.927,0-2.89c0-0.691-0.547-1.24-1.236-1.241c-0.961,0-1.922-0.001-2.883,0 c-0.688,0.001-1.236,0.552-1.236,1.243c-0.001,0.955-0.004,1.91,0.003,2.865c0.001,0.143,0.028,0.291,0.073,0.426 c0.173,0.508,0.639,0.82,1.209,0.823C41.344,26.579,41.808,26.578,42.271,26.578z M33,27.817c-3.384-0.002-6.135,2.721-6.182,6.089 c-0.049,3.46,2.72,6.201,6.04,6.272c3.454,0.074,6.248-2.686,6.321-6.043C39.254,30.675,36.462,27.815,33,27.817z M21.046,31.116 v0.082c0,4.515-0.001,9.03,0,13.545c0,0.649,0.562,1.208,1.212,1.208c7.16,0.001,14.319,0.001,21.479,0 c0.656,0,1.215-0.557,1.215-1.212c0.001-4.509,0-9.02,0-13.528v-0.094h-2.912c0.411,1.313,0.537,2.651,0.376,4.014 c-0.161,1.363-0.601,2.631-1.316,3.803s-1.644,2.145-2.779,2.918c-2.944,2.006-6.821,2.182-9.946,0.428 c-1.579-0.885-2.819-2.12-3.685-3.713c-1.289-2.373-1.495-4.865-0.739-7.451C22.983,31.116,22.021,31.116,21.046,31.116z M45.205,49.255c0.159-0.026,0.318-0.049,0.475-0.083c1.246-0.265,2.264-1.304,2.508-2.557c0.025-0.137,0.045-0.273,0.067-0.409 V21.794c-0.021-0.133-0.04-0.268-0.065-0.401c-0.268-1.367-1.396-2.428-2.78-2.618c-0.058-0.007-0.113-0.02-0.17-0.03H20.761 c-0.147,0.027-0.296,0.047-0.441,0.08c-1.352,0.308-2.352,1.396-2.545,2.766c-0.008,0.057-0.02,0.114-0.029,0.171V46.24 c0.028,0.154,0.05,0.311,0.085,0.465c0.299,1.322,1.427,2.347,2.77,2.52c0.064,0.008,0.13,0.021,0.195,0.03H45.205z M33,64 C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 5.2 KiB |
@@ -1,3 +1,3 @@
|
||||
<svg {{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 65 65;" version="1.1" viewBox="0 0 65 65" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<path d="M50.837,48.137V36.425c0-6.275-3.35-9.195-7.816-9.195 c-3.604,0-5.219,1.983-6.119,3.374V27.71h-6.79c0.09,1.917,0,20.427,0,20.427h6.79V36.729c0-0.609,0.044-1.219,0.224-1.655 c0.49-1.22,1.607-2.483,3.482-2.483c2.458,0,3.44,1.873,3.44,4.618v10.929H50.837z M22.959,24.922c2.367,0,3.842-1.57,3.842-3.531 c-0.044-2.003-1.475-3.528-3.797-3.528s-3.841,1.524-3.841,3.528c0,1.961,1.474,3.531,3.753,3.531H22.959z M34,64 C17.432,64,4,50.568,4,34C4,17.431,17.432,4,34,4s30,13.431,30,30C64,50.568,50.568,64,34,64z M26.354,48.137V27.71h-6.789v20.427 H26.354z" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/>
|
||||
<svg style="enable-background:new 0 0 65 65;" version="1.1" viewBox="0 0 65 65" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<path d="M50.837,48.137V36.425c0-6.275-3.35-9.195-7.816-9.195 c-3.604,0-5.219,1.983-6.119,3.374V27.71h-6.79c0.09,1.917,0,20.427,0,20.427h6.79V36.729c0-0.609,0.044-1.219,0.224-1.655 c0.49-1.22,1.607-2.483,3.482-2.483c2.458,0,3.44,1.873,3.44,4.618v10.929H50.837z M22.959,24.922c2.367,0,3.842-1.57,3.842-3.531 c-0.044-2.003-1.475-3.528-3.797-3.528s-3.841,1.524-3.841,3.528c0,1.961,1.474,3.531,3.753,3.531H22.959z M34,64 C17.432,64,4,50.568,4,34C4,17.431,17.432,4,34,4s30,13.431,30,30C64,50.568,50.568,64,34,64z M26.354,48.137V27.71h-6.789v20.427 H26.354z" style="fill-rule:evenodd;clip-rule:evenodd;"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 878 B After Width: | Height: | Size: 798 B |
@@ -1,4 +1,4 @@
|
||||
<svg{{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 230 230;" version="1.1" viewBox="0 0 230 230" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<path d="M211.80683 139.0875c-3.1825 16.36625-28.4925 34.2775-57.5625 37.74875-15.16 1.80875-30.0825 3.47125-45.99875 2.74125-26.0275-1.1925-46.565-6.2125-46.565-6.2125 0 2.53375.15625 4.94625.46875 7.2025 3.38375 25.68625 25.47 27.225 46.3925 27.9425 21.115.7225 39.91625-5.20625 39.91625-5.20625l.86875 19.09s-14.77 7.93125-41.08125 9.39c-14.50875.7975-32.52375-.365-53.50625-5.91875C9.23183 213.82 1.40558 165.31125.20808 116.09125c-.36375-14.61375-.14-28.39375-.14-39.91875 0-50.33 32.97625-65.0825 32.97625-65.0825C49.67058 3.45375 78.20308.2425 107.86433 0h.72875c29.66125.2425 58.21125 3.45375 74.8375 11.09 0 0 32.97625 14.7525 32.97625 65.0825 0 0 .4125 37.13375-4.6 62.915" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/>
|
||||
<svg style="enable-background:new 0 0 230 230;" version="1.1" viewBox="0 0 230 230" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<path d="M211.80683 139.0875c-3.1825 16.36625-28.4925 34.2775-57.5625 37.74875-15.16 1.80875-30.0825 3.47125-45.99875 2.74125-26.0275-1.1925-46.565-6.2125-46.565-6.2125 0 2.53375.15625 4.94625.46875 7.2025 3.38375 25.68625 25.47 27.225 46.3925 27.9425 21.115.7225 39.91625-5.20625 39.91625-5.20625l.86875 19.09s-14.77 7.93125-41.08125 9.39c-14.50875.7975-32.52375-.365-53.50625-5.91875C9.23183 213.82 1.40558 165.31125.20808 116.09125c-.36375-14.61375-.14-28.39375-.14-39.91875 0-50.33 32.97625-65.0825 32.97625-65.0825C49.67058 3.45375 78.20308.2425 107.86433 0h.72875c29.66125.2425 58.21125 3.45375 74.8375 11.09 0 0 32.97625 14.7525 32.97625 65.0825 0 0 .4125 37.13375-4.6 62.915" style="fill-rule:evenodd;clip-rule:evenodd;"/>
|
||||
<path d="M65.68743 96.45938c0 9.01375-7.3075 16.32125-16.3225 16.32125-9.01375 0-16.32-7.3075-16.32-16.32125 0-9.01375 7.30625-16.3225 16.32-16.3225 9.015 0 16.3225 7.30875 16.3225 16.3225M124.52893 96.45938c0 9.01375-7.30875 16.32125-16.3225 16.32125-9.01375 0-16.32125-7.3075-16.32125-16.32125 0-9.01375 7.3075-16.3225 16.32125-16.3225 9.01375 0 16.3225 7.30875 16.3225 16.3225M183.36933 96.45938c0 9.01375-7.3075 16.32125-16.32125 16.32125-9.01375 0-16.32125-7.3075-16.32125-16.32125 0-9.01375 7.3075-16.3225 16.32125-16.3225 9.01375 0 16.32125 7.30875 16.32125 16.3225" fill="#fff"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,3 +1,3 @@
|
||||
<svg {{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 170 170;" version="1.1" viewBox="0 0 170 170" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
|
||||
<path d="M46.5340803,65.2157554 C46.6968378,63.6076572 46.0836,62.018231 44.8828198,60.93592 L32.6512605,46.2010582 L32.6512605,44 L70.6302521,44 L99.9859944,108.380952 L125.794585,44 L162,44 L162,46.2010582 L151.542017,56.2281011 C150.640424,56.9153477 150.193188,58.0448862 150.380019,59.1628454 L150.380019,132.837155 C150.193188,133.955114 150.640424,135.084652 151.542017,135.771899 L161.755369,145.798942 L161.755369,148 L110.38282,148 L110.38282,145.798942 L120.963119,135.527337 C122.002801,134.487948 122.002801,134.182246 122.002801,132.592593 L122.002801,73.0417402 L92.585901,147.755438 L88.6106443,147.755438 L54.3622782,73.0417402 L54.3622782,123.115814 C54.0767278,125.221069 54.7759199,127.3406 56.2581699,128.863022 L70.0186741,145.55438 L70.0186741,147.755438 L31,147.755438 L31,145.55438 L44.7605042,128.863022 C46.2319621,127.338076 46.8903838,125.204485 46.5340803,123.115814 L46.5340803,65.2157554 Z" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/>
|
||||
<svg style="enable-background:new 0 0 170 170;" version="1.1" viewBox="0 0 170 170" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
|
||||
<path d="M46.5340803,65.2157554 C46.6968378,63.6076572 46.0836,62.018231 44.8828198,60.93592 L32.6512605,46.2010582 L32.6512605,44 L70.6302521,44 L99.9859944,108.380952 L125.794585,44 L162,44 L162,46.2010582 L151.542017,56.2281011 C150.640424,56.9153477 150.193188,58.0448862 150.380019,59.1628454 L150.380019,132.837155 C150.193188,133.955114 150.640424,135.084652 151.542017,135.771899 L161.755369,145.798942 L161.755369,148 L110.38282,148 L110.38282,145.798942 L120.963119,135.527337 C122.002801,134.487948 122.002801,134.182246 122.002801,132.592593 L122.002801,73.0417402 L92.585901,147.755438 L88.6106443,147.755438 L54.3622782,73.0417402 L54.3622782,123.115814 C54.0767278,125.221069 54.7759199,127.3406 56.2581699,128.863022 L70.0186741,145.55438 L70.0186741,147.755438 L31,147.755438 L31,145.55438 L44.7605042,128.863022 C46.2319621,127.338076 46.8903838,125.204485 46.5340803,123.115814 L46.5340803,65.2157554 Z" style="fill-rule:evenodd;clip-rule:evenodd;"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.1 KiB |
@@ -0,0 +1,5 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
|
||||
<circle cx="6.18" cy="17.82" r="2.18"/>
|
||||
<path id="scale" d="M4 4.44v2.83c7.03 0 12.73 5.7 12.73 12.73h2.83c0-8.59-6.97-15.56-15.56-15.56zm0 5.66v2.83c3.9 0 7.07 3.17 7.07 7.07h2.83c0-5.47-4.43-9.9-9.9-9.9z"/>
|
||||
</svg>
|
||||
|
||||
|
After Width: | Height: | Size: 286 B |
27
examples/hugo/themes/ananke/assets/ananke/socials/slack.svg
Normal file
@@ -0,0 +1,27 @@
|
||||
<svg style="enable-background:new 65 65 150 135;" version="1.1" viewBox="65 65 150 135" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
|
||||
<style type="text/css">
|
||||
.st0{fill:#BABABA;}
|
||||
</style>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st0" d="M99.4,151.2c0,7.1-5.8,12.9-12.9,12.9s-12.9-5.8-12.9-12.9c0-7.1,5.8-12.9,12.9-12.9h12.9V151.2z"/>
|
||||
<path class="st0" d="M105.9,151.2c0-7.1,5.8-12.9,12.9-12.9s12.9,5.8,12.9,12.9v32.3c0,7.1-5.8,12.9-12.9,12.9
|
||||
s-12.9-5.8-12.9-12.9C105.9,183.5,105.9,151.2,105.9,151.2z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M118.8,99.4c-7.1,0-12.9-5.8-12.9-12.9s5.8-12.9,12.9-12.9s12.9,5.8,12.9,12.9v12.9H118.8z"/>
|
||||
<path class="st0" d="M118.8,105.9c7.1,0,12.9,5.8,12.9,12.9s-5.8,12.9-12.9,12.9H86.5c-7.1,0-12.9-5.8-12.9-12.9
|
||||
s5.8-12.9,12.9-12.9C86.5,105.9,118.8,105.9,118.8,105.9z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M170.6,118.8c0-7.1,5.8-12.9,12.9-12.9c7.1,0,12.9,5.8,12.9,12.9s-5.8,12.9-12.9,12.9h-12.9V118.8z"/>
|
||||
<path class="st0" d="M164.1,118.8c0,7.1-5.8,12.9-12.9,12.9c-7.1,0-12.9-5.8-12.9-12.9V86.5c0-7.1,5.8-12.9,12.9-12.9
|
||||
c7.1,0,12.9,5.8,12.9,12.9V118.8z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M151.2,170.6c7.1,0,12.9,5.8,12.9,12.9c0,7.1-5.8,12.9-12.9,12.9c-7.1,0-12.9-5.8-12.9-12.9v-12.9H151.2z"/>
|
||||
<path class="st0" d="M151.2,164.1c-7.1,0-12.9-5.8-12.9-12.9c0-7.1,5.8-12.9,12.9-12.9h32.3c7.1,0,12.9,5.8,12.9,12.9
|
||||
c0,7.1-5.8,12.9-12.9,12.9H151.2z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
@@ -0,0 +1,8 @@
|
||||
<svg
|
||||
style="enable-background:new 0 0 67 67;"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 24 24"
|
||||
|
||||
>
|
||||
<path d="M12 0c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm.869 5.903l3.114 4.567-.975.665-3.115-4.567.976-.665zm-2.812 2.585l4.84 2.838-.6 1.017-4.842-2.838.602-1.017zm-1.276 2.724l5.413 1.521-.291 1.077-5.428-1.458.306-1.14zm-.588 2.461l5.687.569-.103 1.12-5.691-.513.107-1.176zm-.169 2.16h5.835v1.167h-5.835v-1.167zm7.976 3.167h-10v-6h1v5h8v-5h1v6zm.195-8.602l-.945-5.446 1.162-.202.947 5.446-1.164.202z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 567 B |
@@ -0,0 +1,3 @@
|
||||
<svg style="enable-background:new 0 0 32 32;" version="1.1" viewBox="0 0 32 32" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<path d="m 15.433,1.91 c 7.726455,0 14,6.265147 14,14 0,7.726455 -6.265147,14 -14,14 -7.7264547,0 -14,-6.265147 -14,-14 0,-7.7264547 6.265147,-14 14,-14 z m 3.031794,6.2483503 c 0.260348,2.2003597 1.486502,3.5104977 3.611277,3.6448707 v 2.469107 c -1.234553,0.117576 -2.317936,-0.285543 -3.577684,-1.041392 v 4.619076 c 0,5.878824 -6.407918,7.709658 -8.9778045,3.5021 -1.6544691,-2.70426 -0.6382724,-7.466107 4.6694665,-7.65087 v 2.611877 c -0.40312,0.06719 -0.831434,0.167967 -1.226155,0.30234 -1.184163,0.394721 -1.847631,1.15057 -1.662868,2.469106 0.361128,2.527895 4.997001,3.275345 4.610678,-1.662867 V 8.1667487 h 2.561488 z" style="fill-rule:evenodd;clip-rule:evenodd;"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 868 B |
@@ -0,0 +1 @@
|
||||
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M37.167,22.283c-2.619,0.953-4.274,3.411-4.086,6.101 l0.063,1.038l-1.048-0.127c-3.813-0.487-7.145-2.139-9.974-4.915l-1.383-1.377l-0.356,1.017c-0.754,2.267-0.272,4.661,1.299,6.271 c0.838,0.89,0.649,1.017-0.796,0.487c-0.503-0.169-0.943-0.296-0.985-0.233c-0.146,0.149,0.356,2.076,0.754,2.839 c0.545,1.06,1.655,2.097,2.871,2.712l1.027,0.487l-1.215,0.021c-1.173,0-1.215,0.021-1.089,0.467 c0.419,1.377,2.074,2.839,3.918,3.475l1.299,0.444l-1.131,0.678c-1.676,0.976-3.646,1.526-5.616,1.568 C19.775,43.256,19,43.341,19,43.405c0,0.211,2.557,1.397,4.044,1.864c4.463,1.377,9.765,0.783,13.746-1.568 c2.829-1.673,5.657-5,6.978-8.221c0.713-1.716,1.425-4.851,1.425-6.354c0-0.975,0.063-1.102,1.236-2.267 c0.692-0.678,1.341-1.419,1.467-1.631c0.21-0.403,0.188-0.403-0.88-0.043c-1.781,0.636-2.033,0.551-1.152-0.402 c0.649-0.678,1.425-1.907,1.425-2.267c0-0.063-0.314,0.042-0.671,0.233c-0.377,0.212-1.215,0.53-1.844,0.72l-1.131,0.361l-1.027-0.7 c-0.566-0.381-1.361-0.805-1.781-0.932C39.766,21.902,38.131,21.944,37.167,22.283z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4 s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
@@ -0,0 +1 @@
|
||||
<svg style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M42.527,41.34c-0.278,0-0.478,0.078-0.6,0.244 c-0.121,0.156-0.18,0.424-0.18,0.796v0.896h1.543V42.38c0-0.372-0.062-0.64-0.185-0.796C42.989,41.418,42.792,41.34,42.527,41.34z M36.509,41.309c0.234,0,0.417,0.076,0.544,0.23c0.123,0.155,0.185,0.383,0.185,0.682v4.584c0,0.286-0.053,0.487-0.153,0.611 c-0.1,0.127-0.256,0.189-0.47,0.189c-0.148,0-0.287-0.033-0.421-0.096c-0.135-0.062-0.274-0.171-0.415-0.313v-5.531 c0.119-0.122,0.239-0.213,0.36-0.271C36.26,41.335,36.383,41.309,36.509,41.309z M41.748,44.658v1.672 c0,0.468,0.057,0.792,0.17,0.974c0.118,0.181,0.313,0.269,0.592,0.269c0.289,0,0.491-0.076,0.606-0.229 c0.114-0.153,0.175-0.489,0.175-1.013v-0.405h1.795v0.456c0,0.911-0.217,1.596-0.657,2.059c-0.435,0.459-1.089,0.687-1.958,0.687 c-0.781,0-1.398-0.242-1.847-0.731c-0.448-0.486-0.676-1.157-0.676-2.014v-3.986c0-0.768,0.249-1.398,0.742-1.882 c0.493-0.484,1.128-0.727,1.911-0.727c0.799,0,1.413,0.225,1.843,0.674c0.429,0.448,0.642,1.093,0.642,1.935v2.264H41.748z M38.623,48.495c-0.271,0.336-0.669,0.501-1.187,0.501c-0.343,0-0.646-0.062-0.912-0.192c-0.267-0.129-0.519-0.327-0.746-0.601 v0.681h-1.764V36.852h1.764v3.875c0.237-0.27,0.485-0.478,0.748-0.616c0.267-0.143,0.534-0.212,0.805-0.212 c0.554,0,0.975,0.189,1.265,0.565c0.294,0.379,0.438,0.933,0.438,1.66v4.926C39.034,47.678,38.897,48.159,38.623,48.495z M30.958,48.884v-0.976c-0.325,0.361-0.658,0.636-1.009,0.822c-0.349,0.191-0.686,0.282-1.014,0.282 c-0.405,0-0.705-0.129-0.913-0.396c-0.201-0.266-0.305-0.658-0.305-1.189v-7.422h1.744v6.809c0,0.211,0.037,0.362,0.107,0.457 c0.077,0.095,0.196,0.141,0.358,0.141c0.128,0,0.292-0.062,0.488-0.188c0.197-0.125,0.375-0.283,0.542-0.475v-6.744h1.744v8.878 H30.958z M24.916,38.6v10.284h-1.968V38.6h-2.034v-1.748h6.036V38.6H24.916z M32.994,32.978c0-0.001,12.08,0.018,13.514,1.45 c1.439,1.435,1.455,8.514,1.455,8.555c0,0-0.012,7.117-1.455,8.556C45.074,52.969,32.994,53,32.994,53s-12.079-0.031-13.516-1.462 c-1.438-1.435-1.441-8.502-1.441-8.556c0-0.041,0.004-7.12,1.441-8.555C20.916,32.996,32.994,32.977,32.994,32.978z M42.52,29.255 h-1.966v-1.08c-0.358,0.397-0.736,0.703-1.13,0.909c-0.392,0.208-0.771,0.312-1.14,0.312c-0.458,0-0.797-0.146-1.027-0.437 c-0.229-0.291-0.345-0.727-0.345-1.311v-8.172h1.962v7.497c0,0.231,0.045,0.399,0.127,0.502c0.08,0.104,0.216,0.156,0.399,0.156 c0.143,0,0.327-0.069,0.548-0.206c0.22-0.137,0.423-0.312,0.605-0.527v-7.422h1.966V29.255z M31.847,27.588 c0.139,0.147,0.339,0.219,0.6,0.219c0.266,0,0.476-0.075,0.634-0.223c0.157-0.152,0.235-0.358,0.235-0.618v-5.327 c0-0.214-0.08-0.387-0.241-0.519c-0.16-0.131-0.37-0.196-0.628-0.196c-0.241,0-0.435,0.065-0.586,0.196 c-0.148,0.132-0.225,0.305-0.225,0.519v5.327C31.636,27.233,31.708,27.439,31.847,27.588z M30.408,19.903 c0.528-0.449,1.241-0.674,2.132-0.674c0.812,0,1.48,0.237,2.001,0.711c0.517,0.473,0.777,1.083,0.777,1.828v5.051 c0,0.836-0.255,1.491-0.762,1.968c-0.513,0.476-1.212,0.714-2.106,0.714c-0.858,0-1.547-0.246-2.064-0.736 c-0.513-0.492-0.772-1.152-0.772-1.983v-5.068C29.613,20.954,29.877,20.351,30.408,19.903z M24.262,16h-2.229l2.634,8.003v5.252 h2.213v-5.5L29.454,16h-2.25l-1.366,5.298h-0.139L24.262,16z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30 S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |
3
examples/hugo/themes/ananke/config.yaml
Normal file
@@ -0,0 +1,3 @@
|
||||
module:
|
||||
hugoVersion:
|
||||
min: "0.64.0"
|
||||
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"app": {
|
||||
"js": "js/app.3fc0f988d21662902933.js",
|
||||
"css": "css/app.d98f2eb6bcd1eaedb7edf166bd16af26.css"
|
||||
}
|
||||
}
|
||||
@@ -1,33 +1,40 @@
|
||||
title = "Notre-Dame de Paris"
|
||||
baseURL = "https://example.com"
|
||||
languageCode = "en-us"
|
||||
theme = "gohugo-theme-ananke"
|
||||
themesDir = "../.."
|
||||
theme = ["github.com/theNewDynamic/gohugo-theme-ananke"]
|
||||
resourceDir = "../resources"
|
||||
|
||||
MetaDataFormat = "yaml"
|
||||
DefaultContentLanguage = "en"
|
||||
SectionPagesMenu = "main"
|
||||
Paginate = 3 # this is set low for demonstrating with dummy content. Set to a higher number
|
||||
googleAnalytics = ""
|
||||
enableRobotsTXT = true
|
||||
|
||||
[languages]
|
||||
[languages.en]
|
||||
title = "Ananke"
|
||||
weight = 1
|
||||
contentDir = "content/en"
|
||||
[languages.fr]
|
||||
title = "Ananke Fr"
|
||||
weight = 2
|
||||
contentDir = "content/fr"
|
||||
|
||||
[sitemap]
|
||||
changefreq = "monthly"
|
||||
priority = 0.5
|
||||
filename = "sitemap.xml"
|
||||
|
||||
[params]
|
||||
text_color = ""
|
||||
author = ""
|
||||
favicon = ""
|
||||
site_logo = ""
|
||||
description = "The last theme you'll ever need. Maybe."
|
||||
facebook = ""
|
||||
twitter = "https://twitter.com/GoHugoIO"
|
||||
instagram = ""
|
||||
youtube = ""
|
||||
github = ""
|
||||
gitlab = ""
|
||||
linkedin = ""
|
||||
mastodon = ""
|
||||
# choose a background color from any on this page: http://tachyons.io/docs/themes/skins/ and preface it with "bg-"
|
||||
background_color_class = "bg-black"
|
||||
featured_image = "/images/gohugo-default-sample-hero-image.jpg"
|
||||
recent_posts_number = 2
|
||||
recent_posts_number = 3
|
||||
|
||||
[[params.ananke_socials]]
|
||||
name = "twitter"
|
||||
url = "https://twitter.com/GoHugoIO"
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
---
|
||||
title: 'Ananke: a Hugo Theme'
|
||||
featured_image: '/images/gohugo-default-sample-hero-image.jpg'
|
||||
|
||||
description: "The last theme you'll ever need. Maybe."
|
||||
cascade:
|
||||
featured_image: '/images/gohugo-default-sample-hero-image.jpg'
|
||||
---
|
||||
|
||||
Welcome to my blog with some of my work in progress. I've been working on this book idea. You can read some of the chapters below.
|
||||
@@ -1,7 +1,10 @@
|
||||
---
|
||||
title: 'About'
|
||||
description: 'A few years ago, while visiting or, rather, rummaging about Notre-Dame, the author of this book found, in an obscure nook of one of the towers, the following word, engraved by hand upon the wall: —ANANKE.'
|
||||
featured_image: ''
|
||||
featured_image: '/images/Victor_Hugo-Hunchback.jpg'
|
||||
menu:
|
||||
main:
|
||||
weight: 1
|
||||
---
|
||||
|
||||
{{< figure src="/images/Victor_Hugo-Hunchback.jpg" title="Illustration from Victor Hugo et son temps (1881)" >}}
|
||||
@@ -1,11 +1,10 @@
|
||||
---
|
||||
title: Contact
|
||||
featured_image: 'images/notebook.jpg'
|
||||
featured_image: ''
|
||||
omit_header_text: true
|
||||
description: We'd love to hear from you
|
||||
type: page
|
||||
menu:
|
||||
main: {}
|
||||
menu: main
|
||||
---
|
||||
|
||||
This is an example of a custom shortcode that you can put right into your content. You will need to add a form action to the the shortcode to make it work. Check out [Formspree](https://formspree.io/) for a simple, free form service.
|
||||
@@ -4,6 +4,7 @@ description: 'Esmeralda'
|
||||
featured_image: '/images/esmeralda.jpg'
|
||||
tags: []
|
||||
title: 'Chapter VI: Esmeralda'
|
||||
disable_share: false
|
||||
---
|
||||
|
||||
We are delighted to be able to inform the reader, that during the whole of
|
||||
@@ -0,0 +1,9 @@
|
||||
---
|
||||
title: 'Ananke: Un thème pour Hugo'
|
||||
|
||||
description: 'Le dernier thème dont vous aurez besoin. Peut-être'
|
||||
cascade:
|
||||
featured_image: '/images/gohugo-default-sample-hero-image.jpg'
|
||||
---
|
||||
|
||||
Bienvenu sur mon blog à propos de mon travail du moment. Je travail sur une idée de livre. Vous pouvez lire quelques chapitres plus bas.
|
||||
@@ -0,0 +1,14 @@
|
||||
---
|
||||
title: Contact
|
||||
featured_image: ''
|
||||
omit_header_text: true
|
||||
description: Laissez-nous un message!
|
||||
type: page
|
||||
menu: main
|
||||
---
|
||||
|
||||
Ceci est la page de contact en Français.
|
||||
|
||||
This is an example of a custom shortcode that you can put right into your content. You will need to add a form action to the the shortcode to make it work. Check out [Formspree](https://formspree.io/) for a simple, free form service.
|
||||
|
||||
{{< form-contact action="https://example.com" >}}
|
||||
@@ -0,0 +1,6 @@
|
||||
---
|
||||
title: 'Articles'
|
||||
date: 2017-03-02T12:00:00-05:00
|
||||
---
|
||||
|
||||
Exemple de liste d'article français.
|
||||
@@ -0,0 +1,13 @@
|
||||
---
|
||||
date: 2017-04-09T10:58:08-04:00
|
||||
description: 'La grande halle'
|
||||
featured_image: '/images/Pope-Edouard-de-Beaumont-1844.jpg'
|
||||
tags: ['scene']
|
||||
title: 'Chapitre I: La grande halle'
|
||||
---
|
||||
|
||||
Généralement, on utilise un texte en faux latin (le texte ne veut rien dire, il a été modifié), le Lorem ipsum ou Lipsum, qui permet donc de faire office de texte d'attente. L'avantage de le mettre en latin est que l'opérateur sait au premier coup d'oeil que la page contenant ces lignes n'est pas valide, et surtout l'attention du client n'est pas dérangée par le contenu, il demeure concentré seulement sur l'aspect graphique.
|
||||
|
||||
Ce texte a pour autre avantage d'utiliser des mots de longueur variable, essayant de simuler une occupation normale. La méthode simpliste consistant à copier-coller un court texte plusieurs fois (« ceci est un faux-texte ceci est un faux-texte ceci est un faux-texte ceci est un faux-texte ceci est un faux-texte ») a l'inconvénient de ne pas permettre une juste appréciation typographique du résultat final.
|
||||
|
||||
Il circule des centaines de versions différentes du Lorem ipsum, mais ce texte aurait originellement été tiré de l'ouvrage de Cicéron, De Finibus Bonorum et Malorum (Liber Primus, 32), texte populaire à cette époque, dont l'une des premières phrases est : « Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit... » (« Il n'existe personne qui aime la souffrance pour elle-même, ni qui la recherche ni qui la veuille pour ce qu'elle est... »).
|
||||
7
examples/hugo/themes/ananke/exampleSite/go.mod
Normal file
@@ -0,0 +1,7 @@
|
||||
module github.com/theNewDynamic/gohugo-theme-ananke/exampleSite
|
||||
|
||||
go 1.14
|
||||
|
||||
replace github.com/theNewDynamic/gohugo-theme-ananke => ../
|
||||
|
||||
require github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220211195439-d4e5a698a829 // indirect
|
||||
2
examples/hugo/themes/ananke/exampleSite/go.sum
Normal file
@@ -0,0 +1,2 @@
|
||||
github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220211195439-d4e5a698a829 h1:dxXpDsAqswhvn8pPOC993d217NX/ZbIUSkWz1/awi4s=
|
||||
github.com/theNewDynamic/gohugo-theme-ananke v0.0.0-20220211195439-d4e5a698a829/go.mod h1:bgj7bjD98mZSR/KOYKuF5lcIgEmTnJ763rZH4EseLv4=
|
||||
3
examples/hugo/themes/ananke/go.mod
Normal file
@@ -0,0 +1,3 @@
|
||||
module github.com/theNewDynamic/gohugo-theme-ananke
|
||||
|
||||
go 1.14
|
||||
38
examples/hugo/themes/ananke/i18n/bg.toml
Normal file
@@ -0,0 +1,38 @@
|
||||
[more]
|
||||
other = "Още"
|
||||
|
||||
[allTitle]
|
||||
other = "Всички {{.Title }}"
|
||||
|
||||
[recentTitle]
|
||||
other = "Последни {{.Title }}"
|
||||
|
||||
[readMore]
|
||||
other = "виж още"
|
||||
|
||||
[whatsInThis]
|
||||
other = "Съдържание {{ .Type }}"
|
||||
|
||||
[related]
|
||||
other = "Подобни"
|
||||
|
||||
[yourName]
|
||||
other = "Вашето име"
|
||||
|
||||
[emailAddress]
|
||||
other = "Адрес на елекронна поща"
|
||||
|
||||
[message]
|
||||
other = "Съобщение"
|
||||
|
||||
[emailRequiredNote]
|
||||
other = "Задължително е да предоставите адрес на електронна поща."
|
||||
|
||||
[send]
|
||||
other = "Изпрати"
|
||||
|
||||
[taxonomyPageList]
|
||||
other = "Below you will find pages that utilize the taxonomy term “{{ .Title }}”"
|
||||
|
||||
[pageTitle]
|
||||
other = "{{ .Name }} страница"
|
||||
@@ -15,3 +15,32 @@ other = "Was ist in dieser {{ .Type }}"
|
||||
|
||||
[related]
|
||||
other = "Ähnliches"
|
||||
|
||||
[yourName]
|
||||
other = "Dein Name"
|
||||
|
||||
[emailAddress]
|
||||
other = "Email Adresse"
|
||||
|
||||
[message]
|
||||
other = "Nachricht"
|
||||
|
||||
[emailRequiredNote]
|
||||
other = "Eine Email Adresse wird benötigt."
|
||||
|
||||
[send]
|
||||
other = "Senden"
|
||||
|
||||
[taxonomyPageList]
|
||||
other = "Beiträge zum Thema “{{ .Title }}”"
|
||||
|
||||
[readingTime]
|
||||
one = "Eine Minute"
|
||||
other = "{{ .Count }} Minuten"
|
||||
|
||||
[wordCount]
|
||||
one = "Ein Wort"
|
||||
other = "{{ .Count }} Wörter"
|
||||
|
||||
[pageTitle]
|
||||
other = "{{ .Name }} Seite"
|
||||
@@ -15,3 +15,32 @@ other = "What's in this {{ .Type }}"
|
||||
|
||||
[related]
|
||||
other = "Related"
|
||||
|
||||
[yourName]
|
||||
other = "Your Name"
|
||||
|
||||
[emailAddress]
|
||||
other = "Email Address"
|
||||
|
||||
[message]
|
||||
other = "Message"
|
||||
|
||||
[emailRequiredNote]
|
||||
other = "An email address is required."
|
||||
|
||||
[send]
|
||||
other = "Send"
|
||||
|
||||
[taxonomyPageList]
|
||||
other = "Below you will find pages that utilize the taxonomy term “{{ .Title }}”"
|
||||
|
||||
[readingTime]
|
||||
one = "One minute read"
|
||||
other = "{{ .Count }} minutes read"
|
||||
|
||||
[wordCount]
|
||||
one = "One word"
|
||||
other = "{{ .Count }} words"
|
||||
|
||||
[pageTitle]
|
||||
other = "{{ .Name }} page"
|
||||
|
||||
@@ -5,7 +5,7 @@ other = "Más"
|
||||
other = "Todos los {{.Title }}"
|
||||
|
||||
[recentTitle]
|
||||
other = "{{.Title }} Recientes"
|
||||
other = "{{.Title }} recientes"
|
||||
|
||||
[readMore]
|
||||
other = "Leer más"
|
||||
@@ -15,3 +15,24 @@ other = "Qué hay en este {{ .Type }}"
|
||||
|
||||
[related]
|
||||
other = "Relacionado"
|
||||
|
||||
[yourName]
|
||||
other = "Tu nombre"
|
||||
|
||||
[emailAddress]
|
||||
other = "Dirección de correo electrónico"
|
||||
|
||||
[message]
|
||||
other = "Mensaje"
|
||||
|
||||
[emailRequiredNote]
|
||||
other = "Se requiere una dirección de correo electrónico."
|
||||
|
||||
[send]
|
||||
other = "Enviar"
|
||||
|
||||
[taxonomyPageList]
|
||||
other = "A continuación encontrará las páginas asociadas a “{{ .Title }}”"
|
||||
|
||||
[pageTitle]
|
||||
other = "{{ .Name }} pagina"
|
||||
46
examples/hugo/themes/ananke/i18n/fi.toml
Normal file
@@ -0,0 +1,46 @@
|
||||
[more]
|
||||
other = "Lisää"
|
||||
|
||||
[allTitle]
|
||||
other = "Kaikki kirjoitukset"
|
||||
|
||||
[recentTitle]
|
||||
other = "Viimeisimmät kirjoitukset"
|
||||
|
||||
[readMore]
|
||||
other = "lue lisää"
|
||||
|
||||
[whatsInThis]
|
||||
other = "Sisältö"
|
||||
|
||||
[related]
|
||||
other = "Samankaltaisia kirjoituksia"
|
||||
|
||||
[yourName]
|
||||
other = "sinun nimesi"
|
||||
|
||||
[emailAddress]
|
||||
other = "sähköpostiosoite"
|
||||
|
||||
[message]
|
||||
other = "viesti"
|
||||
|
||||
[emailRequiredNote]
|
||||
other = "Sähköpostiosoite on pakollinen tieto."
|
||||
|
||||
[send]
|
||||
other = "Lähetä"
|
||||
|
||||
[taxonomyPageList]
|
||||
other = "Alla ovat sivut, jotka liittyvät hakusanaasi: “{{ .Title }}”"
|
||||
|
||||
[readingTime]
|
||||
one = "Minuutin lukuaika"
|
||||
other = "{{ .Count }} minuutin lukuaika"
|
||||
|
||||
[wordCount]
|
||||
one = "Yksi sana"
|
||||
other = "{{ .Count }} sanaa"
|
||||
|
||||
[pageTitle]
|
||||
other = "{{ .Name }} sivu"
|
||||
@@ -15,3 +15,32 @@ other = "Ce qui est dans {{ .Type }}"
|
||||
|
||||
[related]
|
||||
other = "Lié"
|
||||
|
||||
[yourName]
|
||||
other = "Votre nom"
|
||||
|
||||
[emailAddress]
|
||||
other = "Adresse e-mail"
|
||||
|
||||
[message]
|
||||
other = "Message"
|
||||
|
||||
[emailRequiredNote]
|
||||
other = "Une adresse e-mail est requise."
|
||||
|
||||
[send]
|
||||
other = "Envoyer"
|
||||
|
||||
[taxonomyPageList]
|
||||
other = "Below you will find pages that utilize the taxonomy term “{{ .Title }}”"
|
||||
|
||||
[readingTime]
|
||||
one = "Une minute de lecture"
|
||||
other = "{{ .Count }} minutes de lecture"
|
||||
|
||||
[wordCount]
|
||||
one = "Un mot"
|
||||
other = "{{ .Count }} mots"
|
||||
|
||||
[pageTitle]
|
||||
other = "{{ .Name }} page"
|
||||
35
examples/hugo/themes/ananke/i18n/hi.toml
Normal file
@@ -0,0 +1,35 @@
|
||||
[more]
|
||||
other = "अधिक"
|
||||
|
||||
[allTitle]
|
||||
other = "सब {{.Title }}"
|
||||
|
||||
[recentTitle]
|
||||
other = "हाल में {{.Title }}"
|
||||
|
||||
[readMore]
|
||||
other = "और पढ़ें"
|
||||
|
||||
[whatsInThis]
|
||||
other = "इस में क्या है {{ .Type }}"
|
||||
|
||||
[related]
|
||||
other = "संबंधित"
|
||||
|
||||
[yourName]
|
||||
other = "तुम्हारा नाम"
|
||||
|
||||
[emailAddress]
|
||||
other = "ईमेल पता"
|
||||
|
||||
[message]
|
||||
other = "संदेश"
|
||||
|
||||
[emailRequiredNote]
|
||||
other = "एक ईमेल पता की आवश्यकता है।"
|
||||
|
||||
[send]
|
||||
other = "भेजना"
|
||||
|
||||
[taxonomyPageList]
|
||||
other = "नीचे आपको ऐसे पेज मिलेंगे जो वर्गीकरण शब्द का उपयोग करते हैं “{{ .Title }}”"
|
||||
38
examples/hugo/themes/ananke/i18n/hu.toml
Normal file
@@ -0,0 +1,38 @@
|
||||
[more]
|
||||
other = "Több"
|
||||
|
||||
[allTitle]
|
||||
other = "További {{.Title }}"
|
||||
|
||||
[recentTitle]
|
||||
other = "Friss {{.Title }}"
|
||||
|
||||
[readMore]
|
||||
other = "Részletek"
|
||||
|
||||
[whatsInThis]
|
||||
other = "{{ .Type }}"
|
||||
|
||||
[related]
|
||||
other = "Ajánlott cikkek"
|
||||
|
||||
[yourName]
|
||||
other = "Név"
|
||||
|
||||
[emailAddress]
|
||||
other = "E-mail cím"
|
||||
|
||||
[message]
|
||||
other = "Üzenet"
|
||||
|
||||
[emailRequiredNote]
|
||||
other = "E-mail cím megadása kötelező."
|
||||
|
||||
[send]
|
||||
other = "Küldés"
|
||||
|
||||
[taxonomyPageList]
|
||||
other = "Ezen a lapon a(z) {{ .Title }} kategóriába tartozó cikkeket találod"
|
||||
|
||||
[pageTitle]
|
||||
other = "{{ .Name }} oldal"
|
||||