https://github.com/notsoocool/start
https://github.com/notsoocool/start
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/notsoocool/start
- Owner: notsoocool
- Created: 2024-10-11T07:16:19.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-17T06:57:56.000Z (over 1 year ago)
- Last Synced: 2025-03-17T07:40:57.360Z (over 1 year ago)
- Language: TypeScript
- Homepage: https://start-two-rust.vercel.app
- Size: 501 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# START - Sanskrit Text Analysis and Reading Tool
A modern web application for exploring, analyzing, and learning Sanskrit literature with an interactive interface and comprehensive analysis tools.

## 🌟 Features
### Core Functionality
- 📚 Browse sacred Sanskrit texts and chapters
- 🔍 Detailed word-by-word analysis
- 📝 Interactive shloka reading
- 🎯 Role-based access control
- 🌙 Dark mode support
- 📱 Responsive design
### Technical Features
- ⚡ Server-side rendering with Next.js 14
- 🔐 Secure authentication with Clerk
- 📊 MongoDB database integration
- 🎨 Modern UI with Tailwind CSS
- 🚀 Optimized performance
- 🌐 API routes for data management
## 🛠️ Tech Stack
### Frontend
- Next.js 14
- React with TypeScript
- Tailwind CSS
- ShadcnUI Components
- Clerk Authentication
### Backend
- Next.js API Routes
- MongoDB with Mongoose
- TypeScript
### Infrastructure
- Vercel Deployment
- MongoDB Atlas
- Clerk Authentication Services
## 📦 Installation
1. **Clone the repository**
```bash
git clone https://github.com/yourusername/start.git
cd start
```
2. **Install dependencies**
```bash
npm install
# or
yarn install
```
3. **Set up environment variables**
Create a `.env.local` file with:
```env
MONGO_URI=your_mongodb_connection_string
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_key
CLERK_SECRET_KEY=your_clerk_secret
```
4. **Run the development server**
```bash
npm run dev
# or
yarn dev
```
## 🏗️ Project Structure
```
start/
├── app/
│ ├── (dashboard)/
│ │ ├── books/
│ │ ├── admin/
│ │ ├── addshloka/
│ │ └── page.tsx
│ └── api/
├── components/
│ ├── global/
│ │ ├── header.tsx
│ │ ├── footer.tsx
│ │ └── navigation.tsx
│ └── ui/
├── lib/
│ └── db/
│ ├── connect.ts
│ ├── newShlokaModel.ts
│ ├── newAnalysisModel.ts
│ └── permissionsModel.ts
└── public/
```
## 💾 Database Models
### Shloka Model
Stores Sanskrit verses with metadata:
- Chapter and verse numbers
- Sanskrit text parts
- Book and section information
### Analysis Model
Comprehensive linguistic analysis:
- Morphological analysis
- Syntactic relations
- Word meanings
- Grammatical details
### Permissions Model
User role management:
- User levels (User to Root)
- Access control
- User metadata
## 🔐 Authentication & Authorization
### User Roles
1. **User**: Basic reading access
2. **Annotator**: Can add annotations
3. **Editor**: Content modification rights
4. **Admin**: Administrative access
5. **Root**: Full system access
### Permission Management
- Role-based access control
- Secure API endpoints
- Protected routes
- Admin dashboard
## 🎨 UI Components
### Global Components
- Header with navigation
- Footer with links
- Responsive navigation menu
- User authentication UI
### Feature Components
- Shloka display cards
- Analysis viewer
- Admin dashboard
- Upload interface
## 📡 API Routes
### Shloka Management
- `/api/books/[book]/[part1]/[part2]/[chaptno]`
- `/api/ahShloka/[id]`
- `/api/uploadJson`
### User Management
- `/api/getCurrentUser`
- `/api/getAllUsers`
- `/api/updateUser`
## 🔧 Configuration
### Development
```bash
# Install dependencies
npm install
# Run development server
npm run dev
# Build application
npm run build
```
### Production
```bash
# Build for production
npm run build
# Start production server
npm start
```
## 🤝 Contributing
1. Fork the repository
2. Create your feature branch
3. Commit your changes
4. Push to the branch
5. Create a Pull Request
## 📄 License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.
## 👥 Team
- **Developer**: [Yajush Vyas]
- **Contact**: [vyasyajush@gmail.com]
- **Website**: [yajushvyas.in]
## 🙏 Acknowledgments
- Sanskrit scholars and contributors
- Open source community
- Framework and library maintainers
## 📚 Documentation
For detailed documentation:
- [Component Documentation](components/README.md)
- [API Documentation](api/README.md)
- [Database Documentation](lib/db/README.md)
## 🔮 Future Plans
- Enhanced analysis features
- Mobile application
- Additional Sanskrit texts
- Community features
- Advanced search capabilities