https://github.com/romanslack/skema
Skema is a clean, AI-integrated productivity dashboard that unifies idea management, scheduling, and journaling into one seamless interface. Built with a modern Next.js + FastAPI stack and powered by OpenAI, Skema lets you create and organize entries via natural language—typed or spoken.
https://github.com/romanslack/skema
Last synced: 9 months ago
JSON representation
Skema is a clean, AI-integrated productivity dashboard that unifies idea management, scheduling, and journaling into one seamless interface. Built with a modern Next.js + FastAPI stack and powered by OpenAI, Skema lets you create and organize entries via natural language—typed or spoken.
- Host: GitHub
- URL: https://github.com/romanslack/skema
- Owner: RomanSlack
- License: mit
- Created: 2025-07-06T01:35:10.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-07-13T16:40:29.000Z (12 months ago)
- Last Synced: 2025-07-13T17:23:04.438Z (12 months ago)
- Language: Python
- Size: 202 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Skema
[](https://nextjs.org/)
[](https://fastapi.tiangolo.com/)
[](https://postgresql.org/)
[](https://typescriptlang.org/)
[](https://docker.com/)
[](https://opensource.org/licenses/MIT)

A modern productivity platform that unifies task management, calendar scheduling, journaling, and AI-powered assistance into a single, elegant application.
[](https://youtu.be/WxA-utyliIw)
## Tech Stack
**Frontend:** Next.js 15 + React 19 + TypeScript + Tailwind CSS
**Backend:** FastAPI + SQLModel + PostgreSQL + Redis
**AI Integration:** OpenAI GPT-4 + Serper Search API
**Infrastructure:** Docker + Nginx + WebSocket support
## Features
### Core Applications
- **Quest Management**: Daily task tracking with completion status and due dates
- **Kanban Boards**: Visual project management with drag-and-drop functionality
- **Calendar Integration**: Schedule events with timezone-aware time management
- **Journal Entries**: Rich text journaling with mood tracking and search capabilities
- **AI Assistant**: Natural language interaction with intelligent task automation
- **Global Search**: Unified search across all content types with relevance scoring
### Technical Capabilities
- Real-time collaboration with WebSocket connections
- Responsive design with dark theme and custom color palettes
- Production-ready authentication and security measures
- Voice-enabled input with Whisper transcription
- Timezone conversion and Eastern Time defaults
- Comprehensive search functionality across all data types
## Development Setup
### Prerequisites
- Docker & Docker Compose
- Git
- Node.js 18+ and Python 3.11+ (for local development)
### Quick Start
1. **Clone and setup**
```bash
git clone
cd Skema
cp .env.example .env
```
2. **Start with Docker**
```bash
docker-compose up -d
```
3. **Access the application**
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
### Local Development
**Frontend:**
```bash
cd Frontend
npm install
npm run dev
```
**Backend:**
```bash
cd Backend
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
pip install -r requirements.txt
uvicorn app.main:app --reload
```
## Application Overview
### Main Features
**Dashboard**
- Daily quest tracking with completion status
- Upcoming calendar events with Eastern Time display
- Recent journal entries and mood tracking
- Voice-enabled quick add functionality
**Quest Management**
- Create and track daily tasks
- Set due dates and times
- Mark items complete with visual feedback
- Search and filter quest history
**Calendar**
- Multiple view modes (month, week, day)
- Timezone-aware event creation and display
- Event editing and deletion capabilities
- Integration with AI for natural language scheduling
**Journal**
- Rich text entries with mood tracking
- Tag-based organization and search
- Date-based filtering and navigation
- Export and backup capabilities
**Search**
- Global search across all content types
- Filter by content type (quests, events, journal entries, boards)
- Relevance-based result ranking
- Quick access to any stored information
## API Documentation
### Core Endpoints
**Authentication**
- `POST /api/auth/register` - User registration
- `POST /api/auth/login` - User authentication
- `GET /api/auth/me` - Current user information
**Quest Management**
- `GET /api/quest` - List user quests
- `POST /api/quest` - Create new quest
- `PUT /api/quest/{id}` - Update quest status
**Calendar**
- `GET /api/calendar/events` - List calendar events
- `POST /api/calendar/events` - Create new event
- `PUT /api/calendar/events/{id}` - Update event
**Journal**
- `GET /api/journal/entries` - List journal entries
- `POST /api/journal/entries` - Create entry
- `GET /api/journal/search` - Search entries
**AI Integration**
- `POST /api/ai/conversation` - Process AI requests
- `POST /api/ai/transcribe` - Voice transcription
Complete API documentation: http://localhost:8000/docs
## Configuration
### Environment Variables
Key configuration options:
```bash
# Backend API
NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_WS_URL=ws://localhost:8000
# AI Integration
OPENAI_API_KEY=your-openai-key
SERPER_API_KEY=your-serper-key
# Security
SECRET_KEY=your-secret-key
DATABASE_URL=postgresql://user:pass@localhost:5432/skema
```
## License
MIT License - see [LICENSE](LICENSE) for details.
## Contributing
1. Fork the repository
2. Create a feature branch
3. Make your changes with tests
4. Submit a pull request
Built for modern productivity workflows.