{"id":16197909,"url":"https://github.com/mynameisjeff-305/ticket-flow","last_synced_at":"2025-10-11T05:15:09.593Z","repository":{"id":257615978,"uuid":"858784683","full_name":"MyNameIsJeff-305/ticket-flow","owner":"MyNameIsJeff-305","description":"TicketFlow is a streamlined ticket management app built for IT businesses. It simplifies the handling of support requests with real-time tracking, easy-to-use workflows, and detailed reporting. TicketFlow helps IT teams stay organized, resolve issues faster, and deliver top-notch service, ensuring a smooth support experience from start to finish.","archived":false,"fork":false,"pushed_at":"2025-09-29T14:15:30.000Z","size":6090,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-29T16:19:03.932Z","etag":null,"topics":["expressjs","javascript","react","redux","sequelize-orm","ticketing-system"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MyNameIsJeff-305.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-09-17T14:27:29.000Z","updated_at":"2025-09-29T14:15:33.000Z","dependencies_parsed_at":"2024-09-17T19:29:24.097Z","dependency_job_id":"f0c1943d-2e27-44b0-a01f-4eb651b37e18","html_url":"https://github.com/MyNameIsJeff-305/ticket-flow","commit_stats":null,"previous_names":["mynameisjeff-305/ticket-flow"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MyNameIsJeff-305/ticket-flow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyNameIsJeff-305%2Fticket-flow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyNameIsJeff-305%2Fticket-flow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyNameIsJeff-305%2Fticket-flow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyNameIsJeff-305%2Fticket-flow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MyNameIsJeff-305","download_url":"https://codeload.github.com/MyNameIsJeff-305/ticket-flow/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MyNameIsJeff-305%2Fticket-flow/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279006353,"owners_count":26084084,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-11T02:00:06.511Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["expressjs","javascript","react","redux","sequelize-orm","ticketing-system"],"created_at":"2024-10-10T09:10:07.255Z","updated_at":"2025-10-11T05:15:09.586Z","avatar_url":"https://github.com/MyNameIsJeff-305.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ticket Flow\n\n\u003ca href=\"https://ticket-flow-rrfx.onrender.com/\"\u003eLive Demo\u003c/a\u003e\n\n![splash-1]\n\n[splash-1]: ./images/splash-1.png\n\nTicket Flow is an IT Ticketing System designed to streamline the management of IT service tickets. This app allows businesses to efficiently manage tickets, clients, and technicians, ensuring smooth operations for IT support companies. It includes features like client management, ticket categorization, and an event ledger for tracking tasks and notes related to tickets.\n\n## Features\n\n- **Ticket Management**: Create, edit, and manage tickets with ease. Tickets are categorized into new, pending, and closed statuses.\n![Dashboard]\n\n[Dashboard]: ./images/ticketflow.png\n- **Client Management**: Add, edit, and store client information with support for profile image uploads.\n![ClientTab]\n\n[ClientTab]: ./images/ClientTab.png\n\n- **Add Notes and Parts to the Tickets**: Add, edit, and remove Notes and Parts on every ticket.\n![TicketDetails]\n\n[TicketDetails]: ./images/TicketDetails.png\n\n- **Theme Support**: Light and dark themes for a customizable user experience.\n![Theme]\n\n[Theme]: ./images/Theme.png\n\n- **Performance**: Efficient data fetching with Redux for dynamic updates and smooth user interactions.\n\n## Technologies Used\n\n### **Frontend**: \n![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge\u0026logo=react\u0026logoColor=%2361DAFB)\n![Redux](https://img.shields.io/badge/redux-%23593d88.svg?style=for-the-badge\u0026logo=redux\u0026logoColor=white)\n\n### **Backend**:\n![Express.js](https://img.shields.io/badge/express.js-%23404d59.svg?style=for-the-badge\u0026logo=express\u0026logoColor=%2361DAFB)\n![Sequelize](https://img.shields.io/badge/Sequelize-52B0E7?style=for-the-badge\u0026logo=Sequelize\u0026logoColor=white)\n\n### **Database**:\n![SQLite](https://img.shields.io/badge/sqlite-%2307405e.svg?style=for-the-badge\u0026logo=sqlite\u0026logoColor=white)\n![Postgres](https://img.shields.io/badge/postgres-%23316192.svg?style=for-the-badge\u0026logo=postgresql\u0026logoColor=white)\n\n### **Storage**:\n![AWS](https://img.shields.io/badge/AWS-%23FF9900.svg?style=for-the-badge\u0026logo=amazon-aws\u0026logoColor=white)\n\n### **Styling**:\n![CSS3](https://img.shields.io/badge/css3-%231572B6.svg?style=for-the-badge\u0026logo=css3\u0026logoColor=white)\n\n### **Deployment**:\n![Render](https://img.shields.io/badge/Render-%46E3B7.svg?style=for-the-badge\u0026logo=render\u0026logoColor=white)\n\n## Installation\n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/MyNameIsJeff-305/ticket-flow.git\n2. Navigate to the project directory:\n    ```bash\n    cd ticket-flow\n3. Create a **.env** file. Fill it using the **.env.example** file. For setting up the **AWS_ACCESS_KEY_ID** and **AWS_SECRET_ACCESS_KEY** setup an AWS S3 Bucket:\n    ```bash\n    PORT=8000\n    DB_FILE=db/dev.db\n    JWT_SECRET=\u003cyour-secret-key\u003e\n    JWT_EXPIRES_IN=604800\n    SCHEMA=\u003cyour-schema-name\u003e\n\n    AWS_ACCESS_KEY_ID=\u003cyour-access-key-id\u003e\n    AWS_SECRET_ACCESS_KEY=\u003cyour-secret-access-key\u003e\n\n4. Install dependencies on backend:\n    ```bash\n    cd backend\n    npm install\n5. Migrate and seed the database (for dev purposes we will use sqlite):\n    ```bash\n    npx dotenv sequelize db:migrate\n    npx dotenv sequelize db:seed:all\n6. Start the backend Server:\n    ```bash\n    npm start\n7. Open a new terminal and CD into frontend folder and install dependencies:\n    ```bash\n    cd ..\n    cd frontend\n    npm install\n8. Run the Frontend in Dev Mode\n    ```bash\n    npm run dev\n## Usage\n\n### Add a Client: \nUse the AddClient component to register new clients and upload profile images.\n\n### Create a Ticket:\n Create tickets using the AddTicket component. Tickets can be assigned to employees.\n\n### Track Ticket Status: \nView ticket statuses (new, pending, closed) on the dashboard.\n\n### View and Manage Tickets: \nUse the TicketDetails component to view detailed ticket information, including events and notes.\n\n## Future Improvements\n\n### Client Login for Ticket Status Tracking:\nImplement a second authentication for Clients in order for them to track the status of the tickets.\n\n### AI-powered Suggestions: \nImplement AI to suggest solutions or best practices for handling tickets.\nAdvanced Reporting: Generate reports based on ticket data to analyze performance and trends.\n\n### Calendar and Check-in/Check-out feature:\nImplement a Calendar View in order to track the date and time a ticket is handled.\n\n### Mobile App: \nExtend functionality to a mobile application for on-the-go ticket management.\n\n## Contributing\nContributions are welcome! Please fork the repository and create a pull request for any feature requests, improvements, or bug fixes.\n\n## Contact\nFor questions or feedback, please contact Michel Garcia Ribalta at michelgarcia950528@icloud.com.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmynameisjeff-305%2Fticket-flow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmynameisjeff-305%2Fticket-flow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmynameisjeff-305%2Fticket-flow/lists"}