Skip to content

imrajmishraa/SyntaxNote

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

75 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ““ SyntaxNote

A modern, interactive note-taking application designed for students, developers, writers, and professionals to capture ideas, organize knowledge, and create beautifully structured notes.

Live Demo: syntaxnote.appwrite.network


โœจ Features

๐ŸŽจ Interactive & Immersive UI

  • 3D Page-Flip Animation: Dynamic, physics-based page curl and flip animations on load and interaction
  • Beautiful Welcome Experience: Engaging book-style interface with paper texture and decorative elements
  • Responsive Design: Seamlessly adapts to desktop, tablet, and mobile devices

๐Ÿ“ Rich Note Management

  • Doodle Canvas: Sketch and draw directly on your notes with interactive canvas tools
  • Draggable Post-its: Create, drag, and arrange colorful sticky notes anywhere on your workspace
  • Text Editor Support: Full text editor for formatting and structuring your content
  • Rich Text Editing: Powered by TipTap editor with extensive formatting capabilities

๐Ÿ” User Authentication & Sync

  • Supabase Integration: Secure authentication and real-time database synchronization
  • User Workspace: Personalized workspace with local storage persistence
  • Cloud Sync: Automatic synchronization of notes across devices

๐ŸŽฏ Developer-Friendly Stack

  • Built with modern TypeScript for type safety
  • Next.js 16 App Router for optimal performance
  • Tailwind CSS with custom animations for beautiful styling
  • Accessible component library (shadcn/ui, Radix UI, React Aria)

๐Ÿš€ Quick Start

Prerequisites

  • Node.js 18+ and npm/pnpm/yarn
  • Git

Installation

  1. Clone the repository

    git clone https://github.com/imrajmishra/SyntaxNote.git
    cd SyntaxNote
  2. Install dependencies

    npm install
    # or
    pnpm install
    # or
    yarn install
  3. Set up environment variables Create a .env.local file in the root directory:

    NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
    NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
  4. Run the development server

    npm run dev
    # or
    pnpm dev
    # or
    yarn dev
  5. Open your browser Navigate to http://localhost:3000 and start taking notes!


๐Ÿ“ Project Structure

SyntaxNote/
โ”œโ”€โ”€ app/                    # Next.js App Router
โ”‚   โ”œโ”€โ”€ page.tsx           # Welcome/Entry page with 3D flip animation
โ”‚   โ”œโ”€โ”€ layout.tsx         # Root layout and metadata
โ”‚   โ””โ”€โ”€ globals.css        # Global styles and animations
โ”œโ”€โ”€ components/            # Reusable React components
โ”‚   โ”œโ”€โ”€ WelcomePage/       # Interactive welcome experience
โ”‚   โ”œโ”€โ”€ Loader/            # Loading states (PencilLoader)
โ”‚   โ””โ”€โ”€ ui/                # shadcn/ui components
โ”œโ”€โ”€ lib/                   # Utility functions and helpers
โ”œโ”€โ”€ utils/                 # Common utilities
โ”œโ”€โ”€ public/                # Static assets
โ”œโ”€โ”€ proxy.ts              # API proxy configuration
โ”œโ”€โ”€ tailwind.config.ts    # Tailwind CSS configuration
โ”œโ”€โ”€ tsconfig.json         # TypeScript configuration
โ””โ”€โ”€ package.json          # Project dependencies

๐Ÿ›  Tech Stack

Frontend

Editor & Markup

  • TipTap - Headless Vue-less rich text editor (v3.26.1)
  • ProseMirror - Collaborative editing foundation

Backend & Database

  • Supabase - PostgreSQL, Auth, and Real-time APIs
    • Authentication (SSR support with @supabase/ssr)
    • Real-time database synchronization
    • User management

Additional Libraries


๐Ÿ“ฆ Build & Deployment

Build for Production

npm run build
npm start

Deploy to Vercel (Recommended)

The project is optimized for Vercel:

  1. Push your code to GitHub
  2. Connect your repository to Vercel
  3. Set environment variables in Vercel dashboard
  4. Deploy with a single click

Learn more in the Next.js deployment documentation.

Other Deployment Options

  • Docker
  • Self-hosted Node.js servers
  • AWS, Google Cloud, Azure

๐ŸŽฎ Usage Guide

Taking Your First Note

  1. Visit the welcome page with the interactive book interface
  2. Click the flip button to enter your personal workspace
  3. Start typing in the Markdown editor
  4. Use drag-and-drop sticky notes for quick reminders
  5. Draw on the canvas for visual notes and sketches

Features in Action

  • Format Text: Use Markdown syntax or toolbar for bold, italic, lists, code blocks
  • Organize: Drag sticky notes to organize your workspace
  • Auto-Save: Changes are automatically saved to your workspace

๐Ÿ”’ Security & Privacy

  • End-to-End Ready: Supabase provides secure authentication
  • User Data: All notes are stored securely in Supabase PostgreSQL
  • Local Storage: Browser local storage for instant access
  • No Tracking: Privacy-focused, no analytics or third-party trackers

๐Ÿค Contributing

Contributions are welcome! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Commit your changes: git commit -m 'Add your feature'
  4. Push to the branch: git push origin feature/your-feature
  5. Open a Pull Request

Code Style

  • TypeScript for type safety
  • ESLint configuration in eslint.config.mjs
  • Tailwind CSS for styling
  • Component-based architecture

๐Ÿ“ Scripts

npm run dev      # Start development server
npm run build    # Build for production
npm start        # Start production server
npm run lint     # Run ESLint

๐Ÿ› Known Issues & Roadmap

Current Status

  • โœ… Interactive welcome experience
  • โœ… Basic note editing with Markdown
  • โœ… Sticky note management
  • โœ… User authentication
  • ๐Ÿšง Export to HTML

Future Enhancements

  • Real-time collaborative editing
  • Advanced note organization (folders, tags, search)
  • Dark mode toggle
  • Mobile app (React Native)
  • AI-powered note suggestions
  • Voice notes with transcription

๐Ÿ“„ License

This project is open source and available under the MIT License.


๐Ÿ’ฌ Support & Feedback


๐Ÿ™ Acknowledgments

  • Next.js - The React framework
  • Supabase - Open-source Firebase alternative
  • TipTap - Powerful rich text editor
  • shadcn/ui - High-quality UI components
  • Tailwind CSS - Utility-first CSS framework
  • All our amazing contributors and users!

Made with โค๏ธ by imrajmishra

โญ If you find this project helpful, please consider giving it a star!

About

Modern Markdown note-taking app for students, developers, writers, and professionals to capture ideas, organize knowledge, and create structured notes.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors