A modern, full-featured issue tracking system built with Next.js and integrated with Google Authentication. This system helps teams manage and track issues, bugs, and tasks efficiently.
issue-tracker-alpha-ten.vercel.app
-
- Visual representation of issues by status (Open, In Progress, Closed)
- Quick statistics and metrics
- Latest issues overview
-
- Filter issues by status
- Sort by issue title, creation date, and status
- Pagination support
-
- Create, read, update, and delete issues
- Rich text editor with Markdown support
- Issue assignment to team members
-
- Secure Google OAuth integration
- Next.js 13
- Zod
- React hook form
- React query
- Radix UI
- easymde
- recharts
- MySQL
- Prisma ORM
- Google OAuth Provider
- NextAuth.js
- Node.js (v18 or higher)
- npm/yarn
- MySQL database
- Google Cloud Console account
- Clone the repository
git clone https://github.com/yourusername/issue-tracker.git
cd issue-tracker
- Install dependencies
npm install
- Set up environment variables
cp .env.example .env
Add the following variables to your .env
file:
DATABASE_URL="mysql://user:password@localhost:3306/issue_tracker"
GOOGLE_CLIENT_ID=your_client_id
GOOGLE_CLIENT_SECRET=your_client_secret
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=your_nextauth_secret
- Initialize the database
npx prisma migrate dev
- Start the development server
npm run dev
- Go to Google Cloud Console
- Create a new project
- Enable Google OAuth 2.0 API
- Configure OAuth consent screen
- Create credentials (OAuth client ID)
- Add authorized JavaScript origins:
- http://localhost:3000 (for development)
- https://your-production-domain.com (for production)
- Add authorized redirect URIs:
- http://localhost:3000/api/auth/callback/google (for development)
- https://your-production-domain.com/api/auth/callback/google (for production)
- Copy the client ID and secret to your
.env
file - Add test account in Google Cloud Console