https://github.com/minhtrifit/jira-clone
Tasks Management App
https://github.com/minhtrifit/jira-clone
firebase fullstack jira nextjs task-manager
Last synced: 2 months ago
JSON representation
Tasks Management App
- Host: GitHub
- URL: https://github.com/minhtrifit/jira-clone
- Owner: minhtrifit
- Created: 2025-01-25T04:33:38.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-22T11:00:55.000Z (over 1 year ago)
- Last Synced: 2025-03-31T22:47:11.905Z (over 1 year ago)
- Topics: firebase, fullstack, jira, nextjs, task-manager
- Language: TypeScript
- Homepage: https://mtf-note.vercel.app
- Size: 1.25 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# JIRA CLONE DOCUMENTATION


# 📋 Table of Contents
1. [Technical Stack](#technical-stack)
2. [Project Showcase](#project-showcase)
3. [Project Setup](#project-setup)
1. [Firebase setup](#firebase-setup)
2. [Source code setup](#source-code-setup)
- [Next.js15](https://nextjs.org) - The React Framework for the Web
- [React.js](https://react.dev) - The library for web and native user interfaces
- [Shadcn UI](https://ui.shadcn.com) - Beautifully designed components that you can copy and paste into your apps. Accessible. Customizable. Open Source.
- [Tailwind CSS](https://tailwindcss.com) - Rapidly build modern websites without ever leaving your HTML
- [TypeScript](https://www.typescriptlang.org) - JavaScript with syntax for types.
- [Firebase](https://firebase.google.com) - Build & Run AI-Powered Apps.
- Login Screen

- Homepage

- Workspace

- Tasks Table

- Tasks Kanban

- Tasks Kanban

- [This project use Firebase for some features (Click to see basic setup).](https://mydevpa.ge/blog/how-to-setup-firebase-firestore-with-nextjs-14)
- This project doesn't have server, so you can add your own data to Firebase for testing app manually.
- This project use [Firbase Admin SDK](https://firebase.google.com/docs/admin/setup/) so you need to generate private key from `console.firebase.google.com > Project settings > Service accounts > Firebase Admin SDK`
**Make sure that you have enabled following firebase services:**
- Firestore Database (Real time database).
- Authentication (This project default use email & password only).
**Error index firestore**
Some Firebase API with get error if you haven't created index of document for example at: `app/api/workspace/user/[id]/route.ts`
```javascript
const q = query(
joinWorkspaceRef,
where("userId", "==", id),
orderBy("createdAt", "asc")
);
```
Just click a link error in your app console to direct to firebase.console and create it, for example:

⚙️ Config [.env]() file in dir with path `.env`:
```bash
NEXT_PUBLIC_API_URL=http://localhost:3000
NEXT_PUBLIC_APP_NAME=MTF Note
NEXT_PUBLIC_FIREBASE_API_KEY=
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=
NEXT_PUBLIC_FIREBASE_PROJECT_ID=
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
NEXT_PUBLIC_FIREBASE_APP_ID=
NEXT_PUBLIC_FIREBASE_PRIVATE_KEY=-----BEGIN PRIVATE KEY-----\nabc=\n-----END PRIVATE KEY-----\n
NEXT_PUBLIC_FIREBASE_CLIENT_EMAIL=
NEXT_PUBLIC_FIREBASE_WORKSPACE_COLLECTION=workspace-list
NEXT_PUBLIC_FIREBASE_WORKSPACE_JOIN_COLLECTION=workspace-join-list
NEXT_PUBLIC_FIREBASE_PROJECT_COLLECTION=project-list
NEXT_PUBLIC_FIREBASE_TASK_COLLECTION=task-list
NEXT_PUBLIC_FIREBASE_NOTIFICATION_COLLECTION=notification-list
```
📥 Installation packages:
Intall packages & dependencies (use --force tag to install conflict packages version, detail in **Conflict npm packages** topic).
```console
npm install --force
```
Or install packages with legacy peer dependencies.
```console
npm install --legacy-peer-deps
```
Run client project (supported by [Create Next App](https://nextjs.org/docs/getting-started/installation))
```console
npm run dev
```
## ▶️ YouTube Demo
[](https://youtu.be/ViMpU1KFOUM)
## 💌 Contact
- Author - [minhtrifit](https://minhtrifit-dev.vercel.app)
- [Github](https://github.com/minhtrifit)
> CopyRight© minhtrifit