IntelPedia Open Source is a comprehensive AI tools directory platform built with Next.js 15 and TypeScript. This open-source version provides a complete foundation for building your own AI tools directory, featuring modern web technologies, robust admin dashboard, and integration with headless CMS.
π Star this repo if you find it useful and want to support open-source development!
- Curated Collection: Organize AI tools across multiple categories
- Advanced Search & Filtering: Full-text search with tag and pricing filters
- Tool Submission System: Community-driven tool discovery
- Admin Dashboard: Complete CRUD operations for tool management
- Featured Tools System: Highlight important tools
- Free Tools: Completely free AI tools
- Freemium Models: Tools with free tiers and premium options
- Paid Solutions: Professional AI tools with transparent pricing
- Flexible Pricing Display: Customizable pricing models
- Tool Management: Full CRUD operations
- Pending Submissions: Review and approve community contributions
- Bulk Operations: Efficiently manage large tool datasets
- Authentication System: Secure admin access
- Headless CMS Integration: Ready for Wisp CMS or alternatives
- SEO Optimized: Complete meta tags and structured data
- Dynamic Sitemaps: Auto-generated XML sitemaps
- Blog System Ready: Integrated blog infrastructure
- ISR (Incremental Static Regeneration): Optimal performance
- Server Components: Next.js 15 App Router with Server Components
- Advanced SEO: Schema.org markup, OpenGraph, Twitter cards
- Core Web Vitals Optimized: Google performance metrics ready
- Responsive Design: Mobile-first approach
- Dark/Light Mode: System-aware theme switching
- Shadcn UI: Modern, accessible components
- Tailwind CSS: Utility-first styling
- Framework: Next.js 15 with App Router & Server Components
- Language: TypeScript for type safety
- Database: MongoDB with Mongoose ODM
- Styling: Tailwind CSS + Shadcn UI
- Authentication: JWT-based admin authentication
- Validation: Zod for runtime type validation
- Deployment: Vercel-ready configuration
- Node.js 18.0 or later
- MongoDB instance (local or cloud)
- Git
Note: This project uses React 19. Some dependencies may require
--legacy-peer-deps
during installation until they fully support React 19.
-
Clone the repository
git clone https://github.com/Gitnaseem745/intelpedia-os.git cd intelpedia-os
-
Install dependencies
npm install --legacy-peer-deps # or yarn install
-
Environment Setup
cp .env.example .env.local
Edit
.env.local
with your configurations:# Required MONGODB_URI=mongodb://localhost:27017/intelpedia JWT_SECRET=your-jwt-secret-here ADMIN_PASSWORD=your-bcrypt-hashed-password # Optional (for production) NEXT_PUBLIC_BASE_URL=http://localhost:3000 NEXT_PUBLIC_GA_ID=your-google-analytics-id
-
Run the development server
npm run dev
-
Visit your application
- Main site: http://localhost:3000
- Admin dashboard: http://localhost:3000/admin
- Tools directory: http://localhost:3000/tools
src/
βββ app/ # Next.js App Router
β βββ (pages)/ # Public pages
β β βββ tools/ # Tools directory & detail pages
β β βββ submit-tool/ # Tool submission form
β β βββ blog/ # Blog pages (CMS integration)
β βββ admin/ # Admin dashboard
β β βββ tools/ # Tool management interface
β βββ api/ # API endpoints
β β βββ tools/ # Tools CRUD operations
β β βββ auth/ # Authentication endpoints
β βββ (sitemaps)/ # Dynamic sitemap generation
βββ components/ # Reusable UI components
β βββ ui/ # Shadcn UI components
β βββ admin/ # Admin-specific components
β βββ forms/ # Form components
βββ lib/ # Utility functions
β βββ db.ts # Database connection
β βββ auth-utils.ts # Authentication utilities
β βββ validation.ts # Validation schemas
βββ models/ # MongoDB/Mongoose models
βββ config/ # Configuration files
The platform supports MongoDB. Update your .env.local
:
# Local MongoDB
MONGODB_URI=mongodb://localhost:27017/intelpedia
# MongoDB Atlas (cloud)
MONGODB_URI=mongodb+srv://username:[email protected]/database
-
Generate admin password hash:
const bcrypt = require('bcryptjs'); const hash = bcrypt.hashSync('your-password', 12); console.log(hash);
-
Add to environment:
ADMIN_PASSWORD=your-bcrypt-hash-here JWT_SECRET=your-random-jwt-secret
The platform is designed to work with headless CMS. For Wisp CMS integration:
NEXT_PUBLIC_BLOG_ID=your-wisp-blog-id
- Connect your repository to Vercel
- Add environment variables in Vercel dashboard
- Deploy automatically on git push
npm run build
npm run start
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Make your changes
- Add tests if applicable
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
- Use TypeScript for all new code
- Follow the existing code style
- Run
npm run lint
before committing - Write meaningful commit messages
GET /api/tools
- Get all tools with filteringPOST /api/tools
- Create new tool (admin only)GET /api/tools/[id]
- Get specific toolPUT /api/tools/[id]
- Update tool (admin only)DELETE /api/tools/[id]
- Delete tool (admin only)
POST /api/auth/login
- Admin loginPOST /api/auth/logout
- Admin logoutGET /api/auth/verify
- Verify admin token
Please use GitHub Issues to report bugs or request features.
This project is licensed under the MIT License - see the LICENSE file for details.
- Next.js - The React framework for production
- Shadcn UI - Beautiful and accessible components
- Tailwind CSS - Utility-first CSS framework
- MongoDB - NoSQL database
- π§ Email: [email protected]
- π Issues: GitHub Issues
Built with β€οΈ for the open-source community
β Don't forget to star this repository if you found it helpful!