Skip to content

discuno/discuno

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

367 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Discuno

🚀 Modern Scheduling & Mentorship Platform

A professional monorepo built with Next.js, pnpm workspaces, and Cal.com integration

MIT License CI TypeScript Next.js React pnpm Turborepo

FeaturesQuick StartTech StackContributingDocumentation


✨ Features

  • 📅 Seamless Scheduling - Cal.com integration for professional booking management
  • 👥 Mentorship Platform - Connect mentors and mentees with advanced matching
  • 🔐 Secure Authentication - better-auth with email OTP + Google & Microsoft OAuth
  • 📱 Mobile-First Design - Responsive UI built with Tailwind CSS & Radix UI
  • 🧪 Full Test Coverage - Comprehensive testing with Vitest & Testing Library
  • 🚀 Performance Optimized - Turbo builds, server components, and edge functions
  • 🎨 Modern UI - Beautiful and responsive interface with Tailwind CSS & Radix UI
  • 📊 Database Integration - Type-safe queries with Drizzle ORM

🏗️ Monorepo Structure

discuno/
├── apps/
│   └── web/                 # Main Next.js application
│       ├── src/
│       │   ├── app/         # App Router routes, APIs, and server actions
│       │   ├── components/  # UI primitives and business components
│       │   ├── lib/         # Shared utilities, providers, integrations
│       │   ├── server/      # Auth DAL, Drizzle schema, queries, ranking
│       │   │   ├── __tests__/  # Test setup & global configuration
│       │   │   └── db/      # Drizzle schema & database utilities
│       │   └── styles/      # Tailwind tokens and global styles
│       ├── scripts/         # Database and environment scripts
│       └── public/          # Static assets
├── drizzle.*.config.ts      # Root-level Drizzle configs (all environments)
├── .github/                 # GitHub Actions & templates
├── docs/                    # Documentation
└── [config files]          # Monorepo configuration (Turbo, TypeScript, etc.)

🚀 Quick Start

Prerequisites

  • Node.js 20+ (LTS recommended)
  • pnpm 8+ (package manager)
  • Git for version control

Installation

# Clone the repository
git clone https://github.com/discuno/discuno.git
cd discuno

# Install dependencies
pnpm install

# Start all packages in development
pnpm dev

Development Workflow

# Build the application
pnpm build

# Run quality checks
pnpm lint         # ESLint check
pnpm typecheck    # TypeScript validation
pnpm test         # Run test suites
pnpm format       # Format code with Prettier

# Database operations
pnpm db:generate  # Generate Drizzle schema for the default environment
pnpm db:push      # Push schema changes to the active database
pnpm db:studio    # Open Drizzle Studio (use db:studio:<env> for scoped access)

📦 Application

Main Application - Full-featured Next.js app with:

  • 🔐 better-auth session management (email OTP + Google/Microsoft OAuth)
  • 📊 Drizzle ORM + PostgreSQL/Railway
  • 📅 Cal.com scheduling integration
  • 🎨 Tailwind CSS + Radix UI
  • 📱 Responsive design system
  • 🔍 Advanced search & filtering

🛠️ Tech Stack

Core Technologies
  • Monorepo: pnpm workspaces + Turborepo
  • Frontend: Next.js 15 (App Router), React 19
  • Language: TypeScript (strict mode)
  • Styling: Tailwind CSS 4, Radix UI primitives
  • Database: Drizzle ORM, PostgreSQL (Railway)
  • Authentication: better-auth (Drizzle adapter, email OTP, OAuth)
  • Build System: Turbo
Development Tools
  • Testing: Vitest, Testing Library, Playwright (E2E)
  • Linting: ESLint, TypeScript ESLint
  • Formatting: Prettier, Tailwind Prettier plugin
  • Git Hooks: Husky, lint-staged, Commitlint
  • CI/CD: GitHub Actions, Dependabot
  • Package Management: pnpm (fast, efficient)
Infrastructure & Deployment
  • Platform: Vercel (optimized for Next.js)
  • Database: Railway (PostgreSQL), Redis (caching)
  • CDN: Vercel Edge Network
  • Monitoring: Sentry error tracking
  • Analytics: Vercel Analytics
  • Email: Resend transactional delivery

🤝 Contributing

We welcome contributions from the community! Please see our Contributing Guide for detailed information on:

  • 🔧 Development setup
  • 📝 Coding standards
  • 🧪 Testing requirements
  • 📋 Pull request process
  • 🐛 Bug reporting
  • 💡 Feature requests

Quick Contribution Checklist

  • Fork the repository
  • Create a feature branch (git checkout -b feature/amazing-feature)
  • Make your changes
  • Add tests for new functionality
  • Ensure all checks pass (pnpm lint && pnpm typecheck && pnpm test)
  • Commit with conventional format (feat: add amazing feature)
  • Push and create a Pull Request

📋 Roadmap

Upcoming Features
  • 📚 Storybook integration for component documentation
  • 🌍 Internationalization (i18n) support
  • 📊 Advanced analytics dashboard
  • 🔔 Real-time notifications system
  • 🎯 Advanced matching algorithms
  • 📱 Mobile app (React Native)
  • 🤖 AI-powered scheduling suggestions

📄 Documentation

📊 Project Stats

  • Languages: TypeScript, JavaScript, CSS
  • Dependencies: Modern, well-maintained libraries
  • Test Coverage: Comprehensive test suites
  • Bundle Size: Optimized for performance

📞 Support & Community

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


✨ Sponsorship

We are proud to be sponsored by Cal.com, the scheduling infrastructure for everyone.

Book us with Cal.com

Made with ❤️ by the Discuno Team

⭐ Star us on GitHub if this project helped you!

About

Open source mentorship platform connecting high school students and college mentors, with built-in scheduling, video, and payments.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors