issue -> sprint
|
Before Width: | Height: | Size: 152 KiB After Width: | Height: | Size: 152 KiB |
|
Before Width: | Height: | Size: 155 KiB After Width: | Height: | Size: 155 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 155 KiB After Width: | Height: | Size: 155 KiB |
|
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 110 KiB |
|
Before Width: | Height: | Size: 166 KiB After Width: | Height: | Size: 166 KiB |
|
Before Width: | Height: | Size: 183 B After Width: | Height: | Size: 183 B |
@@ -3,13 +3,13 @@ import Demo from "../../components/Demo.astro";
|
|||||||
import ProjectPage from "../../components/ProjectPage.astro";
|
import ProjectPage from "../../components/ProjectPage.astro";
|
||||||
|
|
||||||
export const metadata = {
|
export const metadata = {
|
||||||
title: "Issue",
|
title: "Sprint",
|
||||||
description: "A simple project management tool for developers. Born out of frustration with Jira.",
|
description: "A simple project management tool for developers. Born out of frustration with Jira.",
|
||||||
date: "December 2025 - Present",
|
date: "December 2025 - Present",
|
||||||
slug: "issue",
|
slug: "sprint",
|
||||||
image: "/issue-icon.svg",
|
image: "/sprint-icon.svg",
|
||||||
url: "https://issue.ob248.com",
|
url: "https://sprint.ob248.com",
|
||||||
github: "https://github.com/hex248/issue",
|
github: "https://github.com/hex248/sprint",
|
||||||
hidden: false,
|
hidden: false,
|
||||||
tags: ["Web", "React", "TypeScript", "Tauri", "PostgreSQL", "Databases", "Bun"],
|
tags: ["Web", "React", "TypeScript", "Tauri", "PostgreSQL", "Databases", "Bun"],
|
||||||
type: "personal",
|
type: "personal",
|
||||||
@@ -18,9 +18,9 @@ export const metadata = {
|
|||||||
|
|
||||||
<ProjectPage metadata={metadata}>
|
<ProjectPage metadata={metadata}>
|
||||||
<p class="mb-4">
|
<p class="mb-4">
|
||||||
Issue is a lightweight, self-hostable project management tool built for
|
Sprint is a lightweight, self-hostable project management tool built for
|
||||||
developers who want simplicity over complexity. Frustrated with bloated
|
developers who want simplicity over complexity. Frustrated with bloated
|
||||||
tools like Jira, I created Issue to focus on what matters: tracking tasks
|
tools like Jira, I created Sprint to focus on what matters: tracking tasks
|
||||||
within organisations and projects without the overhead. Deploy it on your
|
within organisations and projects without the overhead. Deploy it on your
|
||||||
own infrastructure for full control over your data, and access it via the
|
own infrastructure for full control over your data, and access it via the
|
||||||
web or as a native desktop application via Tauri.
|
web or as a native desktop application via Tauri.
|
||||||
@@ -59,7 +59,7 @@ export const metadata = {
|
|||||||
<div class="mt-4">
|
<div class="mt-4">
|
||||||
<h2 class="text-2xl text-ayu-accent mb-3">Architecture</h2>
|
<h2 class="text-2xl text-ayu-accent mb-3">Architecture</h2>
|
||||||
<p class="mb-4">
|
<p class="mb-4">
|
||||||
Issue uses a monorepo structure with three packages: a shared package
|
Sprint uses a monorepo structure with three packages: a shared package
|
||||||
containing database schemas and types, a backend API server running on Bun
|
containing database schemas and types, a backend API server running on Bun
|
||||||
with Drizzle ORM, and a React frontend that can be served as a web app or
|
with Drizzle ORM, and a React frontend that can be served as a web app or
|
||||||
bundled as a native desktop application with Tauri.
|
bundled as a native desktop application with Tauri.
|
||||||
@@ -70,32 +70,32 @@ export const metadata = {
|
|||||||
<h2 class="text-2xl text-ayu-accent mb-3">Screenshots</h2>
|
<h2 class="text-2xl text-ayu-accent mb-3">Screenshots</h2>
|
||||||
<div class="grid grid-cols-1 sm:grid-cols-2 gap-4">
|
<div class="grid grid-cols-1 sm:grid-cols-2 gap-4">
|
||||||
<Demo
|
<Demo
|
||||||
image="/images/issue/main-interface.png"
|
image="/images/sprint/main-interface.png"
|
||||||
title="Main interface - issues list and detail pane"
|
title="Main interface - issues list and detail pane"
|
||||||
type="boxed"
|
type="boxed"
|
||||||
/>
|
/>
|
||||||
<Demo
|
<Demo
|
||||||
image="/images/issue/selection.png"
|
image="/images/sprint/selection.png"
|
||||||
title="Organisation and project selection"
|
title="Organisation and project selection"
|
||||||
type="boxed"
|
type="boxed"
|
||||||
/>
|
/>
|
||||||
<Demo
|
<Demo
|
||||||
image="/images/issue/issue-creation.png"
|
image="/images/sprint/issue-creation.png"
|
||||||
title="Issue creation dialog"
|
title="Issue creation dialog"
|
||||||
type="boxed"
|
type="boxed"
|
||||||
/>
|
/>
|
||||||
<Demo
|
<Demo
|
||||||
image="/images/issue/issue-detail-pane-assignee-selection.png"
|
image="/images/sprint/issue-detail-pane-assignee-selection.png"
|
||||||
title="Issue detail pane with assignee selection"
|
title="Issue detail pane with assignee selection"
|
||||||
type="boxed"
|
type="boxed"
|
||||||
/>
|
/>
|
||||||
<Demo
|
<Demo
|
||||||
image="/images/issue/organisation-management.png"
|
image="/images/sprint/organisation-management.png"
|
||||||
title="Organisation management"
|
title="Organisation management"
|
||||||
type="boxed"
|
type="boxed"
|
||||||
/>
|
/>
|
||||||
<Demo
|
<Demo
|
||||||
image="/images/issue/server-configuration.png"
|
image="/images/sprint/server-configuration.png"
|
||||||
title="Server configuration (self-hosting)"
|
title="Server configuration (self-hosting)"
|
||||||
type="boxed"
|
type="boxed"
|
||||||
/>
|
/>
|
||||||