Skip to content

Isaac-Johnn/ai-ticket-assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“‚ Project Structure bash Copy Edit FullStack AI Agent/ β”œβ”€β”€ ai ticket assistant/ # Backend (Node.js + Express) β”œβ”€β”€ ai-ticket-frontend/ # Frontend (React + Vite) └── README.md

✨ Features 🧾 User authentication and role-based access (Admin, Moderator, User)

πŸ“ Ticket submission and tracking system

🎯 Role-specific views:

Admin: View all tickets

Moderator: View and respond to assigned tickets

User: View own tickets

πŸ€– AI enhancements:

Auto-generates helpful notes

Estimates priority and required skills

πŸ”’ Environment variables handled securely with .env

πŸš€ Getting Started

  1. Clone the repository bash Copy Edit git clone https://github.com/Isaac-Johnn/ai-ticket-assistant.git cd ai-ticket-assistant
  2. Setup Backend bash Copy Edit cd "ai ticket assistant" npm install cp .env.example .env # Set your environment variables npm start
  3. Setup Frontend bash Copy Edit cd ../ai-ticket-frontend npm install cp .env.example .env # Set your VITE_ environment variables npm run dev

πŸ” Environment Variables Create .env files in both ai ticket assistant and ai-ticket-frontend. Make sure to add:

Backend (ai ticket assistant/.env) ini Copy Edit PORT=5000 MONGO_URI=your_mongodb_uri JWT_SECRET=your_jwt_secret OPENAI_API_KEY=your_openai_key Frontend (ai-ticket-frontend/.env) bash Copy Edit VITE_API_URL=http://localhost:5000/api

πŸ› οΈ Tech Stack Frontend:

React + Vite

Axios

React Router

Backend:

Node.js + Express

MongoDB + Mongoose

JSON Web Tokens (JWT)

Inngest (for background job processing)

OpenAI API

πŸ“¦ Folder Breakdown Backend (ai ticket assistant) controllers/: Ticket & user logic

routes/: API endpoints

models/: Mongoose schemas

utils/: Mailer and AI logic

middlewares/: Auth middleware

inngest/: Event-driven background jobs

Frontend (ai-ticket-frontend) pages/: Route-level components

components/: Reusable UI elements

assets/: Icons and styles

πŸ§ͺ Future Improvements Admin dashboard analytics

Chat-based ticket updates

File attachments

Slack/email integrations

Full testing suite

FullStack AI Agent
β”œβ”€ ai ticket assistant
β”‚  β”œβ”€ .env
β”‚  β”œβ”€ controllers
β”‚  β”‚  β”œβ”€ ticket.js
β”‚  β”‚  └─ user.js
β”‚  β”œβ”€ index.js
β”‚  β”œβ”€ inngest
β”‚  β”‚  β”œβ”€ client.js
β”‚  β”‚  └─ functions
β”‚  β”‚     β”œβ”€ on-signup.js
β”‚  β”‚     └─ on-ticket-create.js
β”‚  β”œβ”€ middlewares
β”‚  β”‚  └─ auth.js
β”‚  β”œβ”€ models
β”‚  β”‚  β”œβ”€ ticket.js
β”‚  β”‚  └─ user.js
β”‚  β”œβ”€ package-lock.json
β”‚  β”œβ”€ package.json
β”‚  β”œβ”€ routes
β”‚  β”‚  β”œβ”€ ticket.js
β”‚  β”‚  └─ user.js
β”‚  └─ utils
β”‚     β”œβ”€ ai.js
β”‚     └─ mailer.js
β”œβ”€ ai-ticket-frontend
β”‚  β”œβ”€ .env
β”‚  β”œβ”€ eslint.config.js
β”‚  β”œβ”€ index.html
β”‚  β”œβ”€ package-lock.json
β”‚  β”œβ”€ package.json
β”‚  β”œβ”€ public
β”‚  β”‚  └─ vite.svg
β”‚  β”œβ”€ README.md
β”‚  β”œβ”€ src
β”‚  β”‚  β”œβ”€ assets
β”‚  β”‚  β”‚  └─ react.svg
β”‚  β”‚  β”œβ”€ components
β”‚  β”‚  β”‚  β”œβ”€ check-auth.jsx
β”‚  β”‚  β”‚  └─ navbar.jsx
β”‚  β”‚  β”œβ”€ index.css
β”‚  β”‚  β”œβ”€ main.jsx
β”‚  β”‚  └─ pages
β”‚  β”‚     β”œβ”€ admin.jsx
β”‚  β”‚     β”œβ”€ login.jsx
β”‚  β”‚     β”œβ”€ signup.jsx
β”‚  β”‚     β”œβ”€ ticket.jsx
β”‚  β”‚     └─ tickets.jsx
β”‚  └─ vite.config.js
└─ README.md

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages