TraceIQ is a powerful, open-source error tracking system designed to help developers monitor, track, and manage errors across their applications. With real-time error tracking, detailed error analytics, and a beautiful modern interface, TraceIQ makes error management a breeze.
- Real-time Error Tracking: Capture and monitor errors as they happen
- Error Analytics: Comprehensive error statistics and trends
- Project-based Organization: Manage errors across multiple projects
- Secure Authentication: Built-in authentication and API key management
- Modern UI: Beautiful and intuitive user interface
- Responsive Design: Works seamlessly across all devices
- Real-time Updates: Live error feed and notifications
- Environment Support: Track errors across different environments
- Frontend: React + TypeScript + Vite
- Backend: Express.js
- Database: Supabase (PostgreSQL)
- State Management: Zustand
- Styling: Tailwind CSS
- Node.js 16.x or later
- npm or yarn
- Supabase account
- Clone the repository:
git clone https://github.com/daviduche03/TraceIQ.git
cd TraceIQ
- Install dependencies:
# Install backend dependencies
cd backend
npm install
# Install frontend dependencies
cd ../
npm install
-
Set up Supabase:
- Create a new project in Supabase
- Run the SQL migrations in
supabase/migrations/
to set up the database schema - Copy your project URL and service role key
-
Configure environment variables:
Create a .env
file in the backend directory:
SUPABASE_URL=your-supabase-url
SUPABASE_KEY=your-service-role-key
PORT=3000
Create a .env
file in the root directory:
VITE_SUPABASE_URL=your-supabase-url
VITE_SUPABASE_ANON_KEY=your-anon-key
- Start the development servers:
# Start backend server
cd backend
npm run dev
# In another terminal, start frontend
cd ../
npm run dev
- Visit
http://localhost:5173
to see TraceIQ in action!
TraceIQ/
├── backend/ # Express.js backend
│ ├── server.js # Main server file
│ └── package.json # Backend dependencies
├── src/ # Frontend source code
│ ├── components/ # React components
│ ├── lib/ # Utility functions and classes
│ ├── pages/ # Page components
│ └── stores/ # Zustand stores
├── supabase/ # Supabase migrations and types
└── package.json # Frontend dependencies
To integrate TraceIQ into your application:
- Create a new project in TraceIQ dashboard
- Get your project ID and API key
- Use the ErrorTracker client: (build your own client from code in lib/errorTracker.ts)
import { ErrorTracker } from '@traceiq/client';
const errorTracker = new ErrorTracker({
projectId: 'your-project-id',
apiKey: 'your-api-key'
});
try {
// Your code
} catch (error) {
errorTracker.trackError(error);
}
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Supabase for the amazing backend infrastructure
- Tailwind CSS for the styling system
- All our contributors and supporters!