Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ajeasmith/jira-nextjs-hono
Jira Clone by YT Code with Antonio - Project Reference Guide
https://github.com/ajeasmith/jira-nextjs-hono
appwrite hono nextjs15 react-hook-form react-query zod
Last synced: about 1 month ago
JSON representation
Jira Clone by YT Code with Antonio - Project Reference Guide
- Host: GitHub
- URL: https://github.com/ajeasmith/jira-nextjs-hono
- Owner: AjeaSmith
- Created: 2024-11-14T18:32:04.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-11-16T06:44:36.000Z (about 1 month ago)
- Last Synced: 2024-11-16T07:27:22.652Z (about 1 month ago)
- Topics: appwrite, hono, nextjs15, react-hook-form, react-query, zod
- Language: TypeScript
- Homepage:
- Size: 250 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Jira Clone by YT Code with Antonio - Project Reference Guide
### Tech stack: Next, ReactQuery, Appwrite, and HonoThe project is organized into features (auth, users, etc.) Within the ``features`` folder, each feature will have
- ``api`` folder for the react query hooks that makes API calls
- ``components`` folder, for the relevant components needed.
- ``server`` folder, that defines the API routes for the feature**ReactQuery** and **Hono** provides end-to-end type-safety in this project. RQ(frontend) Hono(backend).
**Note to self:** ```api/[[...route]]/route.ts``` is a catch all route for Nextjs to direct routes to be handled by **Hono**
## Auth Section (Sign in and Sign up)
- Used Shadcn for form components
- Validated form using Zod on FE
- Use react query for making type-safe API calls to server
- Session middlware is called to check if user is logged in. It also sets the current user in context (c) to use within route endpoint. see ```session-middlware.ts``` and ```auth/server/route.ts```
- Protect sign-in and sign-up routes if user already exist
- Protect home route if user doesn't exist## Dashboard
- Made dashboard layout responsive on all screen sizes
- Repsonsive open and close sidebar, routing to desired pages.## Workspace Form
- Uses shadcn/react-hook-form with zod for handling form submission
- Implement the creating a workspace server route
- Render success and error messages with toaster