Skip to content

pranampagi/Scholarly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ Scholarly: Research & Study Tracker

Scholarly is a professional, full-stack application designed to help researchers, students, and lifelong learners organize their academic resources. Effortlessly track research papers, categorize them by domain (e.g., Machine Learning, GATE CS), and manage your study progress with a modern, aesthetic dashboard.


🌟 Key Features

  • Resource Management: Add, edit, and delete research papers or study links.
  • Dynamic Filtering: Instantly filter your library by category (discovered dynamically from your data).
  • Real-time Search: Find any resource by title with a lightning-fast search bar.
  • Status Tracking: Visual badges for Pending, In Progress, and Completed items.
  • Responsive Design: Premium UI built with Bootstrap 5, fully optimized for mobile and desktop.
  • Statistics API: Built-in analytics endpoint to track your library growth.

πŸ›  Tech Stack


πŸ“‚ Project Structure

.
β”œβ”€β”€ .github/workflows/  # CI/CD pipeline (Testing & Build)
β”œβ”€β”€ backend/            # FastAPI source code & Unit tests
β”œβ”€β”€ frontend/           # Vue.js 3 dashboard (Vite)
β”œβ”€β”€ vercel.json         # Production deployment config
└── scholarly.db        # Local SQLite database

πŸš€ Quick Start

Backend (API)

  1. cd backend
  2. python -m venv .venv && source .venv/bin/activate
  3. pip install -r requirements.txt
  4. uvicorn main:app --reload
    • API Docs: http://127.0.0.1:8000/docs

Frontend (Dashboard)

  1. cd frontend
  2. npm install
  3. npm run dev
    • Dashboard: http://localhost:5173

πŸ“‘ API Documentation

Method Endpoint Description
GET /resources/ List all research resources (paginated).
POST /resources/ Create a new research resource.
PUT /resources/{id} Update an existing resource details.
DELETE /resources/{id} Remove a resource from the library.
GET /stats/ [New] Get library stats by category/status.

βš™οΈ CI/CD & Deployment

GitHub Actions

This project includes an automated pipeline that runs on every push:

  • Backend: Validates all CRUD logic using pytest.
  • Frontend: Ensures the production build compiles successfully.

Vercel Deployment

The root vercel.json is pre-configured for a seamless monorepo deployment. When connected to Vercel:

  • /api/* requests are handled by the FastAPI server.
  • All other requests serve the static Vue.js frontend.

πŸ“„ License

MIT License. Feel free to use and adapt this for your own research tracking!

About

πŸ“š Scholarly: A premium research tracker. Effortlessly manage academic resources, track study progress, and visualize your library with dynamic filtering and real-time dashboards.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors