Eine moderne Lernplattform für Deutsche Gebärdensprache (DGS) mit interaktivem Vokabular, Tests und strukturiertem Lernfortschritt.
A modern learning platform for German Sign Language (DGS) with interactive vocabulary, tests, and structured learning progression.
- 421 DGS Words across 10 proficiency levels
- 48 Categories organized by themes and difficulty
- Real-time Search with case-insensitive matching
- Bilingual Support (German/English)
- Detailed Descriptions Step-by-step sign explanations
- 31 Comprehensive Tests covering all levels
- 245 Questions with real vocabulary content
- Multiple Choice with immediate feedback
- Performance Tracking Score and progress analytics
- Level-based Organization Beginner to expert
- Database-driven Translations with 78 UI keys
- Language Toggle Instant switching between EN/DE
- Fallback System Graceful degradation
- SEO Friendly Proper language attributes
- Dark Theme Support Complete dark mode implementation
- Responsive Design Mobile-first approach
- Accessibility WCAG compliant with ARIA labels
- Professional Components shadcn/ui component library
- Smooth Animations Subtle micro-interactions
- Impressum Page German legal requirements
- Contact Information Professional contact details
- Privacy Policy Data protection statement
- Professional Footer Company information and links
- Live Site: dgs.bubuit.net
- GitHub: github.com/oib/DGS
- Node.js 18+
- npm or yarn
- SQLite (included)
# Clone the repository
git clone https://github.com/oib/DGS.git
cd DGS
# Install dependencies
npm install
# Setup database
npx prisma generate
npx prisma db seed
# Start development server
npm run dev- Development:
http://localhost:3100 - Production: Deploy to Vercel, Netlify, or any Node.js host
- Next.js 13+ with App Router
- TypeScript for type safety
- Tailwind CSS for styling
- shadcn/ui component library
- Lucide React icons
- SQLite database with Prisma ORM
- API Routes built into Next.js
- Edge Runtime for optimal performance
- Database-driven architecture
- ESLint for code quality
- Jest for testing
- Prisma for database management
- Service scripts for deployment
| Category | Amount | Status |
|---|---|---|
| DGS Words | 421 | ✅ Complete |
| Learning Levels | 10 | ✅ Complete |
| Tests | 31 | ✅ Complete |
| Questions | 245 | ✅ Complete |
| Translation Keys | 78 | ✅ Complete |
| API Endpoints | 5 | ✅ Complete |
| UI Components | 15+ | ✅ Complete |
dgs-platform/
├── src/app/ # Next.js App Router pages
├── src/components/ # React components
├── src/lib/ # Utility functions
├── prisma/ # Database schema and seeds
├── docs/ # Documentation
├── tests/ # Test files
├── public/ # Static assets
└── scripts/ # Development tools
- Modern gradient design with dark theme support
- Navigation to vocabulary, tests, and suggestions
- Language toggle and professional footer
- Level-based organization (1-10)
- Category filtering and search functionality
- Detailed word descriptions with bilingual support
- Multiple choice questions with real vocabulary
- Performance tracking and score display
- Level progression system
npm run dev # Start development server
npm run build # Build for production
npm run start # Start production server
npm test # Run tests
npm run lint # Run ESLintnpx prisma generate # Generate Prisma client
npx prisma db seed # Seed database with content
npx prisma studio # Open database GUI./service.sh start # Start development server
./service.sh stop # Stop server
./service.sh restart # Restart server
./service.sh status # Check status
./service.sh logs # View logsGET /api/vocabulary/level/{level}- Get vocabulary by levelGET /api/vocabulary/search?q={query}- Search vocabulary
GET /api/tests- List all testsGET /api/tests/{id}- Get specific test
GET /api/translations?lang={language}- Get UI translations
- Level 1-2: Basic communication foundation
- Level 3-4: Everyday conversations
- Level 5-6: Advanced vocabulary
- Level 7-8: Professional terminology
- Level 9-10: Expert level proficiency
- Basic Communication | Grundlegende Kommunikation
- Everyday Life | Alltagssituationen
- People & Family | Menschen & Familie
- Food & Drink | Essen & Trinken
- Time & Weather | Zeit & Wetter
- And 43 more categories | Und 43 weitere Kategorien
- Input Validation on all API endpoints
- SQL Injection Prevention via Prisma ORM
- XSS Protection with React auto-escaping
- Environment Variables for sensitive data
- TypeScript for compile-time safety
- ✅ Chrome 90+
- ✅ Firefox 88+
- ✅ Safari 14+
- ✅ Edge 90+
- ✅ Mobile browsers
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
- Author: Andreas Michael Fleckl
- Email: andreas.fleckl@bubuit.net
- Website: bubuit.net
- Address: Johnstraße 7/6, 1140 Vienna, Austria
- Next.js Team for the excellent framework
- Prisma Team for the amazing ORM
- Tailwind CSS for the utility-first CSS framework
- shadcn/ui for the beautiful component library
- German Sign Language Community for vocabulary and guidance
Made with ❤️ and Windsurf | Mit ❤️ und Windsurf gemacht