KarmOS is a distraction-free, learning-focused platform designed to help users stay engaged and uninterrupted. It eliminates advertisements, attention-grabbing bots, and unnecessary distractions, allowing you to focus solely on learning through lectures, tutorials, and documentation.
KarmOS creates an environment free from brainrots (distractions) by providing:
- Ad-free browsing
- No attention-grabbing bots
- A focus on educational materials like lectures, tutorials, and documents
Designed with love by KintsugiDevStudios.
- Distraction-Free Dashboard: Access all resources without interruptions.
- Customizable Learning Experience:
- Theme switching (dark/light mode)
- UI personalization with intuitive design
- Content Organization:
- Tutorials grouped by categories
- Advanced sidebar navigation
- Built-In Tools:
- Collapsible containers
- Scroll animations
- User avatar management
- Responsive Design:
- Optimized for mobile and desktop use
- No Advertisements: A clean interface for focused learning.
- Framework: Next.js 14
- Styling: TailwindCSS
- Language: TypeScript
- UI Components: ShadcnUI
To set up the project locally:
-
Clone the Repository:
git clone https://github.com/your-username/karmos.git cd karmos
-
Install Dependencies:
npm install
-
Run the Development Server:
npm run dev
The application will be accessible at
http://localhost:3000
.
- Navigate to the dashboard:
/dashboard
. - Explore categorized tutorials, lectures, and resources.
- Customize your experience with theme options and preferences.
.
├── app/
│ ├── dashboard/
│ │ ├── page.tsx # Main dashboard page
│ │ └── tuts/
│ │ └── [slug]/
│ │ └── page.tsx # Tutorial pages by slug
│ ├── layout.tsx # Global layout
│ ├── globals.css # Global styles
│ └── page.tsx # Landing page
├── components/
│ ├── ui/ # Reusable UI components
│ ├── buttons/ # Button components
│ ├── Nav.tsx # Navigation bar
│ ├── theme-provider.tsx # Theme switching logic
│ └── toggle-dark.tsx # Dark mode toggle
├── data/
│ ├── linksdict.json # Links metadata
│ ├── videosdict.json # Video metadata
│ └── rough.json # Placeholder data
├── hooks/
│ └── use-mobile.tsx # Custom mobile detection hook
├── lib/
│ └── utils.ts # Utility functions
├── public/
│ ├── adv1.png # Advertisement placeholder
│ ├── android-chrome-192x192.png
│ ├── favicon.ico
│ └── apple-touch-icon.png
├── tailwind.config.ts # TailwindCSS configuration
└── tsconfig.json # TypeScript configuration
We welcome contributions from the community! Please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add your message"
- Push to the branch:
git push origin feature-name
- Open a Pull Request.