Autotrics is a full-stack vehicle management web application that helps car owners manage their vehicles in one place—track cars, view dashboard insights, get maintenance reminders/alerts, receive notifications, chat in-app, and access a smart assistant powered by Google GenAI.
-
Authentication & Account Security
- Sign up / sign in
- JWT-based authentication
- Account verification and password recovery flows
-
Vehicle Management
- Add and manage cars
- View vehicle-related details and activities
-
Dashboard & Insights
- Dashboard overview
- Warning lights/dashboard pages for quick interpretation
-
Reminders, Notifications & Automation
- Create and manage reminders
- Scheduled background tasks with node-cron
- Email notifications using Nodemailer
-
Chat & Smart Assistant
- Chat module (routes + controller)
- Smart assistant interface and integration using @google/genai
-
API Documentation
- Swagger UI documentation (when enabled/configured)
- Backend: Node.js, Express.js
- Frontend: EJS templates + static assets
- Database: MySQL (
mysql2) - Auth: JSON Web Tokens (
jsonwebtoken) - Automation:
node-cron - Email:
nodemailer - Validation:
express-validator - Docs:
swagger-ui-express
autotrics/
├── public/
│ └── assets/
│ ├── bundle.js
│ └── style.css
├── src/
│ ├── controllers/
│ │ ├── auth.controller.js
│ │ ├── car.controller.js
│ │ ├── chat.controller.js
│ │ ├── cron.service.controller.js
│ │ ├── dashboard.controller.js
│ │ ├── notification.controller.js
│ │ ├── reminder.controller.js
│ │ └── view.controller.js
│ ├── middleware/
│ ├── routes/
│ │ ├── auth.js
│ │ ├── car.js
│ │ ├── chat.js
│ │ ├── dashboard.js
│ │ ├── notification.js
│ │ ├── reminder.js
│ │ └── view.js
│ ├── services/
│ ├── utils/
│ ├── validations/
│ └── views/
├── autotricks.sql
├── index.js
├── .env
└── package.json
## Prerequisites
- Node.js (v18+ recommended)
- npm
- MySQL (local or cloud instance)