feat(template): added maybe finance

This commit is contained in:
Freilyn Bernabe 2025-01-23 23:41:58 -04:00
parent c6569f70e4
commit fd570ff861
4 changed files with 112 additions and 0 deletions

View File

@ -0,0 +1,17 @@
<svg xmlns="http://www.w3.org/2000/svg" width="147" height="24" fill="none">
<path
d="M30.827 24h5.224a2.24 2.24 0 0 0 2.241-2.238 2.24 2.24 0 0 0-2.24-2.239h-5.225a2.24 2.24 0 0 0-2.241 2.239A2.24 2.24 0 0 0 30.826 24zM7.465 24H2.241A2.24 2.24 0 0 1 0 21.762a2.24 2.24 0 0 1 2.24-2.239h5.225a2.24 2.24 0 1 1 0 4.477zm13.792-.014h-4.253a2.24 2.24 0 1 1 0-4.477h4.253a2.24 2.24 0 1 1 0 4.477z"
fill="#F23E94" />
<path
d="M28.796 17.558h5.03a2.24 2.24 0 1 0 0-4.477h-5.03a2.24 2.24 0 1 0 0 4.477zm-19.387 0H4.38a2.24 2.24 0 1 1 0-4.477h5.03a2.24 2.24 0 1 1 0 4.477zm13.466-.014h-7.486a2.24 2.24 0 0 1-2.24-2.239 2.24 2.24 0 0 1 2.24-2.239h7.486a2.24 2.24 0 0 1 0 4.477z"
fill="#6927DA" />
<path
d="M22.657 10.92h8.94a2.24 2.24 0 1 0 0-4.477h-8.94a2.24 2.24 0 1 0 0 4.477zm-6.497 0H6.608a2.24 2.24 0 1 1 0-4.477h9.552a2.24 2.24 0 1 1 0 4.477z"
fill="#1570EF" />
<path
d="M29.448 4.477h-5.041a2.24 2.24 0 0 1-2.241-2.238A2.24 2.24 0 0 1 24.407 0h5.041a2.24 2.24 0 1 1 0 4.477zm-15.656 0H8.751A2.24 2.24 0 1 1 8.75 0h5.041a2.24 2.24 0 1 1 0 4.477z"
fill="#2CE" />
<path
d="M73.648 10.81v6.455h-4.49v-5.753c0-1.97-.878-2.632-2.694-2.632-1.698 0-3.142.663-3.142 2.632v5.753h-4.49v-5.753c0-1.97-.878-2.632-2.694-2.632-1.698 0-3.142.663-3.142 2.632v5.753h-4.49v-11.7h4.49v2.067c1.249-1.521 2.889-2.457 5.153-2.457 2.069 0 3.943.858 4.743 3.003 1.308-1.833 3.045-3.003 5.583-3.003 2.772 0 5.173 1.54 5.173 5.635zm13.918 2.945v-.897c-1.503-.215-3.163-.39-4.666-.39-1.971 0-2.713.253-2.713.955 0 .663.586.917 2.264.917 1.406 0 3.826-.37 5.115-.585zm4.49-2.477v5.987h-4.49v-1.56c-2.089 1.287-4.666 1.755-6.657 1.755-3.064 0-5.407-.956-5.407-3.725 0-3.198 3.514-3.997 6.735-3.997 1.99 0 3.806.273 5.329.585-.117-1.619-1.582-2.028-3.631-2.028-2.089 0-4.08.292-6.852.936l-.624-3.062c2.537-.565 5.27-.994 8.315-.994 4.9 0 7.242 1.638 7.281 6.103zm13.976-5.713h4.548l-5.505 11.407c-1.639 3.393-3.416 5.363-7.027 5.363-1.288 0-2.928-.254-4.431-.683V18.24c1.737.39 2.967.585 3.767.585 1.503 0 2.147-.117 2.967-1.56h-2.108l-5.602-11.7h4.548l4.412 9.204 4.431-9.204zm17.744 5.85c0-1.716-1.191-2.535-3.572-2.535-2.382 0-3.573.819-3.573 2.535 0 1.716 1.191 2.535 3.573 2.535 2.381 0 3.572-.82 3.572-2.535zm4.685 0c0 4.719-3.377 6.24-6.403 6.24-2.128 0-4.236-.663-5.427-2.477v2.087h-4.489v-15.6h4.489v5.986c1.191-1.813 3.299-2.476 5.427-2.476 3.026 0 6.403 1.52 6.403 6.24zm6.461-1.482h7.32c-.508-1.346-1.757-1.833-3.69-1.833-1.893 0-3.142.487-3.63 1.833zm7.476 3.14h4.392c-.781 2.905-3.143 4.582-8.062 4.582-5.27 0-8.511-2.106-8.511-6.24s3.455-6.24 8.335-6.24c5.017 0 8.336 2.223 8.336 6.98h-12.123c.313 1.697 1.777 2.185 4.139 2.185 2.206 0 3.104-.507 3.494-1.268z"
fill="#141414" />
</svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -0,0 +1,37 @@
services:
app:
image: ghcr.io/maybe-finance/maybe:sha-68c570eed8810fd59b5b33cca51bbad5eabb4cb4
restart: unless-stopped
volumes:
- ./uploads:/app/uploads
environment:
DATABASE_URL: postgresql://maybe:maybe@db:5432/maybe
SECRET_KEY_BASE: ${SECRET_KEY_BASE}
SELF_HOSTED: true
SYNTH_API_KEY: ${SYNTH_API_KEY}
RAILS_FORCE_SSL: "false"
RAILS_ASSUME_SSL: "false"
GOOD_JOB_EXECUTION_MODE: async
depends_on:
db:
condition: service_healthy
db:
image: postgres:16
restart: always
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 5s
retries: 5
networks:
- dokploy-network
volumes:
- db-data:/var/lib/postgresql/data
environment:
POSTGRES_DB: maybe
POSTGRES_USER: maybe
POSTGRES_PASSWORD: maybe
volumes:
db-data:

View File

@ -0,0 +1,43 @@
import {
type DomainSchema,
type Schema,
type Template,
generateBase64,
generateRandomDomain,
} from "../utils";
export function generate(schema: Schema): Template {
const mainDomain = generateRandomDomain(schema);
const secretKeyBase = generateBase64(64);
const synthApiKey = generateBase64(32);
const domains: DomainSchema[] = [
{
host: mainDomain,
port: 3000,
serviceName: "app",
},
];
const envs = [
`SECRET_KEY_BASE=${secretKeyBase}`,
"SELF_HOSTED=true",
`SYNTH_API_KEY=${synthApiKey}`,
"RAILS_FORCE_SSL=false",
"RAILS_ASSUME_SSL=false",
"GOOD_JOB_EXECUTION_MODE=async",
];
const mounts: Template["mounts"] = [
{
filePath: "./uploads",
content: "This is where user uploads will be stored",
},
];
return {
envs,
mounts,
domains,
};
}

View File

@ -1341,4 +1341,19 @@ export const templates: TemplateData[] = [
tags: ["dashboard", "monitoring"],
load: () => import("./homarr/index").then((m) => m.generate),
},
{
id: "maybe",
name: "Maybe",
version: "latest",
description:
"Maybe is a self-hosted finance tracking application designed to simplify budgeting and expenses.",
logo: "maybe.svg",
links: {
github: "https://github.com/maybe-finance/maybe",
website: "https://maybe.finance/",
docs: "https://docs.maybe.finance/",
},
tags: ["finance", "self-hosted"],
load: () => import("./maybe/index").then((m) => m.generate),
},
];