Skip to content

onoja123/knowledge-sweeper

Repository files navigation

Knowledge Sweeper Frontend

Overview

Knowledge Sweeper is an application for syncing, organizing, searching, and analyzing messages from Discord and Slack. It provides a beautiful dashboard, onboarding wizard, OAuth integration, and advanced search powered by a robust backend. Built with Next.js, React, TypeScript, Zustand, and Tailwind CSS.

Features

  • Discord and Slack OAuth authentication
  • Guided onboarding and profile management
  • Real-time dashboard with stats and activity
  • Message search, filtering, and semantic highlights
  • Collection management and message organization
  • Responsive, accessible UI with modern design
  • Robust error handling and notifications

Technologies

  • Next.js (App Router)
  • React
  • TypeScript
  • Zustand (state management)
  • Axios (API requests)
  • Tailwind CSS (UI)
  • Lucide (icons)

Setup

Prerequisites

  • Node.js >= 16
  • Backend API (see backend setup)
  • Discord and Slack developer credentials

Installation

git clone https://github.com/onoja123/knowledge-sweeper.git
cd knowledge-sweeper
npm install

Environment Variables

Create a .env.local file in the root directory and set:

NEXT_PUBLIC_API_URL=http://localhost:4000/api/v1

Running Locally

npm run dev

Folder Structure

  • src/app — Next.js app directory (pages, layouts, routes)
  • src/components — Shared UI components (Toast, Nav, NotFound)
  • src/services — API and backend service logic
  • src/types — TypeScript types and interfaces
  • src/store — Zustand state management
  • src/utils — Utility functions

API Integration

The frontend communicates with the backend via RESTful API endpoints for:

  • Discord and Slack OAuth flows
  • Message sync and search
  • Collection management
  • User onboarding and profile

Code Style & Linting

  • ESLint, Prettier, and EditorConfig for consistent code style
  • All TypeScript types are centralized in src/types
  • Run npm run lint before submitting a PR

Contributing

  1. Fork the repo
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

License

MIT

Maintainers

Troubleshooting

  • Ensure your backend is running and API URL is set correctly in .env.local
  • For OAuth, use valid Discord/Slack credentials and redirect URIs

Contact

For support, open an issue or contact the maintainers.

About

An application for syncing, organizing, searching, and analyzing messages from Discord and Slack

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages