A clean, distraction-free article reading application that lets you save and read articles from the web with a beautiful, customizable reading experience.
- Clean Reading Experience: Distraction-free interface for comfortable reading
- Article Parsing: Save articles from any website using Mozilla's Readability engine
- User Accounts: Secure authentication system to access your article library
- Customizable Settings: Adjust font size, font family, line height, and text alignment
- Image & Video Control: Toggle visibility of images and videos within articles
- Article Summarization: Generate concise summaries of articles using OpenRouter.ai with the Mistral 7B Instruct model
- Foundation: Create T3 App - The best way to start a full-stack, typesafe Next.js app
- Framework: Next.js 15 - React framework with App Router
- Language: TypeScript - Type-safe JavaScript
- Database: SQLite with Prisma ORM
- Authentication: Custom JWT-based auth with jose
- Styling: Tailwind CSS - Utility-first CSS framework
- API: tRPC - End-to-end typesafe APIs
- Content Parsing: Mozilla Readability - Article extraction
- DOM Sanitization: DOMPurify - XSS protection
- State Management: React Context and Hooks
- UI Components: Custom components with Heroicons
- Fonts: Google Fonts (Nunito, PT Serif, PT Sans)
- AI Integration: OpenRouter.ai with Mistral 7B Instruct model for article summarization
- Package Manager: Bun - Fast JavaScript runtime and package manager
- User Authentication: The app uses JWT tokens stored in HTTP-only cookies for secure authentication.
- Article Parsing: When a user adds a new article URL, the server fetches the content, processes it with Mozilla's Readability, and sanitizes HTML with DOMPurify.
- Data Storage: Articles are stored in a SQLite database through Prisma ORM, associated with the user's account.
- User Settings: Reading preferences (font size, family, etc.) are persisted to both localStorage and the server.
- Rendering: The content is rendered with custom React components that prioritize readability and accessibility.
- Article Summarization: Users can generate concise summaries of articles directly in the reading view, powered by OpenRouter.ai's Mistral 7B Instruct model.
- Dark Theme: Implementation of dark mode for comfortable nighttime reading
- Mobile Version: Responsive design optimized for mobile devices
- Video Display: Enhanced support for video content within articles
- Chrome Extension: Browser extension for easy article saving
- Article Organization: Improved management and sorting of saved articles
- Tags: Support for tagging articles for better categorization
- Folders: Ability to organize articles into custom folders
- Highlights: Feature to highlight and save important parts of articles
- Reading Progress: Automatic bookmarking to continue reading from where you left off
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the Business Source License 1.1 (BUSL-1.1)
- Mozilla Readability for the article parsing technology
- Next.js for the React framework
- Tailwind CSS for styling
- Prisma for database access
- tRPC for type-safe APIs
- OpenRouter.ai for AI model access
