The intelligent platform to manage your scientific publications πβ¨
Scientify is a modern web application that allows you to organize, catalog, and easily search your scientific publications. With advanced automatic document processing features and an intuitive interface, making the management of your scientific library a pleasant experience!
- Multi-format upload: PDF, DOCX, LaTeX - everything gets automatically converted to PDF
- Automatic metadata extraction: from BibTeX files or manual compilation
- Document conversion: Advanced DOCX support with Pandoc and Mammoth
- Keyword search: Quickly find the publications you need
- Smart filters: By author, year, journal, DOI
- Flexible sorting: By date, title, relevance
- Automatic keyword extraction: Natural Language Processing algorithms automatically analyze your documents
- Smart categorization: Publications are automatically organized by topic
- Advanced tagging: Label system for precise cataloging
- Secure registration and authentication: Complete account management system
- Personal library: Each user has access to their own private collection
- Granular permissions: Complete control over your documents
- Responsive design: Works perfectly on desktop, tablet, and mobile
- Intuitive UI/UX: Simple and pleasant navigation
- Material-UI components: Modern and accessible design
- React 18: Modern framework for reactive UIs
- Material-UI: Elegant and accessible components
- Tanstack Query: Optimized state management and caching
- JavaScript ES6+: Modern and performant code
- FastAPI: High-performance Python framework
- SQLAlchemy: Robust ORM for database management
- PostgreSQL: Scalable relational database
- Async/Await: Asynchronous programming for maximum performance
- Keyword Extraction: Intelligent extraction using YAKE
Scientify supports two deployment modes: Docker (recommended) and manual setup.
# Clone the repository
git clone https://github.com/fccapria/scientify.git
cd scientify
# Start everything with Docker Compose
docker-compose up -d
# Your app will be available at http://localhost:80cd backend
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Configure database and environment variables
cp .env.example .env
# Edit .env with your configurations
# Start the server
uvicorn app.main:app --reloadcd frontend
# Install dependencies with pnpm (faster!)
pnpm install
# Or with npm: npm install
# Start the dev server
pnpm start
# Or: npm start- π Register and create your personal account
- π€ Upload your publications (PDF, DOCX, LaTeX)
- π Add metadata manually or upload a BibTeX file
- π€ Let the AI automatically extract keywords
- π Search and organize your scientific library
- π Monitor your collection with advanced statistics
- π± Native mobile app
- π Integration with arXiv and PubMed
- π Advanced analytics and citation metrics
- π€ Collaboration and sharing between users
- π Public API for integrations
- π§ Email notifications for new publications
We'd love your help to make Scientify even better!
- π΄ Fork the project
- πΏ Create a branch for your feature (
git checkout -b feature/new-feature) - β¨ Commit your changes (
git commit -m 'Add new feature') - π€ Push to the branch (
git push origin feature/new-feature) - π Open a Pull Request
This project is released under the MIT license. See the LICENSE file for details.
Having problems or suggestions?
- π Open an Issue
- π§ Email: [[email protected]]
Created with β€οΈ by @fccapria