Skip to content

ULT1M4T3CK/NoteTrix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NoteTrix

An AI-powered note-taking application with Perplexity AI integration for intelligent note parsing, contact extraction, and task management.

Features

Phase 1 (MVP)

  • Basic Note Input: Clean text area with formatting support (bold, italic, bullet points)
  • Auto-save: Automatic saving every 30 seconds
  • AI-Powered Parsing: Perplexity AI integration for intelligent note analysis
  • Contact Extraction: Automatic extraction of names, phone numbers, and email addresses
  • Task Management: AI-generated to-do lists from action items in notes
  • Simple Authentication: Email/password authentication

Tech Stack

  • Frontend: React + TypeScript + TailwindCSS
  • Backend: Node.js + Express + TypeScript
  • Database: PostgreSQL
  • AI: Perplexity AI API
  • Authentication: Firebase Auth

Quick Start

Prerequisites

  • Node.js 18+
  • PostgreSQL
  • Perplexity AI API key

Installation

  1. Clone the repository:
git clone <repository-url>
cd NoteTrix
  1. Install dependencies:
npm run install:all
  1. Set up environment variables:
# Backend (.env)
cp backend/.env.example backend/.env
# Edit backend/.env with your configuration
  1. Set up the database:
cd backend
npm run db:setup
  1. Start the development servers:
npm run dev

The application will be available at:

Environment Variables

Backend (.env)

PORT=5000
DATABASE_URL=postgresql://username:password@localhost:5432/notetrix
PERPLEXITY_API_KEY=your_perplexity_api_key
JWT_SECRET=your_jwt_secret

Project Structure

NoteTrix/
├── frontend/          # React + TypeScript frontend
├── backend/           # Node.js + Express backend
├── package.json       # Root package.json with workspaces
└── README.md         # This file

API Endpoints

Authentication

  • POST /api/auth/register - User registration
  • POST /api/auth/login - User login
  • POST /api/auth/logout - User logout

Notes

  • GET /api/notes - Get all notes for user
  • POST /api/notes - Create new note
  • PUT /api/notes/:id - Update note
  • DELETE /api/notes/:id - Delete note

Contacts

  • GET /api/contacts - Get all contacts for user
  • POST /api/contacts - Create new contact

Tasks

  • GET /api/tasks - Get all tasks for user
  • PUT /api/tasks/:id - Update task (mark complete/incomplete)

Development

Running Tests

# Frontend tests
cd frontend && npm test

# Backend tests
cd backend && npm test

Building for Production

npm run build

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

MIT License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors