ChemEventz is a web application that tracks chemical events around the world. ChemEventz has been designed to be a collaborative platform to facilitate meetings between researchers, professors, students or anyone interested in these events.
How to make these meetings easier?
- ChemEventz lists recent events of the most popular events sites
- Allows users of the platform to add the next known events
- ChemEventz may allow you to find your future collaborator, job or internship during these meetings
ChemEventz is divided into 5 parts available in my Github account public repositories
- ChemEventz - scraper
- ChemEventz - NodeJS - API
- ChemEventz - Spring Boot Microservice Authentication
- ChemEventz - Spring Boot Microservice Events
- ChemEventz - Angular
Dillinger uses a number of open source projects to work properly:
- Angular - HTML enhanced for web apps!
- node.js - v12 for the backend
- Express - fast node.js network app framework
- Spring Boot - focus on application-level business logic
- MongoDB - non-relationnal database for events storage
- Mysql - relational dataBase for users data storage
Different technologies used to deploy ChemEventz project:
- Heroku - Deploy Spring and NodeJS microservices
- AWS S3 - Deploy Angular microservice
- AWS RDS - Cloud MYSQL database Hosting
- Mongo Atlas - Cloud MongoDB database Hosting
- Node.js - V12 for the backend
- Express - fast node.js network app framework
- MongoDB - save all events after treatment
ChemEventz requires Node.js V12 to run.
Create new folder
$ git clone https://github.com/nawelb/ChemEvents_Back_NodeJS
$ cd ChemEvents_Back_NodeJS
$ npm install
then, create .env file in root directory and add :
- PORT : free port to allow this application to run
- DB_NAME : as name of your database cf scraping project
- DB_URL : as url of MongoDB Atlas where the scraping data are stored cf scraping project
- DB_COLLECTION : as the name of the collection you choose cf scraping project
$ node server.js
POST
- /event-api/private/role-admin/event
/GET
- /event-api/public/events : get all data in the database
- /event-api/public/event/:_id : replace ":_id" by an event id in the db, to search an event by id
- /event-api/public/search?research=word : replace "word" by any keyword, to search an event by keyword
- /event-api/public/event?country=France : replace "France" by any country name, to search an event by country
- /event-api/public/event?city=Paris : replace "Paris" by any city name, to search an event by city
/PUT
- /event-api/private/role-admin/event
/DELETE
- /event-api/private/role-admin/deleteEvent/:_id : replace ":_id" by an event id in the db, to delete an event by id