Skip to content
/ recome Public

Personalized news website with News Recommender using Filtering algorithm, CNN, and NLP

License

Notifications You must be signed in to change notification settings

yvesaur/recome

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Recome Banner

Static Badge GitHub watchers GitHub Repo stars GitHub release (with filter)


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.

Recome Banner Recome Banner

✨ Current Features

  • 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

💻 Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing.

Prerequisites

Needed:

  • Node v18.17
  • Python v3.7
  • PostgreSQL v16.1

Optional:

  • Postman
  • pgAdmin 4

Installing - How to run locally and make changes

  1. Fork and Clone the Repository

    git clone <forked-repository-ssh.git>
    cd recome
  2. 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
  3. Create Environment Variables

    cd recome/server
    touch .env
    • Variables

      PORT=
      PGUSER=
      PGHOST=
      PGPASSWORD=
      PGDATABASE=
      PGPORT=
      JWT_SECRET=
  4. 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
  5. 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.

Making Changes

  • To make changes, navigate to the respective directories:

    • For server-side changes, access server/ or server1/ directories.
    • For client-side modifications, navigate to client/.
  • 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!

🔨 Built With

  • 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

📫 Contributing

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.

💓 Authors / Contributors

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.

🔑 License

This project is licensed under the GNU Affero General Public License (AGPL) v3 - see the LICENSE.md file for details