Begin development

This commit is contained in:
Korbs 2024-06-05 20:48:11 -04:00
commit 7fd01eaf43
12 changed files with 224 additions and 0 deletions

3
.dockerignore Normal file
View file

@ -0,0 +1,3 @@
.DS_Store
node_modules
dist

21
.gitignore vendored Normal file
View file

@ -0,0 +1,21 @@
# build output
dist/
# generated types
.astro/
# 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

27
Dockerfile Normal file
View file

@ -0,0 +1,27 @@
# This file is based on the example provided in Astro's documentation:
# https://docs.astro.build/en/recipes/docker/#multi-stage-build-using-ssr
FROM node:lts AS base
WORKDIR /app
# By copying only the package.json and package-lock.json here, we ensure that the following `-deps` steps are independent of the source code.
# Therefore, the `-deps` steps will be skipped if only the source code changes.
COPY package.json package-lock.json ./
FROM base AS prod-deps
RUN npm install --omit=dev
FROM base AS build-deps
RUN npm install
FROM build-deps AS build
COPY . .
RUN npm run build
FROM base AS runtime
COPY --from=prod-deps /app/node_modules ./node_modules
COPY --from=build /app/dist ./dist
ENV HOST=0.0.0.0
ENV PORT=4321
EXPOSE 4321
CMD node ./dist/server/entry.mjs

10
README.md Normal file
View file

@ -0,0 +1,10 @@
# <center>Project Pandora Butterfly</center>
<center>Project Pandora Butterfly is a new documentation template built on the Astro Web Framework.</center>
<br/>
> Project name is subject to change and not production ready.
___
<center>A <a href="https://sudovanilla.org/">SudoVanilla</a> Project</center>

64
TODO.md Normal file
View file

@ -0,0 +1,64 @@
- [] Build Components:
- [] Tabs
- [] Cards
- [] Link Cards
- [] Asides
- [] Code
- [] File Tree
- [] Steps
- [] Badges
- [] Buttons
- [] Search
- [] Image
- [] Image Comparer
- [] Gallery
- [] Carousel
- [] Menu
- [] Dialog
- [] Add integrations:
- [] Analytics for:
- [] Amplitude
- [] Aptabase
- [] Burst Statistics
- [] Fathom
- [] Matomo (aka Piwik)
- [] Metrical
- [] Minimalanalytics
- [] Plausible
- [] Simple Analytics
- [] Swetrix Analytics
- [] Tianji
- [] Umami
- [] ~~Google Analytics~~ (Discourage this)
- [] Feedback:
- [] Feelback
- [] Keystatic as CMS
- [] Provide Docker Image for AMD64 and ARM64
- [] Docker, test with:
- [] Dockge
- [] Dokemon
- [] Yacht
- [] Create automations for:
- [] Drone.io
- [] Gitea/Forgejo
- [] GitHub
- [] GitLab
- [] Jenkins
- [] Woodpecker
- [] Add Deployment Options for:
- [] Cloudflare Pages
- [] Codeberg Pages
- [] Deta Space
- [] Fly.io
- [] GitHub Pages
- [] GitLab Pages
- [] Heroku
- [] Kinsta
- [] Netlify
- [] Render
- [] Stormkit
- [] Surge
- [] Vercel
- [] YounoHost
- [] Zeabur
- [] Zerops

26
astro.config.mjs Normal file
View file

@ -0,0 +1,26 @@
import { defineConfig } from 'astro/config';
// Adapters
import node from '@astrojs/node';
// Integrations
import keystatic from '@keystatic/astro';
import mdx from '@astrojs/mdx';
import partytown from '@astrojs/partytown';
export default defineConfig({
site: 'docs.company.net',
output: "hybrid",
prefetch: true,
adapter: node({
mode: 'standalone',
}),
integrations: [mdx(), partytown()],
server: {
port: 2014,
host: true
},
devToolbar: {
enabled: false
}
});

BIN
bun.lockb Executable file

Binary file not shown.

4
docker-compose.yml Normal file
View file

@ -0,0 +1,4 @@
services:
pandora-charm:
image: ark.sudovanilla.org/korbs/project-pandora-charm:amd64
port: 2014:2014

49
package.json Normal file
View file

@ -0,0 +1,49 @@
{
"name": "project-pandora-charm",
"type": "module",
"version": "0.0.1",
"license": "GPL-3.0-only",
"author": {
"name": "SudoVanilla"
},
"funding": [
{
"type": "individual",
"url": "https://liberapay.com/SudoVanilla/"
}
],
"homepage": "https://ark.sudovanilla.org/Korbs/project-pandora-charm/",
"repository": {
"type": "git",
"url": "https://ark.sudovanilla.org/Korbs/project-pandora-charm/"
},
"bugs": {
"url": "https://ark.sudovanilla.org/Korbs/project-pandora-charm/issues",
"email": "support@sudovanilla.org"
},
"scripts": {
"dev": "astro dev",
"start": "astro dev",
"build": "astro build",
"preview": "astro preview",
"docker:start": "docker compose up -d",
"docker:stop": "docker compose down",
"docker:build": "docker build -t ark.sudovanilla.org/korbs/project-pandora-butterly:amd64 .",
"docker:push": "docker push ark.sudovanilla.org/korbs/project-pandora-butterly:amd64"
},
"dependencies": {
"@astrojs/mdx": "^3.0.1",
"@astrojs/partytown": "^2.1.0",
"@astrojs/prism": "^3.1.0",
"@iconoir/vue": "^7.7.0",
"@keystatic/astro": "^5.0.0",
"@keystatic/core": "^0.5.18",
"astro": "^4.9.3",
"astro-analytics": "^2.7.0",
"astro-breadcrumbs": "^2.3.1",
"astro-seo": "^0.8.4",
"markdoc": "^0.1.3",
"react": "^18.3.1",
"sass": "^1.77.4"
}
}

1
src/env.d.ts vendored Normal file
View file

@ -0,0 +1 @@
/// <reference types="astro/client" />

16
src/pages/index.astro Normal file
View file

@ -0,0 +1,16 @@
---
---
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width" />
<meta name="generator" content={Astro.generator} />
<title>Astro</title>
</head>
<body>
<h1>Astro</h1>
</body>
</html>

3
tsconfig.json Normal file
View file

@ -0,0 +1,3 @@
{
"extends": "astro/tsconfigs/base"
}