A personalized news web application with a news recommender model using NLP
, CNN
, and Filtering algorithm
Join me on this transformative journey in news discovery, where technology meets information, and each user's experience through the news landscape is personalized and intuitive.
- Browse and read news
- News Recommender
- Recommended news based on clicked news
- Recommended news based on user behavior
- User Account
- Registration
- Login
- Filter news based on keywords, topics, etc.
- See Recently Visited News
These instructions will get you a copy of the project up and running on your local machine for development and testing.
Node v18.17
Python v3.7
PostgreSQL v16.1
Postman
pgAdmin 4
-
Fork and Clone the Repository
git clone <forked-repository-ssh.git> cd recome
-
Install dependencies
-
Server 0
cd recome/server npm install
-
Server 1
cd recome/server1 pip install -r requirements.txt
-
Client
cd recome/client npm install
-
-
Create Environment Variables
cd recome/server touch .env
-
Variables
PORT= PGUSER= PGHOST= PGPASSWORD= PGDATABASE= PGPORT= JWT_SECRET=
-
-
Start the local server
-
Server 0
cd recome/server npm start
-
Server 1
cd recome/server1 python manage.py runserver
-
Client
cd recome/client npm start
-
-
Explore, Test, and Make Changes
After following the installation steps outlined above, you're set to explore the project, test its functionalities, and make any necessary changes.
-
To make changes, navigate to the respective directories:
- For server-side changes, access
server/
orserver1/
directories. - For client-side modifications, navigate to
client/
.
- For server-side changes, access
-
Implement the desired changes following best coding practices.
-
Test the changes locally to verify their effectiveness.
Remember to commit changes and push them to your forked repository before creating a pull request.
Feel free to explore, experiment, and enhance the project as needed!
- PostgreSQL - SQL Relational Database
- Express - Backend Web Framework for Node.JS (Server #0)
- Django - High-level, open-source web Python Framework (Server #1)
- React - JavaSript User Interface library
- Node - Powerful JavaScript runtime environment
I appreciate your interest in contributing to the repository! To ensure a streamlined process and effective collaboration, I encourage contributors to follow these guidelines.
Please read the Contribution Guidelines for the process for submitting pull requests.
Yves Casio - This is the first open-sourced project that I will be doing, contributing to the repository will be a big help in further advancing this project.
This project is licensed under the GNU Affero General Public License (AGPL) v3
- see the LICENSE.md file for details