Skip to content

Commit

Permalink
Merge branch 'main' into feature/add-makeplane
Browse files Browse the repository at this point in the history
  • Loading branch information
serban-alexandru committed Apr 24, 2024
2 parents 4c7cac0 + de755dc commit 7ad680b
Show file tree
Hide file tree
Showing 6 changed files with 222 additions and 0 deletions.
Binary file added templates/docuseal/assets/logo.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added templates/docuseal/assets/screenshot.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
44 changes: 44 additions & 0 deletions templates/docuseal/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
import { Output, Services, randomPassword } from "~templates-utils";
import { Input } from "./meta";

export function generate(input: Input): Output {
const services: Services = [];

const dbPassword = randomPassword();

services.push({
type: "app",
data: {
projectName: input.projectName,
serviceName: input.appServiceName,
env: [
`FORCE_SSL=true`,
`DATABASE_URL=postgres://postgres:${dbPassword}@$(PROJECT_NAME)_${input.databaseServiceName}:5432/$(PROJECT_NAME)`
].join("\n"),
source: {
type: "image",
image: 'docuseal/docuseal:1.4.3',
},
mounts: [
{ type: 'volume', name: 'data', mountPath: '/data' }
],
domains: [
{
host: "$(EASYPANEL_DOMAIN)",
port: 3000,
},
],
},
});

services.push({
type: "postgres",
data: {
projectName: input.projectName,
serviceName: input.databaseServiceName,
password: dbPassword,
},
});

return { services };
}
66 changes: 66 additions & 0 deletions templates/docuseal/meta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: DocuSeal
description: DocuSeal is an open source platform that provides secure and efficient digital document signing and processing. Create PDF forms to have them filled and signed online on any device with an easy-to-use, mobile-optimized web tool.
instructions: null
changeLog:
- date: 2024-2-15
description: first release
links:
- label: Website
url: https://www.docuseal.co/
- label: Documentation
url: https://www.docuseal.co/docs
- label: Github
url: https://github.com/docusealco/docuseal
contributors:
- name: VinumWeb
url: https://github.com/vinumweb
schema:
type: object
required:
- projectName
- appServiceName
- databaseServiceName
properties:
projectName:
type: string
title: Project Name
appServiceName:
type: string
title: App Service Name
default: docuseal
databaseServiceName:
type: string
title: Database Service Name
default: docuseal-db
benefits:
- title: Fast and slick
description: Lightning-fast and smooth document signing with a step-by-step form.
- title: Works everywhere
description: From mobile to desktop. Document signing made simple on any device.
- title: Feature-rich
description: Reminders, API integration, seamless embedding, branding and more.
features:
- title: PDF form fields builder (WYSIWYG)
description: null
- title: 11 field types available (Signature, Date, File, Checkbox etc.)
description: null
- title: Multiple submitters per document
description: null
- title: Automated emails via SMTP
description: null
- title: Files storage on disk or AWS S3, Google Storage, Azure Cloud
description: null
- title: Automatic PDF eSignature
description: null
- title: PDF signature verification
description: null
- title: Users management
description: null
- title: Mobile-optimized
description: null
- title: API and Webhooks for integrations
description: null
- title: Easy to deploy in minutes
description: null
tags:
- PDF
69 changes: 69 additions & 0 deletions templates/streampanel/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
import { Output, randomPassword, Services } from "~templates-utils";
import { Input } from "./meta";

export function generate(input: Input): Output {
const services: Services = [];
const databasePassword = randomPassword()
const secret = randomPassword();

const env = [
"# https://github.com/wish-oss/stream-panel/tree/dev?tab=readme-ov-file#setup-environment-variables",
"",
"GITHUB_ID=your-github-id",
"GITHUB_SECRET=your-github-secret",
"",
`NEXTAUTH_SECRET=${secret}`,
"NEXTAUTH_URL=https://$(PRIMARY_DOMAIN)",
"",
`DATABASE_URL=postgres://postgres:${databasePassword}@${input.projectName}_postgres:5432/${input.projectName}`,
"",
"EASYPANEL_URL=https://your-easypanel.url",
"EASYPANEL_API_KEY=your-easypanel-apikey",
"",
"GOOGLE_CLIENT_ID=___.apps.googleusercontent.com",
"GOOGLE_CLIENT_SECRET=your-google-secret"
];

services.push({
type: "app",
data: {
projectName: input.projectName,
serviceName: input.appServiceName,
source: {
type: "github",
owner: "wish-oss",
repo: "stream-panel",
ref: "dev",
path: "/",
autoDeploy: true
},
build: {
type: "nixpacks"
},
env: env.join("\n"),
deploy: {
replicas: 1,
command: "npx prisma migrate deploy && npm run start",
zeroDowntime: true
},
domains: [
{
host: "$(EASYPANEL_DOMAIN)",
port: 80,
},
],
},
});

services.push({
type: "postgres",
data: {
projectName: input.projectName,
serviceName: "postgres",
image: "postgres:16",
password: databasePassword
}
});

return { services };
}
43 changes: 43 additions & 0 deletions templates/streampanel/meta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: StreamPanel
description: StreamPanel simplifies app deployment and management, streamlining
your workflow and boosting productivity.
instructions: Make sure to update the EasyPanel, Google and Github environment variables.
changeLog:
- date: 2024-04-03
description: Template added
links:
- label: Github
url: https://github.com/wish-oss/stream-panel
contributors:
- name: Mark Topper Diderichsen
url: https://github.com/marktopper
schema:
type: object
required:
- projectName
- appServiceName
properties:
projectName:
type: string
title: Project Name
appServiceName:
type: string
title: App Service Name
default: nextjs
benefits:
- title: Effortless Deployment
description: Seamlessly deploy modern applications without the hassle of
managing servers.
- title: Streamlined Management
description: Simplify app management tasks and free up valuable time for
more important work.
features:
- title: Instant Access
description: Access your cloud environment instantly, with pre-installed
applications ready to use.
- title: Scalable Solutions
description: Easily scale your environment as your needs grow, ensuring
seamless performance at any scale.
tags:
- Cloud Computing
- App Deployment

0 comments on commit 7ad680b

Please sign in to comment.