- Flask-based email reader application that processes emails and provides an the most necessary mails. It supports integration with GitHub Actions for continuous integration (CI) and deployment (CD) to Heroku.
- Fetches and processes the most useful emails from a specified account.
- Filtering emails and provides useful ones.
- Continuous Integration (CI) with GitHub Actions.
- Continuous Deployment (CD) to Heroku.
- Bilkent Experiment Mails (Paid + GE250/251)
- DAIS, AIRS mails coming from department personnel
To run this project locally or deploy it, you will need the following:
- Python 3.8+
- pip (Python package manager)
- A Heroku account for deployment.
- A GitHub account for managing CI/CD pipelines.
-
Clone the repository:
git clone https://github.com/onurcangnc/email_reader.git
-
Navigate to the project directory:
cd email_reader -
Install the necessary dependencies:
pip install -r requirements.txt
To run the application locally:
-
Start the Flask server:
python app.py
-
Access the application in your web browser at:
http://127.0.0.1:5000
- The project is integrated with GitHub Actions for continuous integration and continuous deployment.
GitHub Actions will automatically run tests and linting checks whenever you push to the repository.
-
Upon pushing to the
mainbranch, the GitHub Actions workflow will deploy the latest version of the application to Heroku. -
To enable deployment to Heroku, set up the following secrets in your GitHub repository settings:
-
HEROKU_API_KEY- Your Heroku API key. -
HEROKU_APP_NAME- The name of your Heroku app.
To manually deploy the app to Heroku, use the following steps:
-
Log in to Heroku using the CLI:
heroku login
-
Create a new Heroku app:
heroku create your-app-name
-
Push your application to Heroku:
git push heroku main
-
Open the application:
heroku open
This project is licensed under the MIT License. See the LICENSE file for more details.
