GeniusLearner / Conference-Notify

Conference-Notify will be an open source web based application that will aggregate conference information from wikicfp , guide2research and other such websites to create a single point of aggregated information and build index over the same. These information can then be searched by users through plain text queries. On finding relevant conferences the user can create recurring notifiers for themselves for the date reminders which can be enabled on both mobile devices and through browser notification.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Conference-Notify

contributions welcome

Conference-Notify will be an open source web based application that will aggregate conference information from wikicfp , guide2research and other such websites to create a single point of aggregated information and build index over the same. These information can then be searched by users through plain text queries. On finding relevant conferences the user can create recurring notifiers for themselves for the date reminders which can be enabled on both mobile devices and through browser notification.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

  • Mongodb installation (Local / Atlas)
  • Python 3.6+ environment
  • Pymongo client
  • node.js
  • Angular 6+

Pymongo client installation

python -m pip install pymongo

Installing

The project is divided into several components, i.e services

  • Notifier-Service
  • Scrapper-Service
  • Search-Service

None of this services requires any instllation and can be executed on the fly

Other services coming soon

Deployment

Scrapper-Service
Note: Make sure the configuration file is properly configured for usage, since main.py is reading configuration from the file

>> cd Scrapper-Service

>> python main.py --help
usage: main.py [-h] [-c CONFIG] [-l {debug,warn,error,info}] [-t TEST]
               [-ls {console,file}]

optional arguments:
  -h, --help            show this help message and exit
  -c CONFIG, --config CONFIG
                        Specify config.json file ,default: config.json
  -l {debug,warn,error,info}, --log {debug,warn,error,info}
                        Specify the debug level ,default: debug
  -t TEST, --test TEST  Specify whether to test app initialization or run the
                        scrappers ,default: True
  -ls {console,file}, --logStream {console,file}
                        Specify whether to print logs on terminal or to file
                        ,default: console

>> python -m unittest test
It will run all the unit tests written and kept under test folder

Notifier-Service

>> cd Notifier-Service

//For dev

>> npm run-script build

>> npm start 

//For prod

>> npm run-script build

>> npm run-script run

Built With

  • pymongo - Mongo client for python

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Authors

  • Rajat Kanti Bhattacharjee - Initial work - rajatkb

Contributors

Waiting for some 🧐

License

This project is licensed under the GPL License - see the LICENSE.md file for details

Acknowledgement

A big thanks to GirlScript foundation for having this project under GirlScript Summer of Code

About

Conference-Notify will be an open source web based application that will aggregate conference information from wikicfp , guide2research and other such websites to create a single point of aggregated information and build index over the same. These information can then be searched by users through plain text queries. On finding relevant conferences the user can create recurring notifiers for themselves for the date reminders which can be enabled on both mobile devices and through browser notification.

License:GNU General Public License v3.0


Languages

Language:Python 64.0%Language:TypeScript 29.1%Language:JavaScript 3.4%Language:HTML 2.8%Language:CSS 0.8%