Shiori-v1
Health Gecti
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 36 GitHub stars
Code Uyari
- process.env — Environment variable access in api/ai/chat.js
- process.env — Environment variable access in api/ai/flashcards.js
- process.env — Environment variable access in api/ai/study-plan.js
- process.env — Environment variable access in api/auth/callback.js
- network request — Outbound network request in api/auth/callback.js
- process.env — Environment variable access in api/auth/google.js
- process.env — Environment variable access in api/classroom/assignments.js
- process.env — Environment variable access in api/create-checkout-session.js
- process.env — Environment variable access in api/webhook.js
- network request — Outbound network request in client/package.json
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
Open-source AI study companion — Google Classroom sync, Gemini AI plans, SRS flashcards, GPA predictor, AI quiz, MCP server for Claude Code. Try demo at shiori-v1.vercel.app
栞 Shiori
The open-source AI study companion students actually use
Shiori (栞) means bookmark in Japanese — because every deadline deserves to be remembered.
🚀 Live Demo — no signup required →
15 pages · AI quiz generator · SRS flashcards · GPA predictor · Pomodoro · Leaderboard · PWA
⭐ Star on GitHub · 🚀 Try Demo · 🤖 MCP Server · 🧩 Chrome Extension · 💜 Get Pro · 🐛 Report Bug · 💬 Discussions
🤖 New: Shiori MCP Server — use your study data directly in Claude Code.
"What's due this week?""Show my grades""Add assignment: essay due Friday"
🌸 What is Shiori?
Shiori is what Google Classroom should have been.
It syncs your assignments from Google Classroom, hunts deadline emails in Gmail, and hands you an AI study plan powered by Gemini. Track grades with weighted categories, predict your final exam score, generate quizzes from your notes, import an entire semester from your syllabus in one paste, and share your GPA card in one click.
Zero accounts required. Try the full app in 10 seconds with demo mode.
┌───────────────────────────────────────────────────────────────────┐
│ Google Classroom + Gmail + Google Calendar │
│ ↓ ↓ ↓ │
│ Shiori AI (Gemini) │
│ ↓ │
│ 16 pages · AI quiz · SRS flashcards · GPA predictor · PWA │
└───────────────────────────────────────────────────────────────────┘
At a glance
| Feature | What it does | |
|---|---|---|
| 🤖 | AI Study Plans | Gemini builds a real day-by-day schedule from your deadlines |
| 📋 | Syllabus Import | Paste your syllabus → AI extracts every assignment instantly |
| 🧠 | AI Quiz Generator | Open a note → MCQ quiz with explanations in one click |
| 🃏 | SRS Flashcards | Anki-style spaced repetition, CSV/Quizlet import, AI card gen |
| 📊 | GPA Predictor | Weighted categories + "What score do I need on the final?" |
| 📝 | Markdown Notes | Per-course notes, AI summarizer, auto-save, export .md |
| 🏆 | Leaderboard | Compare study streaks with friends via shareable codes |
| ⏱ | Focus Mode | Fullscreen Pomodoro with ambient orbs + motivational quotes |
| 🔥 | Habit Tracker | Daily grid, streak tracking, confetti on full completion |
| 🧩 | Chrome Extension | Quick-add, Pomodoro, and Classroom import from any tab |
| 📱 | PWA | Install on mobile, works offline |
| 🎨 | Dark / Light Mode | Midnight study room or clean light mode |
Your credentials stay local. No data harvesting. No mandatory subscriptions. MIT licensed.
✨ Features
📚 Assignment & Schedule Intelligence
| Feature | Description |
|---|---|
| Google Classroom Sync | Pulls assignments and due dates the moment they're posted |
| Gmail Intelligence | Scans your inbox and surfaces buried deadline emails |
| Calendar Integration | Shows assignment deadlines as colored dots alongside your events |
| iCal Export | Export your assignments as .ics — opens in Google Calendar, Outlook, Apple Calendar |
🤖 AI-Powered Planning
| Feature | Description |
|---|---|
| AI Study Plans | Gemini generates a real day-by-day schedule from your actual deadlines |
| AI Chat | Ask anything — Shiori knows your real assignments and schedule |
| PDF Study Plan Export | Export your AI-generated schedule as a branded PDF |
| Smart Prioritization | High/medium/low priority auto-assigned based on due date and estimated hours |
📊 Grade Tracking
| Feature | Description |
|---|---|
| Live GPA Dashboard | Per-course grades, letter grades, and cumulative GPA calculated live |
| Weighted Categories | Set Homework 30% / Midterm 35% / Final 35% — GPA recalculates automatically |
| Final Exam Predictor | "What score do I need on the final to get an A?" — answered instantly |
| Shareable GPA Card | Generate a beautiful 900×520 PNG report card to share anywhere |
📝 Notes
| Feature | Description |
|---|---|
| Per-Course Notes | Color-coded notes linked to each course |
| Markdown Editor | **bold**, *italic*, `code`, headings, lists — with live preview |
| Auto-Save | Notes save automatically 600ms after you stop typing |
| Export as Markdown | Download any note as a .md file |
| Pin Notes | Keep important notes at the top of your list |
🃏 Flashcards & Spaced Repetition
| Feature | Description |
|---|---|
| Flashcard Decks | Create decks per course, add unlimited Q&A cards |
| 3D Card Flip | Tap to reveal answer with a smooth 3D perspective animation |
| Spaced Repetition (SRS) | Cards you miss come back sooner; mastered cards push to 1d → 2d → 5d intervals |
| Streak Tracking | 3+ correct in a row = mastered 🏆; session stats shown after each study session |
| AI Card Generation | Click "AI CARDS" in Notes editor — Gemini reads your notes and creates Q&A flashcards instantly |
| CSV Import | Paste any tab/comma-separated text — works with Quizlet export, Anki CSV, or plain text |
| Due-Now Counter | Dashboard shows how many cards are ready for review |
🧠 AI Quiz Generator
| Feature | Description |
|---|---|
| Generate from Notes | Open any note → click "Generate Quiz" — Gemini creates MCQ questions from your study material |
| Paste Custom Text | Paste any text and get a quiz in seconds |
| 5 / 8 / 10 questions | Choose difficulty length |
| MCQ with Explanations | 4 options per question + AI explains why each answer is right or wrong |
| Keyboard-driven | Press 1–4 to select, Enter to confirm/advance |
| Score History | Quiz results saved locally — track improvement over time |
| Score Ring Animation | Animated circular progress ring on results screen |
🔥 Habit Tracker
| Feature | Description |
|---|---|
| Daily Habit Grid | 7-day completion grid for any habit you want to build |
| Streak Counter | Per-habit fire emoji streak — don't break the chain |
| Color-coded habits | Pick a color per habit, add/delete freely |
| Confetti celebration | Complete all habits for the day → confetti burst 🎉 |
⏱️ Focus & Productivity
| Feature | Description |
|---|---|
| Pomodoro Timer | Focus sessions tied to specific assignments, with session history |
| Sound Notifications | Distinct tones for focus→break and break→focus transitions (Web Audio, no downloads) |
| Progress Share Card | Canvas-rendered 900×500 PNG with your GPA, focus time, and completion rate — download and share |
| Keyboard Shortcut Modal | Press ? anywhere for a full shortcut reference |
| Keyboard Shortcuts | gh/ga/gc/gg/gs/gn/gf/gb/gq to navigate, Ctrl+K for AI chat, Ctrl+Shift+A quick capture |
🎨 Design
| Feature | Description |
|---|---|
| Dark / Light Theme | Toggle between midnight study room and clean light mode |
| Midnight Study Room | Dark glassmorphism with floating orbs — built for late-night sessions |
| Framer Motion | Smooth, purposeful animations throughout |
| Custom fonts | Space Grotesk headings · Manrope body · Press Start 2P retro accents |
- Demo Mode — full app with 5 courses, 10 assignments, grades, events — zero setup
⚡ Try it in 10 seconds
1. Visit https://shiori-v1.vercel.app
2. Click "TRY DEMO"
3. You're in — no account, no API keys, no Appwrite
Demo mode loads: 5 courses · 10 assignments · grades with GPA calc · upcoming events · AI-generated study plan
🚀 Self-Host
Prerequisites
- Node.js v18+
- npm v9+
- Google Cloud project with Classroom + Gmail + Calendar APIs enabled
- Google Gemini API key (free)
- Appwrite instance (free cloud tier works)
Setup
git clone https://github.com/kaorii-ako/Shiori-v1.git
cd Shiori-v1
npm install
cp .env.example .env
# Fill in your keys — see .env.example for the full guide
npm run dev
# Frontend: http://localhost:5173 | Backend: http://localhost:3001
Required environment variables
GEMINI_API_KEY= # Google AI Studio (free)
GOOGLE_CLIENT_ID= # Google OAuth 2.0
GOOGLE_CLIENT_SECRET= # Google OAuth 2.0
APPWRITE_ENDPOINT= # Your Appwrite URL
APPWRITE_PROJECT_ID= # Your Appwrite project
SESSION_SECRET= # Any random string
🛠 Tech Stack
| Layer | Technology |
|---|---|
| Frontend | React 18, Vite, Framer Motion, Tailwind CSS |
| State | Zustand + zustand/persist |
| Backend | Express.js (Node.js) |
| AI | Google Gemini 1.5 Flash |
| Auth | Appwrite + Google OAuth 2.0 |
| Google APIs | Classroom, Gmail, Calendar |
| jsPDF (client-side, no server needed) | |
| Icons | Lucide React |
📁 Project Structure
Shiori-v1/
├── client/ # React frontend (Vite)
│ └── src/
│ ├── components/ # GlassCard, Button, Sidebar, AIChat, PomodoroTimer...
│ ├── pages/ # Landing, Home, Assignments, Calendar, Grades, StudyPlans, Notes
│ ├── stores/ # Zustand (auth, assignments, grades, notes, pomodoro, ui)
│ ├── hooks/ # useKeyboardShortcuts
│ └── utils/ # pdfExport, icalExport, demoData
├── server/ # Express backend
│ ├── routes/ # ai, auth, classroom, gmail, calendar, stripe
│ └── services/ # Google OAuth & API wrappers
├── .env.example # Environment template
└── package.json # npm workspaces root
🗺 Roadmap
- v1.0 — Core app: Classroom sync, Gmail, Calendar, AI plans, Grade tracker
- v1.1 — Demo mode · Public landing page · Pro pricing
- v1.2 — Pomodoro timer · Study streak · Live GPA dashboard
- v1.3 — Final exam predictor · Calendar assignment overlay
- v1.4 — iCal export · PDF export (study plan + assignments) · Keyboard shortcuts
- v1.5 — Weighted grade categories · Shareable GPA card · Notes with markdown
- v1.6 — Flashcards with spaced repetition (SRS) · 3D card flip · AI card generation from notes
- v1.7 — Habit tracker · Analytics dashboard · Progress share card · Dark/light theme toggle
- v1.8 — Keyboard shortcut modal (?) · Pomodoro sounds · Client-side Gemini API key
- v1.9 — Chrome extension: Pomodoro + quick-add + Google Classroom import
- v2.0 — AI Quiz Generator · PWA service worker · Student testimonials · Email waitlist · Confetti on habit completion
- v2.1 — Syllabus Import (paste syllabus → AI extracts all assignments) · AI Note Summarizer · SEO overhaul
- v2.2 — Firefox extension · Chrome Web Store release · Shiori Cloud (fully hosted)
- v2.3 — Mobile app (React Native / Expo)
Have an idea? Open a feature request →
💜 Shiori Pro
Want the hosted version — no setup, unlimited AI, and premium features?
| Free (Self-hosted) | Pro (Cloud) | |
|---|---|---|
| Google Classroom sync | ✓ | ✓ |
| AI Study Plans | 5/month | Unlimited |
| AI Chat | 10/day | Unlimited |
| PDF Export | ✓ | ✓ |
| GPA Share Card | ✓ | ✓ |
| Notes (Markdown) | ✓ | ✓ |
| Email Reminders | — | ✓ |
| Priority support | — | ✓ |
| Price | Free forever | ฿199/month |
🤝 Contributing
Contributions are very welcome!
# Fork, then:
git checkout -b feature/your-feature-name
git commit -m "feat: describe what you added"
git push origin feature/your-feature-name
# Open a PR!
Open an issue first for big changes. See CONTRIBUTING.md for guidelines.
Good first issues: good first issue
👤 Author
Built by @kaorii-ako
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi