Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions apps/bootstrapper/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Environment Configuration
NODE_ENV=development

# Database
DATABASE_URL=./data/bootstrapper.db

# Nostr Configuration
NOSTR_BOOTSTRAPPER_PRIVATE_KEY=

# Server Configuration
PORT=8001
HOST=0.0.0.0

# Logging
LOG_LEVEL=info
92 changes: 92 additions & 0 deletions apps/bootstrapper/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# Dependencies
node_modules/

# SvelteKit build outputs
build/
dist/
.svelte-kit/

# Temporary folders
tmp/
temp/

# Logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Environment files
.env
.env.local
.env.development.local
.env.test.local
.env.production.local

# Database
*.db
*.sqlite
*.sqlite3
data/

# IDE and editor files
.vscode/
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
*.swp
*.swo
*~

# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# Coverage directory used by tools like istanbul
coverage/
*.lcov

# TypeScript cache
*.tsbuildinfo

# Stores VSCode versions used for testing VSCode extensions
.vscode-test

# Yarn
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*

# Vercel
.vercel

# Playwright
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/

# Vitest
coverage/

# Custom application files
/static/uploads/
*.key
*.crt
*.pem
24 changes: 24 additions & 0 deletions apps/bootstrapper/.prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"useTabs": false,
"tabWidth": 4,
"singleQuote": true,
"semi": true,
"trailingComma": "es5",
"printWidth": 100,
"plugins": ["prettier-plugin-svelte"],
"pluginSearchDirs": ["."],
"overrides": [
{
"files": "*.svelte",
"options": {
"parser": "svelte",
"useTabs": false,
"tabWidth": 4,
"singleQuote": true,
"semi": true,
"trailingComma": "es5",
"printWidth": 100
}
}
]
}
3 changes: 3 additions & 0 deletions apps/bootstrapper/app.postcss
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
47 changes: 47 additions & 0 deletions apps/bootstrapper/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"name": "satshoot-bootstrapper",
"version": "0.1.0",
"type": "module",
"scripts": {
"dev": "vite dev --host 0.0.0.0 --port 8001",
"build": "vite build",
"preview": "vite preview --port 8001",
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
"test": "vitest",
"test:e2e": "playwright test",
"lint": "eslint .",
"format": "prettier --write ."
},
"devDependencies": {
"@playwright/test": "^1.47.0",
"@skeletonlabs/skeleton": "^3.1.2",
"@skeletonlabs/skeleton-svelte": "^1.2.1",
"@sveltejs/adapter-node": "^5.2.7",
"@sveltejs/kit": "^2.20.7",
"@sveltejs/vite-plugin-svelte": "^5.0.3",
"@tailwindcss/forms": "^0.5.10",
"@tailwindcss/typography": "^0.5.16",
"@tailwindcss/vite": "^4.1.4",
"@types/node": "^20.17.30",
"@types/ws": "^8.5.12",
"eslint": "^9.13.0",
"prettier": "^3.6.2",
"prettier-plugin-svelte": "^3.2.6",
"svelte": "^5.27.1",
"svelte-check": "^4.1.6",
"tailwindcss": "^4.1.4",
"tslib": "^2.8.1",
"typescript": "^5.8.3",
"vite": "^6.3.1",
"vitest": "^3.1.1"
},
"dependencies": {
"@nostr-dev-kit/ndk": "workspace:^",
"@nostr-dev-kit/ndk-svelte": "workspace:^",
"@sveltejs/adapter-static": "^3.0.8",
"nostr-tools": "~2.5.2",
"svelte-persisted-store": "^0.11.0",
"ws": "^8.18.0"
}
}
11 changes: 11 additions & 0 deletions apps/bootstrapper/src/app.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/* Base styles */
html,
body {
@apply h-full overflow-hidden;
}

.app {
display: flex;
flex-direction: column;
min-height: 100vh;
}
14 changes: 14 additions & 0 deletions apps/bootstrapper/src/app.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
// See https://kit.svelte.dev/docs/types#app

// for information about these interfaces
declare global {
namespace App {
// interface Error {}
// interface Locals {}
// interface PageData {}
// interface PageState {}
// interface Platform {}
}
}

export {};
13 changes: 13 additions & 0 deletions apps/bootstrapper/src/app.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!doctype html>
<html lang="en" %sveltekit.theme%>
<head>
<meta charset="utf-8" />
<link rel="icon" href="%sveltekit.assets%/favicon.png" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SatShoot Bootstrapper</title>
%sveltekit.head%
</head>
<body data-sveltekit-preload-data="hover" class="h-full overflow-hidden">
<div style="display: contents" class="h-full overflow-hidden">%sveltekit.body%</div>
</body>
</html>
2 changes: 2 additions & 0 deletions apps/bootstrapper/src/app.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
import '@tailwindcss/browser';
import './app.css';
5 changes: 5 additions & 0 deletions apps/bootstrapper/src/routes/+layout.svelte
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<script>
import '../../app.postcss';
</script>

<slot />
Loading