Solving Problems with Open Source. ํ๊ธ ํ๋ก์ ํธ
Almost as simple as Vercel and Cloudflare Pages. Learn more
npm create svelte-kitty # setup project and database
npm run deploy # build and deploy to a Linux server
- ๐ Includes email based authentication, user and role management.
- ๐ฆ Fully configured Drizzle ORM, Tailwind CSS, Valibot out-of-the box.
Form state management. Disable buttons during submission. Learn more
<script>
import { enhance } from "$app/forms";
import { createFormHelper } from "svelte-form-enhanced";
const f = createFormHelper();
</script>
<form method="post" use:enhance={f.submitFunction}>
<button disabled={f.state === "submitting"}>
{f.state === "submitting" ? "Submitting" : "Submit"}
</button>
</form>
Open and close an HTML modal by toggling a boolean state. Demo
<script>
import { Modal } from "svelte-html-modal";
let isOpen = $state(false);
</script>
<button type="button" onclick={() => (isOpen = true)}>Open Modal</button>
<div class="modal-wrapper">
<Modal bind:isOpen closeOnBackdropClick={true}>
<button type="button" onclick={() => (isOpen = false)}>Close</button>
</Modal>
</div>
Supports Twilio SMS, SendGrid and Postmark email, and more.
import { SendGridSendEmail3 as sendEmail } from "new-request";
const response = await sendEmail({
// Utilizes the Fetch API and TypeScript types.
// Everything is autocompleted and type-checked.
});
Backup company recordings with a single command. Learn more
# create a urls.txt file with the recording URLs
npx zoom-rec-dl@latest # then start the download
Pages are displayed like PDF viewers and word processors. Demo
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/print-friendly@0.3/index.css" />
</head>
<body>
<div>
<div class="page">/* Add content */</div>
</div>
</body>
</html>
์๋ ฅ์ํญ ๊ธฐ๋ฐ์ ์ค๋ฅ ์๋ ๊ณต๊ฐ ์บ๋ฆฐ๋. ๋ ์์๋ณด๊ธฐ
JSON
,CSV
,ICS
ํ์ผ ๋ฐ ํธ์คํ ์ ๊ณต- ์บ๋ฆฐ๋ ๊ตฌ๋ ์ ๊ณต (๊ตฌ๊ธ, ์ ํ ์บ๋ฆฐ๋ ์ง์)
import { isHoliday } from "@hyunbinseo/holidays-kr";
isHoliday(new Date("2025-01-01T00:00:00+0900")); // true - ๊ณตํด์ผ์
๋๋ค.
isHoliday(new Date("2025-01-02T00:00:00+0900")); // false - ๊ณตํด์ผ์ด ์๋๋๋ค.
ํ๋ก๊ทธ๋จ ์ค์น ์๋ ํ์ผ๋ช ์์ ๋ถ๋ฆฌ ํด๊ฒฐ. ์นํ์ด์ง
# ํ์ผ์ ๋์ด๋ค ๋์ผ๋ฉด ์์ ๋ ํ์ผ์ด ๋ค์ด๋ก๋ ๋ฉ๋๋ค.
- ใ
ใ
ใ
ใ
ฃในใ
ใ
ใ
.hwp
+ ํ์ผ๋ช
.hwp
์ ๊ตญ์์ ์ฐธ์ฌ ๊ฐ๋ฅํ ๋ฏผ๋ฐฉ์ ํ๋ จ ์ผ์ ์กฐํ. ์นํ์ด์ง